Lambda Functions
Functions
Resource Type definition for AWS::Lambda::Alias
Resource Type definition for AWS::Lambda::CodeSigningConfig.
The AWS::Lambda::EventInvokeConfig resource configures options for asynchronous invocation on a version or an alias.
The `AWS::Lambda::EventSourceMapping`
resource creates a mapping between an event source and an LAMlong function. LAM reads items from the event source and triggers the function. For details about each event source type, see the following topics. In particular, each of the topics describes the required and optional parameters for the specific event source.
The `AWS::Lambda::Function`
resource creates a Lambda function. To create a function, you need a deployment package and an execution role. The deployment package is a .zip file archive or container image that contains your function code. The execution role grants the function permission to use AWS services, such as Amazon CloudWatch Logs for log streaming and AWS X-Ray for request tracing. You set the package type to `Image`
if the deployment package is a container image. For these functions, include the URI of the container image in the ECR registry in the ImageUri property of the Code property. You do not need to specify the handler and runtime properties. You set the package type to `Zip`
if the deployment package is a .zip file archive. For these functions, specify the S3 location of your .zip file in the `Code`
property. Alternatively, for Node.js and Python functions, you can define your function inline in the ZipFile property of the Code property. In both cases, you must also specify the handler and runtime properties. You can use code signing if your deployment package is a .zip file archive. To enable code signing for this function, specify the ARN of a code-signing configuration. When a user attempts to deploy a code package with `UpdateFunctionCode`
, Lambda checks that the code package has a valid signature from a trusted publisher. The code-signing configuration includes a set of signing profiles, which define the trusted publishers for this function. When you update a `AWS::Lambda::Function`
resource, CFNshort calls the UpdateFunctionConfiguration and UpdateFunctionCodeLAM APIs under the hood. Because these calls happen sequentially, and invocations can happen between these calls, your function may encounter errors in the time between the calls. For example, if you remove an environment variable, and the code that references that environment variable in the same CFNshort update, you may see invocation errors related to a missing environment variable. To work around this, you can invoke your function against a version or alias by default, rather than the `$LATEST`
version. Note that you configure provisioned concurrency on a `AWS::Lambda::Version`
or a `AWS::Lambda::Alias`
. For a complete introduction to Lambda functions, see What is Lambda? in the Lambda developer guide.
Resource Type definition for AWS::Lambda::LayerVersion
Schema for Lambda LayerVersionPermission
The `AWS::Lambda::Permission`
resource grants an AWS service or another account permission to use a function. You can apply the policy at the function level, or specify a qualifier to restrict access to a single version or alias. If you use a qualifier, the invoker must use the full Amazon Resource Name (ARN) of that version or alias to invoke the function. To grant permission to another account, specify the account ID as the `Principal`
. To grant permission to an organization defined in AOlong, specify the organization ID as the `PrincipalOrgID`
. For AWS services, the principal is a domain-style identifier defined by the service, like `s3.amazonaws.com`
or `sns.amazonaws.com`
. For AWS services, you can also specify the ARN of the associated resource as the `SourceArn`
. If you grant permission to a service principal without specifying the source, other accounts could potentially configure resources in their account to invoke your Lambda function. If your function has a function URL, you can specify the `FunctionUrlAuthType`
parameter. This adds a condition to your permission that only applies when your function URL's `AuthType`
matches the specified `FunctionUrlAuthType`
. For more information about the `AuthType`
parameter, see Security and auth model for function URLs. This resource adds a statement to a resource-based permission policy for the function. For more information about function policies, see Lambda Function Policies.
Resource Type definition for AWS::Lambda::Url
Resource Type definition for AWS::Lambda::Version