CORS/CSP 配置
由于跨域资源共享 (CORS) 和内容安全策略 (CSP) 设置,有时可能会限制网页浏览器对 Amazon 和 Azure 存储桶的访问。
当 Orchestrator 的存储配置为使用 Azure 或 Amazon 时,这也适用于 Orchestrator 存储桶。
从 Orchestrator 用户界面访问存储桶内容时,以下操作会受损:
- 将文件上传到存储桶
- 从存储桶下载文件。
-
打开文档验证操作或表单操作(使用存储在存储桶中的图像)。
注意:使用活动访问存储文件不受 CORS 和 CSP 策略的影响,因为它们是特定于浏览器的,并且仅在浏览器级别进行了验证/强制执行。
CORS 和 CSP 都允许将网页应用程序中已标识的实体列入白名单。请参阅下面的详细信息。
CORS 是一种允许跨域访问网页上资源的机制。
由于提供程序端的同源策略,Orchestrator 网页浏览器对 Amazon 和 Azure 存储桶的访问可能会受到限制。从 Orchestrator 用户界面成功访问此类存储桶的内容要求您配置相应的提供程序以允许来自 Orchestrator 的跨域请求。
如果更改前端 DNS,则必须更新所有存储桶(S3 或兼容)或 Orchestrator 访问的所有 Azure 存储帐户的 CORS 设置。
GET
和 PUT
请求。例如:
[
{
"AllowedHeaders": [
"*"
],
"AllowedMethods": [
"GET",
"PUT"
],
"AllowedOrigins": [
"https://your.automationsuite.dns.name"
],
"ExposeHeaders": []
}
]
[
{
"AllowedHeaders": [
"*"
],
"AllowedMethods": [
"GET",
"PUT"
],
"AllowedOrigins": [
"https://your.automationsuite.dns.name"
],
"ExposeHeaders": []
}
]
为来自 Orchestrator 的请求启用 GET 和 PUT 操作。例如:
<Cors>
<CorsRule>
<AllowedOrigins>http://your.automationsuite.dns.name</AllowedOrigins>
<AllowedMethods>PUT,GET</AllowedMethods>
<AllowedHeaders>*</AllowedHeaders>
<ExposedHeaders>*</ExposedHeaders>
</CorsRule>
</Cors>
<Cors>
<CorsRule>
<AllowedOrigins>http://your.automationsuite.dns.name</AllowedOrigins>
<AllowedMethods>PUT,GET</AllowedMethods>
<AllowedHeaders>*</AllowedHeaders>
<ExposedHeaders>*</ExposedHeaders>
</CorsRule>
</Cors>
内容安全策略是一个网页浏览器安全层,可防止网页应用程序在一组受信任的主机之外发出请求。
使用存储桶时,如果启用了这些提供程序或 Orchestrator 的复合存储配置为使用 Azure 或 Amazon S3,则 Orchestrator 自动允许调用 Azure 或 Amazon S3。
要修复可能的 CSP 问题,添加 Buckets.ContentSecurityPolicy 应用程序设置,并将其值设置为要允许的所有域,以逗号分隔。此参数将覆盖与 Azure 和 AWS 相关的相应 Orchestrator 设置,因此同时请确保根据需要添加 Azure 和/或 AWS。