AWS S3 Control

2023/03/15 - AWS S3 Control - 3 updated api methods

Changes  Added support for S3 Object Lambda aliases.

CreateAccessPointForObjectLambda (updated) Link ¶
Changes (response)
{'Alias': {'Status': 'PROVISIONING | READY', 'Value': 'string'}}

Creates an Object Lambda Access Point. For more information, see Transforming objects with Object Lambda Access Points in the Amazon S3 User Guide.

The following actions are related to CreateAccessPointForObjectLambda:

See also: AWS API Documentation

Request Syntax

client.create_access_point_for_object_lambda(
    AccountId='string',
    Name='string',
    Configuration={
        'SupportingAccessPoint': 'string',
        'CloudWatchMetricsEnabled': True|False,
        'AllowedFeatures': [
            'GetObject-Range'|'GetObject-PartNumber'|'HeadObject-Range'|'HeadObject-PartNumber',
        ],
        'TransformationConfigurations': [
            {
                'Actions': [
                    'GetObject'|'HeadObject'|'ListObjects'|'ListObjectsV2',
                ],
                'ContentTransformation': {
                    'AwsLambda': {
                        'FunctionArn': 'string',
                        'FunctionPayload': 'string'
                    }
                }
            },
        ]
    }
)
type AccountId:

string

param AccountId:

[REQUIRED]

The Amazon Web Services account ID for owner of the specified Object Lambda Access Point.

type Name:

string

param Name:

[REQUIRED]

The name you want to assign to this Object Lambda Access Point.

type Configuration:

dict

param Configuration:

[REQUIRED]

Object Lambda Access Point configuration as a JSON document.

  • SupportingAccessPoint (string) -- [REQUIRED]

    Standard access point associated with the Object Lambda Access Point.

  • CloudWatchMetricsEnabled (boolean) --

    A container for whether the CloudWatch metrics configuration is enabled.

  • AllowedFeatures (list) --

    A container for allowed features. Valid inputs are GetObject-Range, GetObject-PartNumber, HeadObject-Range, and HeadObject-PartNumber.

    • (string) --

  • TransformationConfigurations (list) -- [REQUIRED]

    A container for transformation configurations for an Object Lambda Access Point.

    • (dict) --

      A configuration used when creating an Object Lambda Access Point transformation.

      • Actions (list) -- [REQUIRED]

        A container for the action of an Object Lambda Access Point configuration. Valid inputs are GetObject, ListObjects, HeadObject, and ListObjectsV2.

        • (string) --

      • ContentTransformation (dict) -- [REQUIRED]

        A container for the content transformation of an Object Lambda Access Point configuration.

        • AwsLambda (dict) --

          A container for an Lambda function.

          • FunctionArn (string) -- [REQUIRED]

            The Amazon Resource Name (ARN) of the Lambda function.

          • FunctionPayload (string) --

            Additional JSON that provides supplemental data to the Lambda function used to transform objects.

rtype:

dict

returns:

Response Syntax

{
    'ObjectLambdaAccessPointArn': 'string',
    'Alias': {
        'Value': 'string',
        'Status': 'PROVISIONING'|'READY'
    }
}

Response Structure

  • (dict) --

    • ObjectLambdaAccessPointArn (string) --

      Specifies the ARN for the Object Lambda Access Point.

    • Alias (dict) --

      The alias of the Object Lambda Access Point.

      • Value (string) --

        The alias value of the Object Lambda Access Point.

      • Status (string) --

        The status of the Object Lambda Access Point alias. If the status is PROVISIONING, the Object Lambda Access Point is provisioning the alias and the alias is not ready for use yet. If the status is READY, the Object Lambda Access Point alias is successfully provisioned and ready for use.

GetAccessPointForObjectLambda (updated) Link ¶
Changes (response)
{'Alias': {'Status': 'PROVISIONING | READY', 'Value': 'string'}}

Returns configuration information about the specified Object Lambda Access Point

The following actions are related to GetAccessPointForObjectLambda:

See also: AWS API Documentation

Request Syntax

client.get_access_point_for_object_lambda(
    AccountId='string',
    Name='string'
)
type AccountId:

string

param AccountId:

[REQUIRED]

The account ID for the account that owns the specified Object Lambda Access Point.

type Name:

string

param Name:

[REQUIRED]

The name of the Object Lambda Access Point.

rtype:

dict

returns:

Response Syntax

