Class: AWSCDK::CloudFront::ResponseHeadersCorsBehavior
- Inherits:
-
Jsii::Struct
- Object
- Jsii::Struct
- AWSCDK::CloudFront::ResponseHeadersCorsBehavior
- Defined in:
- cloud_front/response_headers_cors_behavior.rb
Overview
Configuration for a set of HTTP response headers that are used for cross-origin resource sharing (CORS).
CloudFront adds these headers to HTTP responses that it sends for CORS requests that match a cache behavior associated with this response headers policy.
Instance Attribute Summary collapse
-
#access_control_allow_credentials ⇒ Boolean
readonly
A Boolean that CloudFront uses as the value for the Access-Control-Allow-Credentials HTTP response header.
-
#access_control_allow_headers ⇒ Array<String>
readonly
A list of HTTP header names that CloudFront includes as values for the Access-Control-Allow-Headers HTTP response header.
-
#access_control_allow_methods ⇒ Array<String>
readonly
A list of HTTP methods that CloudFront includes as values for the Access-Control-Allow-Methods HTTP response header.
-
#access_control_allow_origins ⇒ Array<String>
readonly
A list of origins (domain names) that CloudFront can use as the value for the Access-Control-Allow-Origin HTTP response header.
-
#access_control_expose_headers ⇒ Array<String>?
readonly
A list of HTTP headers that CloudFront includes as values for the Access-Control-Expose-Headers HTTP response header.
-
#access_control_max_age ⇒ AWSCDK::Duration?
readonly
A number that CloudFront uses as the value for the Access-Control-Max-Age HTTP response header.
-
#origin_override ⇒ Boolean
readonly
A Boolean that determines whether CloudFront overrides HTTP response headers received from the origin with the ones specified in this response headers policy.
Class Method Summary collapse
Instance Method Summary collapse
-
#initialize(access_control_allow_credentials:, access_control_allow_headers:, access_control_allow_methods:, access_control_allow_origins:, origin_override:, access_control_expose_headers: nil, access_control_max_age: nil) ⇒ ResponseHeadersCorsBehavior
constructor
A new instance of ResponseHeadersCorsBehavior.
- #to_jsii ⇒ Object
Constructor Details
#initialize(access_control_allow_credentials:, access_control_allow_headers:, access_control_allow_methods:, access_control_allow_origins:, origin_override:, access_control_expose_headers: nil, access_control_max_age: nil) ⇒ ResponseHeadersCorsBehavior
Returns a new instance of ResponseHeadersCorsBehavior.
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
# File 'cloud_front/response_headers_cors_behavior.rb', line 17 def initialize(access_control_allow_credentials:, access_control_allow_headers:, access_control_allow_methods:, access_control_allow_origins:, origin_override:, access_control_expose_headers: nil, access_control_max_age: nil) @access_control_allow_credentials = access_control_allow_credentials Jsii::Type.check_type(@access_control_allow_credentials, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJib29sZWFuIn0=")), "accessControlAllowCredentials") @access_control_allow_headers = access_control_allow_headers Jsii::Type.check_type(@access_control_allow_headers, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "accessControlAllowHeaders") @access_control_allow_methods = access_control_allow_methods Jsii::Type.check_type(@access_control_allow_methods, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "accessControlAllowMethods") @access_control_allow_origins = access_control_allow_origins Jsii::Type.check_type(@access_control_allow_origins, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "accessControlAllowOrigins") @origin_override = origin_override Jsii::Type.check_type(@origin_override, JSON.parse(Base64.strict_decode64("eyJwcmltaXRpdmUiOiJib29sZWFuIn0=")), "originOverride") @access_control_expose_headers = access_control_expose_headers Jsii::Type.check_type(@access_control_expose_headers, JSON.parse(Base64.strict_decode64("eyJjb2xsZWN0aW9uIjp7ImVsZW1lbnR0eXBlIjp7InByaW1pdGl2ZSI6InN0cmluZyJ9LCJraW5kIjoiYXJyYXkifX0=")), "accessControlExposeHeaders") unless @access_control_expose_headers.nil? @access_control_max_age = access_control_max_age Jsii::Type.check_type(@access_control_max_age, JSON.parse(Base64.strict_decode64("eyJmcW4iOiJhd3MtY2RrLWxpYi5EdXJhdGlvbiJ9")), "accessControlMaxAge") unless @access_control_max_age.nil? end |
Instance Attribute Details
#access_control_allow_credentials ⇒ Boolean (readonly)
A Boolean that CloudFront uses as the value for the Access-Control-Allow-Credentials HTTP response header.
37 38 39 |
# File 'cloud_front/response_headers_cors_behavior.rb', line 37 def access_control_allow_credentials @access_control_allow_credentials end |
#access_control_allow_headers ⇒ Array<String> (readonly)
A list of HTTP header names that CloudFront includes as values for the Access-Control-Allow-Headers HTTP response header.
You can specify ['*'] to allow all headers.
43 44 45 |
# File 'cloud_front/response_headers_cors_behavior.rb', line 43 def access_control_allow_headers @access_control_allow_headers end |
#access_control_allow_methods ⇒ Array<String> (readonly)
A list of HTTP methods that CloudFront includes as values for the Access-Control-Allow-Methods HTTP response header.
Allowed methods: 'GET', 'DELETE', 'HEAD', 'OPTIONS', 'PATCH', 'POST', and 'PUT'.
You can specify ['ALL'] to allow all methods.
50 51 52 |
# File 'cloud_front/response_headers_cors_behavior.rb', line 50 def access_control_allow_methods @access_control_allow_methods end |
#access_control_allow_origins ⇒ Array<String> (readonly)
A list of origins (domain names) that CloudFront can use as the value for the Access-Control-Allow-Origin HTTP response header.
You can specify ['*'] to allow all origins.
56 57 58 |
# File 'cloud_front/response_headers_cors_behavior.rb', line 56 def access_control_allow_origins @access_control_allow_origins end |
#access_control_expose_headers ⇒ Array<String>? (readonly)
Default: - no headers exposed
A list of HTTP headers that CloudFront includes as values for the Access-Control-Expose-Headers HTTP response header.
You can specify ['*'] to expose all headers.
67 68 69 |
# File 'cloud_front/response_headers_cors_behavior.rb', line 67 def access_control_expose_headers @access_control_expose_headers end |
#access_control_max_age ⇒ AWSCDK::Duration? (readonly)
Default: - no max age
A number that CloudFront uses as the value for the Access-Control-Max-Age HTTP response header.
72 73 74 |
# File 'cloud_front/response_headers_cors_behavior.rb', line 72 def access_control_max_age @access_control_max_age end |
#origin_override ⇒ Boolean (readonly)
A Boolean that determines whether CloudFront overrides HTTP response headers received from the origin with the ones specified in this response headers policy.
60 61 62 |
# File 'cloud_front/response_headers_cors_behavior.rb', line 60 def origin_override @origin_override end |
Class Method Details
.jsii_properties ⇒ Object
74 75 76 77 78 79 80 81 82 83 84 |
# File 'cloud_front/response_headers_cors_behavior.rb', line 74 def self.jsii_properties { :access_control_allow_credentials => "accessControlAllowCredentials", :access_control_allow_headers => "accessControlAllowHeaders", :access_control_allow_methods => "accessControlAllowMethods", :access_control_allow_origins => "accessControlAllowOrigins", :origin_override => "originOverride", :access_control_expose_headers => "accessControlExposeHeaders", :access_control_max_age => "accessControlMaxAge", } end |
Instance Method Details
#to_jsii ⇒ Object
86 87 88 89 90 91 92 93 94 95 96 97 98 |
# File 'cloud_front/response_headers_cors_behavior.rb', line 86 def to_jsii result = {} result.merge!({ "accessControlAllowCredentials" => @access_control_allow_credentials, "accessControlAllowHeaders" => @access_control_allow_headers, "accessControlAllowMethods" => @access_control_allow_methods, "accessControlAllowOrigins" => @access_control_allow_origins, "originOverride" => @origin_override, "accessControlExposeHeaders" => @access_control_expose_headers, "accessControlMaxAge" => @access_control_max_age, }) result.compact end |