默认情况下,ArcGIS Server 允许跨域请求,因此 Javascript 客户端可从任意域调用服务器服务。
如要限制 Javascript 应用程序对特定域的请求,可将 ArcGIS Server 配置为仅信任特定域。您可以使用 ArcGIS Server Administrator Directory 进行此设置。
限制来自 Javascript 应用程序的请求
默认情况下,ArcGIS Server 允许 Javascript 应用程序访问所有 Web 服务。如要阻止其他域中的特定 Javascript 应用程序使用您的 Web 服务,则可为 ArcGIS Server 配置一个仅包含信任域的列表。这样可降低未知应用程序向 Web 服务发送恶意命令的可能性。
注:
ArcGIS Server 的 AllowedOrigins 中拒绝的主机将允许通过对允许进行 CORS 请求的主机没有任何限制的 Web 服务器、反向代理或者负载均衡器发送的请求。要与您的 ArcGIS Server 站点遵循相同的限制,您将需要配置 Web 服务器、反向代理或负载均衡器。
- 打开 ArcGIS Server Administrator Directory,然后以具有服务器管理访问权限的用户身份登录。URL 地址格式为 https://gisserver.domain.com:6443/arcgis/admin。
- 单击 system > handlers > rest > servicesdirectory。
- 在服务目录页面中,单击编辑。
- 在 AllowedOrigins 字段中,指定一个包含计算机及其域名(可访问 Web 服务,例如 https://machine.esri.com, http://host.arcgis.com, https://gisserver.example.com)的逗号分隔的列表。
注:
不支持使用 * 通配符来代替机器名称。必须在列表中指定完全限定的机器域名。
- 单击保存。