HTTPS 协议是一项标准安全技术,用于在 Web 服务器与 Web 客户端之间建立加密连接。HTTPS 通过对服务器进行识别和验证以及确保所有传输数据的隐私和完整性来实现安全网络通信。由于 HTTPS 可防止窃听或篡改通过网络发送的信息,所以应对任何登录或身份验证机制以及任何包含保密信息或私有信息的网络通信应用 HTTPS。
使用 HTTPS 可确保名称、密码及其他敏感信息在 ArcGIS Web Adaptor 和服务器之间发送时不会被解密。使用 HTTPS 时,将使用 HTTPS 协议替代 HTTP 协议来连接 web 页面和资源。
要使用 HTTPS,您需要获取服务器证书,并将其绑定到托管 ArcGIS Web Adaptor 的网站。每个 Web 服务器都有自己的程序用于加载证书并将其绑定到网站。
此外,还要确保 web 服务器已设置为忽略客户端证书,以便通过 HTTPS 正确访问安全服务。
创建服务器证书
要能够在 ArcGIS Web Adaptor 和服务器之间创建 HTTPS 连接,Web 服务器需要服务器证书。证书是一个数字文件,包含有关 Web 服务器标识的信息。它还包含建立 Web 服务器和 ArcGIS Server 之间的安全通道时要使用的加密方法。证书必须由网站和数字签名的所有者创建。下面将介绍三种类型的证书 - CA 签名证书、域证书以及自签名证书。
注:
在 10.6 之前的版本中,ArcGIS Server 不支持使用服务器名称指示 (SNI) 的证书 - 客户端用来告知浏览器所连接主机名的 TLS 协议扩展模块。Portal for ArcGIS 从 10.5.1 开始支持 SNI。
CA 签名证书
证书颁发机构 (CA) 签名证书可用于生产系统,特别是用于组织外的用户访问 ArcGIS Server 部署。例如,如果服务器未设置防火墙保护且可经由 Internet 对其进行访问,则使用 CA 签名证书可向来自组织外部的客户端确保网站身份已进行过安全验证。
除了由网站所有者签名以外,证书还可由独立的 CA 进行签名。CA 通常是一个受信任的第三方机构,可用于证实网站的真实性。如果网站值得信任,CA 会将其自己的数字签名添加到该网站的自签名证书。这可确保网站标识已经验证过的 Web 客户端。
使用由著名 CA 颁发的证书时,服务器和 Web 客户端之间的安全通信将自动进行而无需用户执行任何特殊操作。由于网站已由 CA 进行安全验证,因此 Web 浏览器中不会显示任何异常行为或警告消息。
域证书
如果服务器已设置防火墙保护且无法使用 CA 签名证书,则使用域证书为可行的解决方案。域证书是由组织的证书颁发机构签名的内部证书。使用域证书有助于降低颁发证书的成本以及简化证书部署,因为证书可在组织内针对受信任的内部使用快速生成。
域内用户通常不会收到与自签名证书相关的异常行为或警告消息,因为网站已由域证书进行过安全验证。但是,域证书并不是由外部 CA 进行验证,即访问站点的域外用户无法验证证书是否真的如所宣称那样代表某一方。外部用户将看到有关站点不受信任的浏览器警告,这可能导致用户认为正与恶意方进行通信从而退出您的站点。
在 IIS 中创建域证书
注:
从 2017 年开始,Chrome 仅信任具有主题备选名称 (SAN) 参数的证书,在 IIS 管理器应用程序中创建证书时无法对该参数进行配置。
在 IIS 管理器中,按照以下方法创建域证书:
- 在连接 窗格中,于树视图中选择您的服务器,然后双击服务器证书。
- 在操作 窗格中,单击创建域证书。
- 在可分辨名称属性 对话框中,输入证书的所需信息:
- 针对常用名称,必须输入计算机的全限定域名称,如 gisserver.domain.com。
- 对于其他属性,请输入组织和位置的具体信息。
- 单击下一步。
- 在在线证书颁发机构 对话框中,单击选择,并选中将在域内签发证书的证书颁发机构。如果此选项不可用,则请在指定在线证书颁发机构字段中输入域证书颁发机构,如City Of Redlands Enterprise Root\REDCASRV.empty.local。如需此步骤的帮助,请咨询系统管理员。
- 为域证书输入一个简明易懂的名称,然后单击完成。
最后请将域证书绑定到 HTTPS 端口 443。有关此操作的详细说明,请参阅下面的将证书绑定到站点。
自签名证书
仅由网站所有者签名的证书称为自签名证书。自签名证书通常用于仅对组织内部 (LAN) 网络上的用户可用的网站上。如果与外部网络中的使用自签名证书的网站进行通信,您将无法验证颁发证书的站点是否确实代表其声称代表的一方。您可能实际上正与恶意方进行通信,使您的信息处于危险之中。
在 IIS 中创建自签名证书
在 IIS 管理器中,按照以下方法创建自签名证书:
- 在连接 窗格中,于树视图中选择您的服务器,然后双击服务器证书。
- 在操作 窗格中,单击创建自签名证书。
- 为新证书输入一个简明易懂的名称,然后单击确定。
最后请将自签名证书绑定到 HTTPS 端口 443。有关此操作的详细说明,请参阅下面的将证书绑定到站点。
将证书绑定到网站
在创建了证书后,需要将其绑定到托管 ArcGIS Web Adaptor 的网站。绑定可参考配置证书以在网站上使用端口 443 的过程。将证书与网站绑定的说明根据平台和 Web 服务器版本会有所不同。有关说明信息,请咨询系统管理员或参阅 Web 服务器的文档。例如,在 IIS 中绑定证书的步骤如下。
在 IIS 中将证书绑定至端口 443
在 IIS 管理器中,按照以下方法将证书绑定至 HTTPS 端口 443:
- 在树视图和操作 窗格中选择您的站点,然后单击绑定。
- 如果绑定列表中的端口 443 不可用,请单击添加。从类型下拉列表中选择 https。将端口设置为 443。
- 如果端口 443 已列出,请从该列表中选择此端口并单击编辑。
- 从证书下拉列表中选择您的证书名称,然后单击确定。
测试站点
将证书绑定到网站后,可配置 Web Adaptor 以与服务器一同使用。您需要使用 HTTPS URL (如 https://webadaptorhost.domain.com/webadaptorname/webadaptor) 访问 ArcGIS Web Adaptor 的配置页面。
配置 Web Adaptor 后,应通过向 ArcGIS Server Manager 发出 HTTPS 请求来测试 HTTPS 是否工作正常,如 https://webadaptorhost.domain.com/webadaptorname/manager。