【问题标题】:adding aliased lambda function in cognito pool trigger drop down selection在 cognito 池触发器下拉选择中添加别名 lambda 函数
【发布时间】:2018-04-11 12:16:01
【问题描述】:

我创建了一个 lambda 函数,发布了它的一个版本并将该版本指向一个别名。 我的 lambda 函数的 ARN: “ARN - arn:aws:lambda:aws_region:aws_id:function:function_name:production”

所以在认知池触发器中,我需要将此 lambda 函数分配到“自定义消息”部分,但它是一个下拉列表,用于填充没有任何别名的 lambda 函数。

问题是,如何将 lambda 函数的别名版本从下拉列表分配到认知池触发器中。

【问题讨论】:

    标签: amazon-web-services aws-lambda aws-sdk amazon-cognito


    【解决方案1】:

    扩展@alexis-n-o 答案,您很可能需要授予 cognito 权限才能调用别名 lambda 函数。控制台会自动为您执行此操作。

    创建或更新池

    create-user-pool
        --pool-name my-pool
        --lambda-config CustomMessage=arn:aws:lambda:aws_region:aws_id:function:function_name:production
    
    
    update-user-pool
        --user-pool-id <pool-id>
        --lambda-config CustomMessage=arn:aws:lambda:aws_region:aws_id:function:function_name:production
    

    分配 cognito 权限以调用 lambda:

    aws lambda add-permission 
    --function-name arn:aws:lambda:<lambda-region>:<account>:function:<lambda-name>:<alias-name> 
    --source-arn <user-pool-arn> 
    --action lambda:* 
    --statement-id <your-statement-id-here> 
    --principal cognito-idp.amazonaws.com
    

    【讨论】:

    • --action lambda:InvokeFunction 应该足够了。这就是 Cognito 控制台自动设置的内容。
    【解决方案2】:

    您可以使用 AWS cli 创建池并设置别名 Lambda 的 ARN。

    create-user-pool
        --pool-name my-pool
        --lambda-config CustomMessage=arn:aws:lambda:aws_region:aws_id:function:function_name:production
    

    如果池已创建:

    update-user-pool
        --user-pool-id <pool-id>
        --lambda-config CustomMessage=arn:aws:lambda:aws_region:aws_id:function:function_name:production
    

    【讨论】:

      猜你喜欢
      • 2022-01-18
      • 2021-05-20
      • 2023-03-29
      • 2021-11-05
      • 2019-05-15
      • 2020-09-01
      • 2022-10-21
      • 2016-09-22
      • 1970-01-01
      相关资源
      最近更新 更多