Skip To Content

限制跨域请求 ArcGIS Server

默认情况下,ArcGIS Server 允许跨域请求,因此 JavaScript 客户端可从任意域调用服务器服务。

如要限制 JavaScript 应用程序对特定域的请求,可将 ArcGIS Server 配置为仅信任特定域。可以使用 ArcGIS Server Administrator Directory 进行此设置。

限制来自 JavaScript 应用程序的请求

默认情况下,ArcGIS Server 允许 JavaScript 应用程序访问所有 Web 服务。名为 AllowedOrigins 的属性可以控制此行为(其默认设置为通配符 *)。如要阻止其他域中的特定 JavaScript 应用程序使用您的 Web 服务,则可更改 AllowedOrigins 值以包含一个仅有信任域的列表。这样可降低未知应用程序向 Web 服务发送恶意命令的可能性。

注:

AllowedOrigins 属性中拒绝的主机将允许通过对允许进行 CORS 请求的主机没有任何限制的 Web 服务器、反向代理或者负载均衡器发送的请求。要与您的 ArcGIS Server 站点遵循相同的限制,您必须配置 Web 服务器、反向代理或负载均衡器。

  1. 打开 ArcGIS Server Administrator Directory,然后以具有服务器管理访问权限的用户身份登录。URL 地址格式为 https://gisserver.domain.com:6443/arcgis/admin
  2. 单击 system > handlers > rest > servicesdirectory
  3. 服务目录页面中,单击编辑
  4. AllowedOrigins 字段中,指定一个包含计算机及其域名(可访问 Web 服务,例如 https://machine.esri.com, http://host.arcgis.com, https://gisserver.example.com)的逗号分隔的列表。
    注:

    在域名中不能使用 * 通配符替代计算机名(例如 https://*.example.com)。必须在列表中指定完全限定的每台计算机域名。

  5. 单击保存