![JAR search and dependency download from the Maven repository](/logo.png)
com.pulumi.awsnative.cloudfront.kotlin.inputs.DistributionS3OriginConfigArgs.kt Maven / Gradle / Ivy
@file:Suppress("NAME_SHADOWING", "DEPRECATION")
package com.pulumi.awsnative.cloudfront.kotlin.inputs
import com.pulumi.awsnative.cloudfront.inputs.DistributionS3OriginConfigArgs.builder
import com.pulumi.core.Output
import com.pulumi.core.Output.of
import com.pulumi.kotlin.ConvertibleToJava
import com.pulumi.kotlin.PulumiTagMarker
import kotlin.String
import kotlin.Suppress
import kotlin.jvm.JvmName
/**
* A complex type that contains information about the Amazon S3 origin. If the origin is a custom origin or an S3 bucket that is configured as a website endpoint, use the ``CustomOriginConfig`` element instead.
* @property originAccessIdentity The CloudFront origin access identity to associate with the origin. Use an origin access identity to configure the origin so that viewers can *only* access objects in an Amazon S3 bucket through CloudFront. The format of the value is:
* origin-access-identity/cloudfront/*ID-of-origin-access-identity*
* where ``ID-of-origin-access-identity`` is the value that CloudFront returned in the ``ID`` element when you created the origin access identity.
* If you want viewers to be able to access objects using either the CloudFront URL or the Amazon S3 URL, specify an empty ``OriginAccessIdentity`` element.
* To delete the origin access identity from an existing distribution, update the distribution configuration and include an empty ``OriginAccessIdentity`` element.
* To replace the origin access identity, update the distribution configuration and specify the new origin access identity.
* For more information about the origin access identity, see [Serving Private Content through CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html) in the *Amazon CloudFront Developer Guide*.
* */
*/
public data class DistributionS3OriginConfigArgs(
public val originAccessIdentity: Output? = null,
) : ConvertibleToJava {
override fun toJava(): com.pulumi.awsnative.cloudfront.inputs.DistributionS3OriginConfigArgs =
com.pulumi.awsnative.cloudfront.inputs.DistributionS3OriginConfigArgs.builder()
.originAccessIdentity(originAccessIdentity?.applyValue({ args0 -> args0 })).build()
}
/**
* Builder for [DistributionS3OriginConfigArgs].
*/
@PulumiTagMarker
public class DistributionS3OriginConfigArgsBuilder internal constructor() {
private var originAccessIdentity: Output? = null
/**
* @param value The CloudFront origin access identity to associate with the origin. Use an origin access identity to configure the origin so that viewers can *only* access objects in an Amazon S3 bucket through CloudFront. The format of the value is:
* origin-access-identity/cloudfront/*ID-of-origin-access-identity*
* where ``ID-of-origin-access-identity`` is the value that CloudFront returned in the ``ID`` element when you created the origin access identity.
* If you want viewers to be able to access objects using either the CloudFront URL or the Amazon S3 URL, specify an empty ``OriginAccessIdentity`` element.
* To delete the origin access identity from an existing distribution, update the distribution configuration and include an empty ``OriginAccessIdentity`` element.
* To replace the origin access identity, update the distribution configuration and specify the new origin access identity.
* For more information about the origin access identity, see [Serving Private Content through CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html) in the *Amazon CloudFront Developer Guide*.
* */
*/
@JvmName("gpbeobgyinxvmjik")
public suspend fun originAccessIdentity(`value`: Output) {
this.originAccessIdentity = value
}
/**
* @param value The CloudFront origin access identity to associate with the origin. Use an origin access identity to configure the origin so that viewers can *only* access objects in an Amazon S3 bucket through CloudFront. The format of the value is:
* origin-access-identity/cloudfront/*ID-of-origin-access-identity*
* where ``ID-of-origin-access-identity`` is the value that CloudFront returned in the ``ID`` element when you created the origin access identity.
* If you want viewers to be able to access objects using either the CloudFront URL or the Amazon S3 URL, specify an empty ``OriginAccessIdentity`` element.
* To delete the origin access identity from an existing distribution, update the distribution configuration and include an empty ``OriginAccessIdentity`` element.
* To replace the origin access identity, update the distribution configuration and specify the new origin access identity.
* For more information about the origin access identity, see [Serving Private Content through CloudFront](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html) in the *Amazon CloudFront Developer Guide*.
* */
*/
@JvmName("fbietnhriidwlahq")
public suspend fun originAccessIdentity(`value`: String?) {
val toBeMapped = value
val mapped = toBeMapped?.let({ args0 -> of(args0) })
this.originAccessIdentity = mapped
}
internal fun build(): DistributionS3OriginConfigArgs = DistributionS3OriginConfigArgs(
originAccessIdentity = originAccessIdentity,
)
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy