All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.pulumi.awsnative.cloudfront.kotlin.outputs.ResponseHeadersPolicySecurityHeadersConfig.kt Maven / Gradle / Ivy

@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.awsnative.cloudfront.kotlin.outputs

import kotlin.Suppress

/**
 *
 * @property contentSecurityPolicy The policy directives and their values that CloudFront includes as values for the `Content-Security-Policy` HTTP response header.
 * For more information about the `Content-Security-Policy` HTTP response header, see [Content-Security-Policy](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Security-Policy) in the MDN Web Docs.
 * @property contentTypeOptions Determines whether CloudFront includes the `X-Content-Type-Options` HTTP response header with its value set to `nosniff` .
 * For more information about the `X-Content-Type-Options` HTTP response header, see [X-Content-Type-Options](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Content-Type-Options) in the MDN Web Docs.
 * @property frameOptions Determines whether CloudFront includes the `X-Frame-Options` HTTP response header and the header's value.
 * For more information about the `X-Frame-Options` HTTP response header, see [X-Frame-Options](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Frame-Options) in the MDN Web Docs.
 * @property referrerPolicy Determines whether CloudFront includes the `Referrer-Policy` HTTP response header and the header's value.
 * For more information about the `Referrer-Policy` HTTP response header, see [Referrer-Policy](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referrer-Policy) in the MDN Web Docs.
 * @property strictTransportSecurity Determines whether CloudFront includes the `Strict-Transport-Security` HTTP response header and the header's value.
 * For more information about the `Strict-Transport-Security` HTTP response header, see [Security headers](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/understanding-response-headers-policies.html#understanding-response-headers-policies-security) in the *Amazon CloudFront Developer Guide* and [Strict-Transport-Security](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Strict-Transport-Security) in the MDN Web Docs.
 * @property xssProtection Determines whether CloudFront includes the `X-XSS-Protection` HTTP response header and the header's value.
 * For more information about the `X-XSS-Protection` HTTP response header, see [X-XSS-Protection](https://docs.aws.amazon.com/https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-XSS-Protection) in the MDN Web Docs.
 */
public data class ResponseHeadersPolicySecurityHeadersConfig(
    public val contentSecurityPolicy: ResponseHeadersPolicyContentSecurityPolicy? = null,
    public val contentTypeOptions: ResponseHeadersPolicyContentTypeOptions? = null,
    public val frameOptions: ResponseHeadersPolicyFrameOptions? = null,
    public val referrerPolicy: ResponseHeadersPolicyReferrerPolicy? = null,
    public val strictTransportSecurity: ResponseHeadersPolicyStrictTransportSecurity? = null,
    public val xssProtection: ResponseHeadersPolicyXssProtection? = null,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.awsnative.cloudfront.outputs.ResponseHeadersPolicySecurityHeadersConfig): ResponseHeadersPolicySecurityHeadersConfig = ResponseHeadersPolicySecurityHeadersConfig(
            contentSecurityPolicy = javaType.contentSecurityPolicy().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.cloudfront.kotlin.outputs.ResponseHeadersPolicyContentSecurityPolicy.Companion.toKotlin(args0)
                })
            }).orElse(null),
            contentTypeOptions = javaType.contentTypeOptions().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.cloudfront.kotlin.outputs.ResponseHeadersPolicyContentTypeOptions.Companion.toKotlin(args0)
                })
            }).orElse(null),
            frameOptions = javaType.frameOptions().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.cloudfront.kotlin.outputs.ResponseHeadersPolicyFrameOptions.Companion.toKotlin(args0)
                })
            }).orElse(null),
            referrerPolicy = javaType.referrerPolicy().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.cloudfront.kotlin.outputs.ResponseHeadersPolicyReferrerPolicy.Companion.toKotlin(args0)
                })
            }).orElse(null),
            strictTransportSecurity = javaType.strictTransportSecurity().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.cloudfront.kotlin.outputs.ResponseHeadersPolicyStrictTransportSecurity.Companion.toKotlin(args0)
                })
            }).orElse(null),
            xssProtection = javaType.xssProtection().map({ args0 ->
                args0.let({ args0 ->
                    com.pulumi.awsnative.cloudfront.kotlin.outputs.ResponseHeadersPolicyXssProtection.Companion.toKotlin(args0)
                })
            }).orElse(null),
        )
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy