Skip to content
v2.276.0

Experimental

@aws-cdk/aws-s3objectlambda-alpha is an experimental (alpha) package: its API may change in any release, without a major version bump.

AccessPointProps Struct ​

The S3 object lambda access point configuration.

Example ​

ts
import * as lambda from 'aws-cdk-lib/aws-lambda';
import * as s3 from 'aws-cdk-lib/aws-s3';
import * as s3objectlambda from '@aws-cdk/aws-s3objectlambda-alpha';
import * as cdk from 'aws-cdk-lib';

const stack = new cdk.Stack();
const bucket = new s3.Bucket(stack, 'MyBucket');
const handler = new lambda.Function(stack, 'MyFunction', {
	runtime: lambda.Runtime.NODEJS_LATEST,
	handler: 'index.handler',
	code: lambda.Code.fromAsset('lambda.zip'),
});
new s3objectlambda.AccessPoint(stack, 'MyObjectLambda', {
	bucket,
	handler,
	accessPointName: 'my-access-point',
	payload: {
		prop: "value",
	},
});
python
import aws_cdk.aws_lambda as lambda_
import aws_cdk.aws_s3 as s3
import aws_cdk.aws_s3objectlambda_alpha as s3objectlambda
import aws_cdk as cdk

stack = cdk.Stack()
bucket = s3.Bucket(stack, "MyBucket")
handler = lambda_.Function(stack, "MyFunction",
    runtime=lambda_.Runtime.NODEJS_LATEST,
    handler="index.handler",
    code=lambda_.Code.from_asset("lambda.zip")
)
s3objectlambda.AccessPoint(stack, "MyObjectLambda",
    bucket=bucket,
    handler=handler,
    access_point_name="my-access-point",
    payload={
        "prop": "value"
    }
)
java
import software.amazon.awscdk.services.lambda.*;
import software.amazon.awscdk.services.s3.*;
import software.amazon.awscdk.services.s3objectlambda.alpha.*;
import software.amazon.awscdk.*;

Stack stack = new Stack();
Bucket bucket = new Bucket(stack, "MyBucket");
Function handler = Function.Builder.create(stack, "MyFunction")
        .runtime(Runtime.NODEJS_LATEST)
        .handler("index.handler")
        .code(Code.fromAsset("lambda.zip"))
        .build();
AccessPoint.Builder.create(stack, "MyObjectLambda")
        .bucket(bucket)
        .handler(handler)
        .accessPointName("my-access-point")
        .payload(Map.of(
                "prop", "value"))
        .build();
csharp
// Install: dotnet add package Amazon.CDK.AWS.S3ObjectLambda.Alpha
using Amazon.CDK.AWS.Lambda;
using Amazon.CDK.AWS.S3;
using Amazon.CDK.AWS.S3ObjectLambda.Alpha;
using Amazon.CDK;

var stack = new Stack();
var bucket = new Bucket(stack, "MyBucket");
var handler = new Function(stack, "MyFunction", new FunctionProps {
    Runtime = Runtime.NODEJS_LATEST,
    Handler = "index.handler",
    Code = Code.FromAsset("lambda.zip")
});
new AccessPoint(stack, "MyObjectLambda", new AccessPointProps {
    Bucket = bucket,
    Handler = handler,
    AccessPointName = "my-access-point",
    Payload = new Dictionary<string, object> {
        { "prop", "value" }
    }
});
go
// Install: go get github.com/aws/aws-cdk-go/awscdks3objectlambdaalpha/v2
import "github.com/aws/aws-cdk-go/awscdk"
import s3 "github.com/aws/aws-cdk-go/awscdk"
import s3objectlambda "github.com/aws/aws-cdk-go/awscdks3objectlambdaalpha"
import cdk "github.com/aws/aws-cdk-go/awscdk"

stack := cdk.NewStack()
bucket := s3.NewBucket(stack, jsii.String("MyBucket"))
handler := lambda.NewFunction(stack, jsii.String("MyFunction"), &FunctionProps{
	Runtime: lambda.Runtime_NODEJS_LATEST(),
	Handler: jsii.String("index.handler"),
	Code: lambda.Code_FromAsset(jsii.String("lambda.zip")),
})
s3objectlambda.NewAccessPoint(stack, jsii.String("MyObjectLambda"), &AccessPointProps{
	Bucket: Bucket,
	Handler: Handler,
	AccessPointName: jsii.String("my-access-point"),
	Payload: map[string]interface{}{
		"prop": jsii.String("value"),
	},
})

Properties ​

accessPointNameoptionalstringaccess_point_nameoptionalstraccessPointNameoptionalStringAccessPointNameoptionalstringAccessPointNameoptional*string#
The name of the S3 object lambda access point.

Default: a unique name will be generated

bucketIBucketRefbucketIBucketRefbucketIBucketRefBucketIBucketRefBucketIBucketRefrequired#
The bucket to which this access point belongs.
cloudWatchMetricsEnabledoptionalbooleancloud_watch_metrics_enabledoptionalboolcloudWatchMetricsEnabledoptionalBooleanCloudWatchMetricsEnabledoptionalboolCloudWatchMetricsEnabledoptional*bool= false#
Whether CloudWatch metrics are enabled for the access point.
handlerIFunctionhandlerIFunctionhandlerIFunctionHandlerIFunctionHandlerIFunctionrequired#
The Lambda function used to transform objects.
payloadoptional{ [key: string]: any }payloadoptionaltyping.Mapping[str, Any]payloadoptionalMap<String, Object>PayloadoptionalIDictionary<string, object>Payloadoptional*map[string]interface{}#
Additional JSON that provides supplemental data passed to the Lambda function on every request.

Default: No data.

supportsGetObjectPartNumberoptionalbooleansupports_get_object_part_numberoptionalboolsupportsGetObjectPartNumberoptionalBooleanSupportsGetObjectPartNumberoptionalboolSupportsGetObjectPartNumberoptional*bool= false#
Whether the Lambda function can process `GetObject-PartNumber` requests.
supportsGetObjectRangeoptionalbooleansupports_get_object_rangeoptionalboolsupportsGetObjectRangeoptionalBooleanSupportsGetObjectRangeoptionalboolSupportsGetObjectRangeoptional*bool= false#
Whether the Lambda function can process `GetObject-Range` requests.