在某些情况下,Portal for ArcGIS 会充当代理服务器。该功能用于下列情况:
- 尝试访问不同于门户的域上的资源,并且跨域资源共享 (CORS) 支持不可用。CORS 是一种允许 web 服务器和 web 浏览器进行交互并确定是否应允许跨源请求的规范。
- 您尝试与其他用户共享受保护资源,但您希望隐藏访问资源所需的用户凭据。
默认情况下,门户的代理功能不受限制。因此门户可能会被误用,从而导致对门户计算机可访问的所有计算机均启动拒绝服务 (DoS) 或服务器端请求伪造 (SSRF) 攻击。为减少这种潜在漏洞,强烈建议您通过定义已批准的 web 地址列表来限制门户的代理功能。Portal for ArcGIS 将仅允许地址列表中的代理请求;其他所有请求会被锁定。如果您已联合 ArcGIS Server 和门户,则该列表必须包含站点内所有计算机的地址以及门户中共享为项目的任意资源。
要定义已批准地址的列表,请遵循以下步骤。
- 打开 Web 浏览器并以组织管理员的身份登录到 ArcGIS Portal Directory。URL 地址格式为 https://webadaptorhost.domain.com/webadaptorname/portaladmin。
- 单击安全性 > 配置 > 更新安全性配置。
- 在配置字段中,添加 allowedProxyHosts 属性并指定已批准地址的列表,例如:
{ "disableServicesDirectory": false, "enableAutomaticAccountCreation": false, "allowedProxyHosts": "gisserver1.domain.com,gisserver2.domain.com" }
注:
使用 (.*).domain.com 格式可允许指定域内所有计算机的代理请求。谨慎使用通配符 (*);未经授权的用户可能无意间被授予了对受限计算机的访问权限。
- 单击更新配置。