{
    'Name': 'string',
    'PublicAccessBlockConfiguration': {
        'BlockPublicAcls': True|False,
        'IgnorePublicAcls': True|False,
        'BlockPublicPolicy': True|False,
        'RestrictPublicBuckets': True|False
    },
    'CreationDate': datetime(2015, 1, 1),
    'Alias': {
        'Value': 'string',
        'Status': 'PROVISIONING'|'READY'
    }
}

Response Structure

  • (dict) --

    • Name (string) --

      The name of the Object Lambda Access Point.

    • PublicAccessBlockConfiguration (dict) --

      Configuration to block all public access. This setting is turned on and can not be edited.

      • BlockPublicAcls (boolean) --

        Specifies whether Amazon S3 should block public access control lists (ACLs) for buckets in this account. Setting this element to TRUE causes the following behavior:

        • PutBucketAcl and PutObjectAcl 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.

        This property is not supported for Amazon S3 on Outposts.

      • IgnorePublicAcls (boolean) --

        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.

        This property is not supported for Amazon S3 on Outposts.

      • BlockPublicPolicy (boolean) --

        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.

        This property is not supported for Amazon S3 on Outposts.

      • RestrictPublicBuckets (boolean) --

        Specifies whether Amazon S3 should restrict public bucket policies for buckets in this account. Setting this element to TRUE restricts access to buckets with public policies to only Amazon Web Service principals and authorized users within this account.

        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.

        This property is not supported for Amazon S3 on Outposts.

    • CreationDate (datetime) --

      The date and time when the specified Object Lambda Access Point was created.

    • Alias (dict) --

      The alias of the Object Lambda Access Point.

      • Value (string) --

        The alias value of the Object Lambda Access Point.

      • Status (string) --

        The status of the Object Lambda Access Point alias. If the status is PROVISIONING, the Object Lambda Access Point is provisioning the alias and the alias is not ready for use yet. If the status is READY, the Object Lambda Access Point alias is successfully provisioned and ready for use.

ListAccessPointsForObjectLambda (updated) Link ¶
Changes (response)
{'ObjectLambdaAccessPointList': {'Alias': {'Status': 'PROVISIONING | READY',
                                           'Value': 'string'}}}

Returns some or all (up to 1,000) access points associated with the Object Lambda Access Point per call. If there are more access points than what can be returned in one call, the response will include a continuation token that you can use to list the additional access points.

The following actions are related to ListAccessPointsForObjectLambda:

See also: AWS API Documentation

Request Syntax

client.list_access_points_for_object_lambda(
    AccountId='string',
    NextToken='string',
    MaxResults=123
)
type AccountId:

string

param AccountId:

[REQUIRED]

The account ID for the account that owns the specified Object Lambda Access Point.

type NextToken:

string

param NextToken:

If the list has more access points than can be returned in one call to this API, this field contains a continuation token that you can provide in subsequent calls to this API to retrieve additional access points.

type MaxResults:

integer

param MaxResults:

The maximum number of access points that you want to include in the list. The response may contain fewer access points but will never contain more. If there are more than this number of access points, then the response will include a continuation token in the NextToken field that you can use to retrieve the next page of access points.

rtype:

dict

returns:

Response Syntax

{
    'ObjectLambdaAccessPointList': [
        {
            'Name': 'string',
            'ObjectLambdaAccessPointArn': 'string',
            'Alias': {
                'Value': 'string',
                'Status': 'PROVISIONING'|'READY'
            }
        },
    ],
    'NextToken': 'string'
}

Response Structure

  • (dict) --

    • ObjectLambdaAccessPointList (list) --

      Returns list of Object Lambda Access Points.

      • (dict) --

        An access point with an attached Lambda function used to access transformed data from an Amazon S3 bucket.

        • Name (string) --

          The name of the Object Lambda Access Point.

        • ObjectLambdaAccessPointArn (string) --

          Specifies the ARN for the Object Lambda Access Point.

        • Alias (dict) --

          The alias of the Object Lambda Access Point.

          • Value (string) --

            The alias value of the Object Lambda Access Point.

          • Status (string) --

            The status of the Object Lambda Access Point alias. If the status is PROVISIONING, the Object Lambda Access Point is provisioning the alias and the alias is not ready for use yet. If the status is READY, the Object Lambda Access Point alias is successfully provisioned and ready for use.

    • NextToken (string) --

      If the list has more access points than can be returned in one call to this API, this field contains a continuation token that you can provide in subsequent calls to this API to retrieve additional access points.