amazon-web-services - 无法使用 CloudFormation 在 Lambda 函数上创建 SNS 事件源

标签 amazon-web-services amazon-sns aws-lambda aws-cloudformation

这是与我的问题相关的Cloudformation模板代码:

"SNSTopic": {
  "Type": "AWS::SNS::Topic",
  "Properties": {
    "TopicName": "JumpboxPresenceTopic",
    "DisplayName": "Jumpbox Presence Topic",
    "Subscription": [
      {
        "Endpoint": {
          "Fn::GetAtt": [
            "Lambda",
            "Arn"
          ]
        },
        "Protocol": "lambda"
      }
    ]
  }
},
"Lambda": {
  "Type": "AWS::Lambda::Function",
  "Properties": [...]

我可以在 SNS 仪表板中看到该主题: enter image description here

但它不会显示在 lambda 函数事件源面板中: enter image description here

奇怪的是,如果我从 SNS 仪表板为同一个 lambda 函数创建新订阅,则不会创建新订阅,因为它将是完全相同的重复。但是,现在如果我检查 Lambda 仪表板中的事件源面板,我可以看到 SNS: JumpboxPresenceTopic 的新条目: enter image description here

我觉得这是亚马逊方面的问题,但我可能是错的。我的方法有问题还是 AWS 的限制?

最佳答案

您必须先授予 SNS 权限才能调用 Lambda。 这是来自 AWS 的示例。请将其从 S3 更改为 SNS,并且不要忘记将 SourceArn 设置为 SNS 主题 ARN。

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-permission.html

关于amazon-web-services - 无法使用 CloudFormation 在 Lambda 函数上创建 SNS 事件源,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32465505/

相关文章:

amazon-web-services - AWS SES Configset - 无法使用 AWS 云形成堆栈创建 SNS 事件目标

aws-lambda - 警报通知中可用的 AWS Cloudwatch 日志过滤参数

php - 亚马逊 EC2, Elastic Beanstalk : My images disappear

linux - 在aws中部署nodejs和mongoose应用程序

amazon-web-services - boto3 copy vs copy_object 关于 s3 中的文件权限 ACL

mysql - Amazon EC2 实例每天变慢

amazon-web-services - 如何设置来自孟买地区的 AWS SNS SMS 通知?

node.js - Sam 构建失败,代码为 : Build Failed Error: NodejsNpmBuilder:NpmPack - NPM Failed: npm ERR! Z_DATA_ERROR

node.js - NodeJS 中的 AWS RDS SSL 连接错误

amazon-web-services - 如何使用自动缩放服务自动缩放 AWS lambda