Skip to main content

2026 年 5 月 28 日

跨来源资源共享

跨来源资源共享 (CORS) 功能通过向客户端按需提供策略声明,并通过检查策略合规性请求,来控制客户端的跨来源请求。如果需要,可以重新配置或禁用此功能。

策略包含一组可获得接受的 HTTP 方法、请求的来源位置以及有效的具体内容类型。这些策略依据请求 URL 而异,可通过向 locked.properties 文件添加条目来根据需要进行重新配置。

属性名称后面的省略号表示该属性可以接受列表。

CORS 属性

属性值的类型主默认值其他默认值
enableCORStrue

false
true不适用
acceptContentType...http-content-typeapplication/x-www-form-urlencoded,application/xml,text/xmladmin=application/json,application/text,application/x-www-form-urlencoded

portal=application/json

rest=application/json

view-vlsi-rest=application/json
acceptHeader...http-header-name*admin=Accept,Accept-Encoding,Accept-Charset,Accept-Language,Authorization,Cache-Control,Connection,Content-Language,Content-Length,Content-Type,Cookie,csrftoken,DNT,Host,Origin,Referer,User-Agent

broker=Accept,Accept-Encoding,Accept-Charset,Accept-Language,Authorization,Connection,Content-Language,Content-Length,Content-Type,Cookie,Gateway-Location,Gateway-Name,Gateway-Type,Host,Origin,Referer,User-Agent,X-CSRF-Token,X-EUC-Gateway,X-EUC-Health,X-Forwarded-For,X-Forwarded-Host,X-Forwarded-Proto

portal=Accept,Accept-Encoding,Accept-Charset,Accept-Language,Authorization,Connection,Content-Language,Content-Length,Content-Type,Cookie,Host,Origin,Referer,User-Agent,X-CSRF-Token

rest=Accept,Accept-Encoding,Accept-Charset,Accept-Language,Authorization,Connection,Content-Language,Content-Length,Content-Type,Cookie,csrfToken,Host,Origin,Referer,User-Agent,X-Require-Cloud-Admin-Privilege

view-vlsi=Accept,Accept-Encoding,Accept-Charset,Accept-Language,Authorization,Connection,Content-Language,Content-Length,Content-Type,Cookie,csrfToken,Host,Origin,Referer,User-Agent,X-Require-Cloud-Admin-Privilege

view-vlsi-rest=Accept,Accept-Encoding,Accept-Charset,Accept-Language,Authorization,Connection,Content-Language,Content-Length,Content-Type,Cookie,csrfToken,Host,Origin,Referer,User-Agent,X-Require-Cloud-Admin-Privilege
exposeHeader...http-header-name*不适用
filterHeaderstrue

false
true不适用
checkOrigintrue

false
true不适用
checkReferertrue

false
false不适用
allowCredentialstrue

false
false(Horizon 2312 及更低版本)admin, broker, health, misc, portal, rest, saml, tunnel, view-vlsi, view-vlsi-rest = true

(Horizon 2406 及更高版本)admin, broker, health, portal, rest, root, saml, tunnel, view-vlsi, view-vlsi-rest, ws1 = true
allowMethod...http-method-nameGET,HEAD,POSTdct=GET

docroot=GET

health=GET,HEAD

misc=GET,HEAD(Horizon 2312 及更低版本)

rest=GET,POST,PUT,PATCH,DELETE

root=GET(Horizon 2406 及更高版本)

saml=GET,HEAD

tunnel=GET,POST
allowPreflighttrue

false
true不适用
maxAgecache-time0不适用
balancedHost...

注意:从 Horizon 2111.1/2209 开始,请使用 Horizon Console 设置负载均衡器,而不是在此处设置。
load-balancer-nameOFF不适用
portalHost...gateway-nameOFF不适用
chromeExtension...chrome-extension-hashppkfnjlimknmjoaemnpidmdlfchhehel 注意:此值是适用于 Chrome 的 Horizon Client 的 Chrome 扩展 ID。不适用
iwaBundleId...

注意:此属性适用于版本 2406 及更高版本。
chrome-client-bundle-idckg65ilaae42o6wd3uj4xfwznhba7pz2p6kojga5c27hkwq5f66qaaic

注意:此值适用于 Horizon IWA Client 的 Chrome 包 ID。
不适用
blockHtmlAccess

注意:此属性适用于版本 2212 及更高版本。
true

false
false不适用
blockSwaggerDocs

注意:此属性适用于版本 2111.2、2212.1、2303 及更高版本。
true

false
false

注意:设置为 true 时,将阻止提供 REST API 文档。
不适用

以下是 locked.properties 文件中 CORS 属性的示例。

enableCORS = true
allowPreflight = true
checkOrigin = true
checkOrigin-misc = false
allowMethod.1 = GET
allowMethod.2 = HEAD
allowMethod.3 = POST
allowMethod-saml.1 = GET
allowMethod-saml.2 = HEAD
acceptContentType.1 = application/x-www-form-urlencoded
acceptContentType.2 = application/xml
acceptContentType.3 = text/xml

来源检查

来源检查在默认情况下处于启用状态。启用后,将只有在没有来源或者来源与以下项相同时才会接受请求:外部 URL 指定的地址、任何 balancedHost 地址、任何 portalHost 地址、任何 chromeExtension 哈希、nulllocalhost。如果来源不是这些项中的任何一个,则会记录“意外来源”(Unexpected Origin) 错误并返回 404 状态。

**注意:**某些浏览器不会或不一定会提供来源标头。(可选)在缺少来源标头的情况下,可以检查请求中的引用标头。引用标头的标头名称中包含一个“r”。要检查引用标头,请将以下属性添加到 locked.properties 文件中:

checkReferer=true

如果使用多个连接服务器主机进行负载均衡,您必须在 locked.properties 文件中添加一个 balancedHost 条目以指定负载均衡器地址。该地址使用端口 443。

如果客户端通过 Unified Access Gateway 设备或其他网关进行连接,您必须在 locked.properties文件中添加 portalHost 条目以指定所有的网关地址。这些地址使用端口 443。您还必须指定 portalHost 条目,以通过与外部 URL 中指定的名称不同的名称来提供对连接服务器主机的访问权限。

对于 Horizon 2312 及更低版本,Chrome 扩展客户端将初始来源设置为它们自己的身份。要成功进行连接,请在 locked.properties 文件中添加一个 chromeExtension 条目以注册此扩展。例如:

chromeExtension.1=bpifadopbphhpkkcfohecfadckmpjmjd 

对于 Horizon 2406 及更高版本,Chrome 扩展客户端和隔离的 Web 应用程序将其初始来源设置为它们自己的身份。要成功进行连接,请在 locked.properties 文件中添加一个 chromeExtension 或 iwaBundleId 条目以注册此扩展或包。例如:

chromeExtension.1=bpifadopbphhpkkcfohecfadckmpjmjd
iwaBundleId.1=ckg65ilaae42o6wd3uj4xfwznhba7pz2p6kojga5c27hkwq5f66qaaic

另请参阅主机检查

此页面对您有帮助吗?

对本主题提供反馈

本主题对您有帮助吗?

请勿填写任何个人信息或机密信息。

正在生成链接…