CfnAccessPointPropsMixin

class aws_cdk.mixins_preview.aws_s3express.mixins.CfnAccessPointPropsMixin(props, *, strategy=None)

Bases: Mixin

Access points simplify managing data access at scale for shared datasets in Amazon S3 .

Access points are unique hostnames you create to enforce distinct permissions and network controls for all requests made through an access point. You can create hundreds of access points per bucket, each with a distinct name and permissions customized for each application. Each access point works in conjunction with the bucket policy that is attached to the underlying bucket. For more information, see Managing access to shared datasets in directory buckets with access points .

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3express-accesspoint.html

CloudformationResource:

AWS::S3Express::AccessPoint

Mixin:

true

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview import mixins
from aws_cdk.mixins_preview.aws_s3express import mixins as s3express_mixins

# policy: Any

cfn_access_point_props_mixin = s3express_mixins.CfnAccessPointPropsMixin(s3express_mixins.CfnAccessPointMixinProps(
    bucket="bucket",
    bucket_account_id="bucketAccountId",
    name="name",
    policy=policy,
    public_access_block_configuration=s3express_mixins.CfnAccessPointPropsMixin.PublicAccessBlockConfigurationProperty(
        block_public_acls=False,
        block_public_policy=False,
        ignore_public_acls=False,
        restrict_public_buckets=False
    ),
    scope=s3express_mixins.CfnAccessPointPropsMixin.ScopeProperty(
        permissions=["permissions"],
        prefixes=["prefixes"]
    ),
    tags=[CfnTag(
        key="key",
        value="value"
    )],
    vpc_configuration=s3express_mixins.CfnAccessPointPropsMixin.VpcConfigurationProperty(
        vpc_id="vpcId"
    )
),
    strategy=mixins.PropertyMergeStrategy.OVERRIDE
)

Create a mixin to apply properties to AWS::S3Express::AccessPoint.

Parameters:
  • props (Union[CfnAccessPointMixinProps, Dict[str, Any]]) – L1 properties to apply.

  • strategy (Optional[PropertyMergeStrategy]) – (experimental) Strategy for merging nested properties. Default: - PropertyMergeStrategy.MERGE

Methods

apply_to(construct)

Apply the mixin properties to the construct.

Parameters:

construct (IConstruct)

Return type:

IConstruct

supports(construct)

Check if this mixin supports the given construct.

Parameters:

construct (IConstruct)

Return type:

bool

Attributes

CFN_PROPERTY_KEYS = ['bucket', 'bucketAccountId', 'name', 'policy', 'publicAccessBlockConfiguration', 'scope', 'tags', 'vpcConfiguration']

Static Methods

classmethod is_mixin(x)

(experimental) Checks if x is a Mixin.

Parameters:

x (Any) – Any object.

Return type:

bool

Returns:

true if x is an object created from a class which extends Mixin.

Stability:

experimental

PublicAccessBlockConfigurationProperty

class CfnAccessPointPropsMixin.PublicAccessBlockConfigurationProperty(*, block_public_acls=None, block_public_policy=None, ignore_public_acls=None, restrict_public_buckets=None)

Bases: object

Public access is blocked by default to access points for directory buckets.

Parameters:
  • block_public_acls (Union[bool, IResolvable, None]) – Specifies whether Amazon S3 should block public access control lists (ACLs) for this bucket and objects in this bucket. 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.

  • block_public_policy (Union[bool, IResolvable, None]) – Specifies whether Amazon S3 should block public bucket policies for this bucket. 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.

  • ignore_public_acls (Union[bool, IResolvable, None]) – Specifies whether Amazon S3 should ignore public ACLs for this bucket and objects in this bucket. Setting this element to TRUE causes Amazon S3 to ignore all public ACLs on this bucket and objects in this bucket. Enabling this setting doesn’t affect the persistence of any existing ACLs and doesn’t prevent new public ACLs from being set.

  • restrict_public_buckets (Union[bool, IResolvable, None]) – 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 service principals 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.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3express-accesspoint-publicaccessblockconfiguration.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_s3express import mixins as s3express_mixins

public_access_block_configuration_property = s3express_mixins.CfnAccessPointPropsMixin.PublicAccessBlockConfigurationProperty(
    block_public_acls=False,
    block_public_policy=False,
    ignore_public_acls=False,
    restrict_public_buckets=False
)

Attributes

block_public_acls

Specifies whether Amazon S3 should block public access control lists (ACLs) for this bucket and objects in this bucket.

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.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3express-accesspoint-publicaccessblockconfiguration.html#cfn-s3express-accesspoint-publicaccessblockconfiguration-blockpublicacls

block_public_policy

Specifies whether Amazon S3 should block public bucket policies for this bucket.

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.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3express-accesspoint-publicaccessblockconfiguration.html#cfn-s3express-accesspoint-publicaccessblockconfiguration-blockpublicpolicy

ignore_public_acls

Specifies whether Amazon S3 should ignore public ACLs for this bucket and objects in this bucket.

Setting this element to TRUE causes Amazon S3 to ignore all public ACLs on this bucket and objects in this bucket.

Enabling this setting doesn’t affect the persistence of any existing ACLs and doesn’t prevent new public ACLs from being set.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3express-accesspoint-publicaccessblockconfiguration.html#cfn-s3express-accesspoint-publicaccessblockconfiguration-ignorepublicacls

restrict_public_buckets

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 service principals 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.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3express-accesspoint-publicaccessblockconfiguration.html#cfn-s3express-accesspoint-publicaccessblockconfiguration-restrictpublicbuckets

ScopeProperty

class CfnAccessPointPropsMixin.ScopeProperty(*, permissions=None, prefixes=None)

Bases: object

You can use the access point scope to restrict access to specific prefixes, API operations, or a combination of both.

For more information, see Manage the scope of your access points for directory buckets.

Parameters:
  • permissions (Optional[Sequence[str]]) – You can include one or more API operations as permissions.

  • prefixes (Optional[Sequence[str]]) – You can specify any amount of prefixes, but the total length of characters of all prefixes must be less than 256 bytes in size.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3express-accesspoint-scope.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_s3express import mixins as s3express_mixins

scope_property = s3express_mixins.CfnAccessPointPropsMixin.ScopeProperty(
    permissions=["permissions"],
    prefixes=["prefixes"]
)

Attributes

permissions

You can include one or more API operations as permissions.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3express-accesspoint-scope.html#cfn-s3express-accesspoint-scope-permissions

prefixes

You can specify any amount of prefixes, but the total length of characters of all prefixes must be less than 256 bytes in size.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3express-accesspoint-scope.html#cfn-s3express-accesspoint-scope-prefixes

VpcConfigurationProperty

class CfnAccessPointPropsMixin.VpcConfigurationProperty(*, vpc_id=None)

Bases: object

The Virtual Private Cloud (VPC) configuration for a bucket access point.

Parameters:

vpc_id (Optional[str]) – If this field is specified, this access point will only allow connections from the specified VPC ID.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3express-accesspoint-vpcconfiguration.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
from aws_cdk.mixins_preview.aws_s3express import mixins as s3express_mixins

vpc_configuration_property = s3express_mixins.CfnAccessPointPropsMixin.VpcConfigurationProperty(
    vpc_id="vpcId"
)

Attributes

vpc_id

If this field is specified, this access point will only allow connections from the specified VPC ID.

See:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3express-accesspoint-vpcconfiguration.html#cfn-s3express-accesspoint-vpcconfiguration-vpcid