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

com.pulumi.awsnative.s3objectlambda.kotlin.outputs.AccessPointPublicAccessBlockConfiguration.kt Maven / Gradle / Ivy

Go to download

Build cloud applications and infrastructure by combining the safety and reliability of infrastructure as code with the power of the Kotlin programming language.

There is a newer version: 1.24.0.0
Show newest version
@file:Suppress("NAME_SHADOWING", "DEPRECATION")

package com.pulumi.awsnative.s3objectlambda.kotlin.outputs

import kotlin.Boolean
import kotlin.Suppress

/**
 * The Public Access Block Configuration is used to block policies that would allow public access to this Object lambda Access Point. All public access to Object lambda Access Points are blocked by default, and any policy that would give public access to them will be also blocked. This behavior cannot be changed for Object lambda Access Points.
 * @property blockPublicAcls Specifies whether Amazon S3 should block public access control lists (ACLs) to this object lambda access point. Setting this element to TRUE causes the following behavior:
 * - PUT Bucket acl and PUT Object acl calls fail if the specified ACL is public.
 *  - PUT Object calls fail if the request includes a public ACL.
 * . - PUT Bucket calls fail if the request includes a public ACL.
 * Enabling this setting doesn't affect existing policies or ACLs.
 * @property blockPublicPolicy Specifies whether Amazon S3 should block public bucket policies for buckets in this account. Setting this element to TRUE causes Amazon S3 to reject calls to PUT Bucket policy if the specified bucket policy allows public access. Enabling this setting doesn't affect existing bucket policies.
 * @property ignorePublicAcls Specifies whether Amazon S3 should ignore public ACLs for buckets in this account. Setting this element to TRUE causes Amazon S3 to ignore all public ACLs on buckets in this account and any objects that they contain. Enabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new public ACLs from being set.
 * @property restrictPublicBuckets Specifies whether Amazon S3 should restrict public bucket policies for this bucket. Setting this element to TRUE restricts access to this bucket to only AWS services and authorized users within this account if the bucket has a public policy.
 * Enabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked.
 */
public data class AccessPointPublicAccessBlockConfiguration(
    public val blockPublicAcls: Boolean? = null,
    public val blockPublicPolicy: Boolean? = null,
    public val ignorePublicAcls: Boolean? = null,
    public val restrictPublicBuckets: Boolean? = null,
) {
    public companion object {
        public fun toKotlin(javaType: com.pulumi.awsnative.s3objectlambda.outputs.AccessPointPublicAccessBlockConfiguration): AccessPointPublicAccessBlockConfiguration = AccessPointPublicAccessBlockConfiguration(
            blockPublicAcls = javaType.blockPublicAcls().map({ args0 -> args0 }).orElse(null),
            blockPublicPolicy = javaType.blockPublicPolicy().map({ args0 -> args0 }).orElse(null),
            ignorePublicAcls = javaType.ignorePublicAcls().map({ args0 -> args0 }).orElse(null),
            restrictPublicBuckets = javaType.restrictPublicBuckets().map({ args0 -> args0 }).orElse(null),
        )
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy