在CloudFormation中,您可以使用AWS::Serverless::Function资源来定义一个SES发送邮件的Lambda函数,并在该函数中添加策略来允许发送电子邮件。
以下是一个示例CloudFormation模板,演示如何定义一个SES发送邮件的Lambda函数并添加策略:
AWSTemplateFormatVersion: "2010-09-09"
Resources:
MyLambdaFunction:
Type: AWS::Serverless::Function
Properties:
CodeUri: ./
Handler: index.handler
Runtime: nodejs14.x
Policies:
- AmazonSESFullAccess
Environment:
Variables:
FROM_EMAIL: example@example.com
MyLambdaPermission:
Type: AWS::Lambda::Permission
Properties:
FunctionName: !GetAtt MyLambdaFunction.Arn
Action: lambda:InvokeFunction
Principal: ses.amazonaws.com
SourceArn: arn:aws:ses:us-east-1:123456789012:identity/example.com
在上面的示例中:
arn:aws:ses:us-east-1:123456789012:identity/example.com替换为您的发件人地址的ARN。请注意,上述模板中的示例代码假设您的Lambda函数使用Node.js 14.x运行时,并将函数代码放在与模板文件相同的目录中(CodeUri: ./)。
通过使用上述CloudFormation模板,您可以在创建堆栈时定义SES发送邮件策略的Lambda函数。
上一篇:AWS::Serverless::Api类型的资源未定义PropertyStageName。
下一篇:AWS::Serverless::Function 是用于 Lambda@Edge 事件处理程序的 Lambda 版本。