簡體   English   中英

從 cloudformation 中的 SNS 主題觸發 lambda

[英]Trigger lambda from SNS Topic in cloudformation

我找不到讓這個 SNS 主題在這個 cloudformation 腳本中觸發我的 lambda 的方法,堆棧成功創建,lambda 被添加為 SNS 主題的訂閱者,但我不知道如何添加 SNS主題作為腳本中 lambda 的觸發器,當警報向主題發送事件時,lambda 根本不會被觸發

  Resources:
    TriggerTopic:
      Type: AWS::SNS::Topic
      Properties:
        TopicName: TRIGGER_TOPIC
        Subscription:
          - Protocol: lambda
            Endpoint: !GetAtt TriggerLambda.Arn
  
    TriggerLambda:
      Type: AWS::Lambda::Function
      Properties:
        Code:
          S3Bucket: !Ref LambdaS3Bucket
          S3Key: !Ref LambdaS3Key
        Handler: !Ref LambdaHandler
        Runtime: java8
        Description: Trigger lambda
        MemorySize: 512
        Timeout: 30
        Role: !GetAtt LambdaRole.Arn
  
    LambdaRole:
      Type: AWS::IAM::Role
      Properties:
        AssumeRolePolicyDocument:
          Version: 2012-10-17
          Statement:
            - Action:
                - sts:AssumeRole
              Effect: Allow
              Principal:
                Service:
                  - lambda.amazonaws.com
        ManagedPolicyArns:
          - 'arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole'
          - 'arn:aws:iam::aws:policy/service-role/AWSLambdaVPCAccessExecutionRole'
          - 'arn:aws:iam::aws:policy/AWSXrayWriteOnlyAccess'
          - 'arn:aws:iam::aws:policy/AWSLambdaReadOnlyAccess'
          - 'arn:aws:iam::aws:policy/AmazonEC2ReadOnlyAccess'

看看這個問題: Triggering a lambda from SNS using cloud-formation?

您需要允許 SNS 使用 AWS::Lambda::Permission 觸發 lambda

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM