【问题标题】:What are permissions that my lambda function need to retrieve secrets from AWS Secrets Manager我的 lambda 函数需要哪些权限才能从 AWS Secrets Manager 检索密钥
【发布时间】:2021-05-24 10:42:06
【问题描述】:

我的 lambda 函数需要哪些权限才能从 AWS Secrets Manager 检索密钥并进行更改?

【问题讨论】:

    标签: aws-lambda aws-secrets-manager


    【解决方案1】:

    您需要secretsmanager:GetSecretValue 策略来检索机密,并需要secretsmanager:UpdateSecret 策略来更新机密。

    请注意,如果您使用客户管理的 AWS KMS 密钥进行加密,您还需要一些 KMS 权限:

    • kms:Decrypt 用于检索秘密。
    • kms:Decryptkms:GenerateDataKey 用于更新机密。

    https://docs.aws.amazon.com/cli/latest/reference/secretsmanager/get-secret-value.html

    https://docs.aws.amazon.com/cli/latest/reference/secretsmanager/update-secret.html

    【讨论】:

    • 是的;谢谢,我正在使用这些策略,但在可能的情况下我无法访问机密我使用特定的 VPC 的我删除了 VPC 我的 Lambda 函数可以正常工作,但我需要能够将它与特定的 VPC 一起使用,所以如果您对我在使用特定 VPC 时遇到的问题有任何想法,如果您与我分享,我将不胜感激
    • @learn.amzn21 所以您需要在特定 VPC 上运行 Lambda,对吗?您还可以分享 Lambda 日志中的错误吗?
    • { "errorMessage": "2021-05-21T08:54:56.954Z 103aa5dd-675b-4a61-876e-279c64fc1239 任务在 25.03 秒后超时" }
    • START RequestId: 103aa5dd-675b-4a61-876e-279c64fc1239 版本: $LATEST END RequestId: 103aa5dd-675b-4a61-876e-279c64fc1239 REPORT RequestId: 103aa5dd-6725b-4a61-129c-876e 25025.19 毫秒计费持续时间:25000 毫秒内存大小:128 MB 使用的最大内存:69 MB 初始化持续时间:220.53 毫秒 2021-05-21T08:54:56.954Z 103aa5dd-675b-4a61-876e-279c64fc1239 任务在 25.03 秒后超时跨度>
    • 我尝试更改超时我给了更多时间这不是问题也问题是我无法访问机密但是我在 Lambda 函数中运行相同的代码而没有指定它工作的 VPC正确。所以我不确定是否需要添加更多权限??
    【解决方案2】:

    如果您使用 AWS 提供的 Lambda 函数,那么(如 docs 中所述)您将需要:DescribeSecret、GetSecretValue、PutSecretValue、UpdateSecretVersionStage 和 GetRandomPassword。如果您使用的是自定义 KMS 密钥 (CMK),您还需要该 CMK 的 Decrypt 和 GenerateDataKey 权限(在 Lambda 策略和 KMS 密钥策略中)。

    如果您看到任务超时错误,可能是您的 Lambda 无法访问密钥管理器端点(尝试使用VPC endpoint)或Lambda can not connect to the DB(检查安全组设置)。

    【讨论】:

      猜你喜欢
      • 2021-06-25
      • 2021-10-29
      • 2020-10-26
      • 1970-01-01
      • 1970-01-01
      • 2023-03-18
      • 2019-02-15
      • 2021-10-22
      • 1970-01-01
      相关资源
      最近更新 更多