Cross-Origin Resource Sharing (CORS)¶
EntryStore supports simple CORS requests (HEAD, GET, POST) as well as advanced CORS with preflight requests (OPTIONS with a consequent request using any allowed HTTP verb).
Configuration¶
The following settings can be used to activate and configure CORS:
entrystore.cors=on|off (default: off)
entrystore.cors.origins=*.domain.com,domain.net,something.* (mandatory if cors=on)
entrystore.cors.origins.allow-credentials=*.internal.domain.com (default: unset)
entrystore.cors.max-age=7200 (default: unset)
entrystore.cors.headers=X-Custom-Header (optional)
Details¶
- The
originssetting (Access-Control-Allow-Origin) defines a list of allowed origins. There is limited support for wildcards: a single wildcard is supported at the beginning or at the end of an origin. An origin may also be a wildcard only without any other surrounding characters. The value of this setting is a comma-separated list. - The
max-agesetting (Access-Control-Max-Age) is the duration in seconds for which the result of preflight requests should be cached. - The
headerssetting (controls bothAccess-Control-Allow-HeadersandAccess-Control-Expose-Headers) can be used to allow headers in addition to the (always allowed) simple response headersCache-Control,Content-Language,Content-Type,Expires,Last-Modified,Pragma. This value of this setting is a comma-separated list. - The
entrystore.cors.origins.allow-credentialssetting affectsAccess-Control-Allow-Credentialsand determines whether cookies may be sent for origins that match the patterns. Access-Control-Allow-Methodsis always set toHEAD, GET, PUT, POST, DELETE, OPTIONS.