Web browser access to Amazon and Azure storage buckets can sometimes be restricted due to Cross Origin Resource Sharing (CORS) and Content Security Policy (CSP) settings. This applies to Orchestrator buckets as well, when Orchestrator's composite storage is configured to use Azure or Amazon.
The following operations are impaired when accessing bucket content from the Orchestrator UI:
- Uploading files into a storage bucket
- Downloading files from a storage bucket.
- Opening document validation actions or form actions that use images stored in buckets.
Accessing storage files using activities is not impacted by CORS and CSP policies because they are browser-specific and are validated/enforced at browser level only.
Both CORS and CSP allow whitelisting identified entities in the web application. See below details about each.
CORS is a mechanism that allows resources on a web page to be accessed across domain boundaries.
Orchestrator web browser access to Amazon and Azure storage buckets can be restricted due to same-origin-policy on the provider side. Successfully accessing the content of such a bucket from the Orchestrator UI requires you to configure the respective provider to allow cross-origin requests from Orchestrator.
Add a rule that allows
PUT requests from Orchestrator. For example:
<CORSConfiguration> <CORSRule> <AllowedOrigin>http://your.orchestrator.dns.name</AllowedOrigin> <AllowedMethod>PUT</AllowedMethod> <AllowedMethod>DELETE</AllowedMethod> <AllowedHeader>*</AllowedHeader> </CORSRule> </CORSConfiguration>
Enable GET and PUT operations for requests originating from the Orchestrator. For example:
<Cors> <CorsRule> <AllowedOrigins>http://your.orchestrator.dns.name</AllowedOrigins> <AllowedMethods>PUT,GET</AllowedMethods> <AllowedHeaders>*</AllowedHeaders> <ExposedHeaders>*</ExposedHeaders> </CorsRule> <Cors>
Content Security Policy is a web browser security layer that prevents a web app from making requests outside a trusted set of hosts.
When using storage buckets, Orchestrator automatically allows calls to Azure or Amazon S3, if these providers are enabled or if Orchestrator's composite storage is configured to use Azure or Amazon S3.
To prevent CSP issues, use canonical Azure or Amazon names for the container, and avoid vanity URLs.
To fix possible CSP issues, add the
Buckets.ContentSecurityPolicy parameter in
UiPath.Orchestrator.dll.config and set its value to a comma-separated list of all domains to be whitelisted. This parameter overrides the corresponding Orchestrator settings in regards to Azure and AWS, so make sure to adds Azure and/or AWS as well, if needed.
Updated 2 months ago