package awsapigateway import ( "github.com/aws/aws-cdk-go/awscdk/v2" "github.com/aws/aws-cdk-go/awscdk/v2/awsiam" "github.com/aws/aws-cdk-go/awscdk/v2/awslambda" ) // Base properties for all lambda authorizers. // // Example: // // The code below shows an example of how to instantiate this type. // // The values are placeholders you should change. // import cdk "github.com/aws/aws-cdk-go/awscdk" // import "github.com/aws/aws-cdk-go/awscdk" // import "github.com/aws/aws-cdk-go/awscdk" // import "github.com/aws/aws-cdk-go/awscdk" // // var function_ function // var role role // // lambdaAuthorizerProps := &LambdaAuthorizerProps{ // Handler: function_, // // // the properties below are optional // AssumeRole: role, // AuthorizerName: jsii.String("authorizerName"), // ResultsCacheTtl: cdk.Duration_Minutes(jsii.Number(30)), // } // type LambdaAuthorizerProps struct { // The handler for the authorizer lambda function. // // The handler must follow a very specific protocol on the input it receives // and the output it needs to produce. API Gateway has documented the // handler's [input specification](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-lambda-authorizer-input.html) // and [output specification](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-lambda-authorizer-output.html). Handler awslambda.IFunction `field:"required" json:"handler" yaml:"handler"` // An optional IAM role for APIGateway to assume before calling the Lambda-based authorizer. // // The IAM role must be // assumable by 'apigateway.amazonaws.com'. AssumeRole awsiam.IRole `field:"optional" json:"assumeRole" yaml:"assumeRole"` // An optional human friendly name for the authorizer. // // Note that, this is not the primary identifier of the authorizer. AuthorizerName *string `field:"optional" json:"authorizerName" yaml:"authorizerName"` // How long APIGateway should cache the results. // // Max 1 hour. // Disable caching by setting this to 0. ResultsCacheTtl awscdk.Duration `field:"optional" json:"resultsCacheTtl" yaml:"resultsCacheTtl"` }