Class CfnResponseHeadersPolicy

java.lang.Object
software.amazon.jsii.JsiiObject
All Implemented Interfaces:
IConstruct, IDependable, IInspectable, software.amazon.jsii.JsiiSerializable, software.constructs.IConstruct

@Generated(value="jsii-pacmak/1.84.0 (build 5404dcf)", date="2023-06-19T16:30:43.610Z") @Stability(Stable) public class CfnResponseHeadersPolicy extends CfnResource implements IInspectable
A CloudFormation AWS::CloudFront::ResponseHeadersPolicy.

A response headers policy.

A response headers policy contains information about a set of HTTP response headers.

After you create a response headers policy, you can use its ID to attach it to one or more cache behaviors in a CloudFront distribution. When it's attached to a cache behavior, the response headers policy affects the HTTP headers that CloudFront includes in HTTP responses to requests that match the cache behavior. CloudFront adds or removes response headers according to the configuration of the response headers policy.

For more information, see Adding or removing HTTP headers in CloudFront responses in the Amazon CloudFront Developer Guide .

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.services.cloudfront.*;
 CfnResponseHeadersPolicy cfnResponseHeadersPolicy = CfnResponseHeadersPolicy.Builder.create(this, "MyCfnResponseHeadersPolicy")
         .responseHeadersPolicyConfig(ResponseHeadersPolicyConfigProperty.builder()
                 .name("name")
                 // the properties below are optional
                 .comment("comment")
                 .corsConfig(CorsConfigProperty.builder()
                         .accessControlAllowCredentials(false)
                         .accessControlAllowHeaders(AccessControlAllowHeadersProperty.builder()
                                 .items(List.of("items"))
                                 .build())
                         .accessControlAllowMethods(AccessControlAllowMethodsProperty.builder()
                                 .items(List.of("items"))
                                 .build())
                         .accessControlAllowOrigins(AccessControlAllowOriginsProperty.builder()
                                 .items(List.of("items"))
                                 .build())
                         .originOverride(false)
                         // the properties below are optional
                         .accessControlExposeHeaders(AccessControlExposeHeadersProperty.builder()
                                 .items(List.of("items"))
                                 .build())
                         .accessControlMaxAgeSec(123)
                         .build())
                 .customHeadersConfig(CustomHeadersConfigProperty.builder()
                         .items(List.of(CustomHeaderProperty.builder()
                                 .header("header")
                                 .override(false)
                                 .value("value")
                                 .build()))
                         .build())
                 .removeHeadersConfig(RemoveHeadersConfigProperty.builder()
                         .items(List.of(RemoveHeaderProperty.builder()
                                 .header("header")
                                 .build()))
                         .build())
                 .securityHeadersConfig(SecurityHeadersConfigProperty.builder()
                         .contentSecurityPolicy(ContentSecurityPolicyProperty.builder()
                                 .contentSecurityPolicy("contentSecurityPolicy")
                                 .override(false)
                                 .build())
                         .contentTypeOptions(ContentTypeOptionsProperty.builder()
                                 .override(false)
                                 .build())
                         .frameOptions(FrameOptionsProperty.builder()
                                 .frameOption("frameOption")
                                 .override(false)
                                 .build())
                         .referrerPolicy(ReferrerPolicyProperty.builder()
                                 .override(false)
                                 .referrerPolicy("referrerPolicy")
                                 .build())
                         .strictTransportSecurity(StrictTransportSecurityProperty.builder()
                                 .accessControlMaxAgeSec(123)
                                 .override(false)
                                 // the properties below are optional
                                 .includeSubdomains(false)
                                 .preload(false)
                                 .build())
                         .xssProtection(XSSProtectionProperty.builder()
                                 .override(false)
                                 .protection(false)
                                 // the properties below are optional
                                 .modeBlock(false)
                                 .reportUri("reportUri")
                                 .build())
                         .build())
                 .serverTimingHeadersConfig(ServerTimingHeadersConfigProperty.builder()
                         .enabled(false)
                         // the properties below are optional
                         .samplingRate(123)
                         .build())
                 .build())
         .build();
 
  • Field Details

    • CFN_RESOURCE_TYPE_NAME

      @Stability(Stable) public static final String CFN_RESOURCE_TYPE_NAME
      The CloudFormation resource type name for this resource class.
  • Constructor Details

    • CfnResponseHeadersPolicy

      protected CfnResponseHeadersPolicy(software.amazon.jsii.JsiiObjectRef objRef)
    • CfnResponseHeadersPolicy

      protected CfnResponseHeadersPolicy(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
    • CfnResponseHeadersPolicy

      @Stability(Stable) public CfnResponseHeadersPolicy(@NotNull Construct scope, @NotNull String id, @NotNull CfnResponseHeadersPolicyProps props)
      Create a new AWS::CloudFront::ResponseHeadersPolicy.

      Parameters:
      scope -
      • scope in which this resource is defined.
      This parameter is required.
      id -
      • scoped id of the resource.
      This parameter is required.
      props -
      • resource properties.
      This parameter is required.
  • Method Details

    • inspect

      @Stability(Stable) public void inspect(@NotNull TreeInspector inspector)
      Examines the CloudFormation resource and discloses attributes.

      Specified by:
      inspect in interface IInspectable
      Parameters:
      inspector -
      • tree inspector to collect and process attributes.
      This parameter is required.
    • renderProperties

      @Stability(Stable) @NotNull protected Map<String,Object> renderProperties(@NotNull Map<String,Object> props)
      Overrides:
      renderProperties in class CfnResource
      Parameters:
      props - This parameter is required.
    • getAttrId

      @Stability(Stable) @NotNull public String getAttrId()
      The unique identifier for the response headers policy.

      For example: 57f99797-3b20-4e1b-a728-27972a74082a .

    • getAttrLastModifiedTime

      @Stability(Stable) @NotNull public String getAttrLastModifiedTime()
      The date and time when the response headers policy was last modified.
    • getCfnProperties

      @Stability(Stable) @NotNull protected Map<String,Object> getCfnProperties()
      Overrides:
      getCfnProperties in class CfnResource
    • getResponseHeadersPolicyConfig

      @Stability(Stable) @NotNull public Object getResponseHeadersPolicyConfig()
      A response headers policy configuration.
    • setResponseHeadersPolicyConfig

      @Stability(Stable) public void setResponseHeadersPolicyConfig(@NotNull IResolvable value)
      A response headers policy configuration.
    • setResponseHeadersPolicyConfig

      @Stability(Stable) public void setResponseHeadersPolicyConfig(@NotNull CfnResponseHeadersPolicy.ResponseHeadersPolicyConfigProperty value)
      A response headers policy configuration.