【问题标题】:KMS Encryption - Local DevelopmentKMS 加密 - 本地开发
【发布时间】:2019-06-09 23:24:03
【问题描述】:

我创建了用于加密/解密的 AWS KMS 密钥。已将访问权限提供给可以加密/解密的特定对象。我通常将此角色附加到我的 lambda 以执行加密/解密。但是我在本地运行代码,它失败了,因为 KMS 密钥似乎不是授权操作的关联角色。有没有办法可以使用为本地开发生成的 KMS 密钥?

【问题讨论】:

  • KMS 是特定于区域的。访问 KMS 密钥时是否指定区域?此外,两个服务(KMS 和服务 (S3?) 必须位于同一区域。KMS 密钥不会跨区域共享。
  • 是的,我提供地区。但是 KMS 密钥被授予对 AWS 账户中特定角色的访问权限。但是,当我运行本地计算机时,我看不到附加该角色以使用 KMS 的方法。如果我将其部署为 AWS lambda 并将所需的角色附加到 lambda,则相同的代码可以正常工作。
  • 您要用于加密/解密的密钥的 KMS 密钥策略是什么?将此添加到您的问题中,以便您可以正确格式化策略。
  • 在 KMS 控制台中,您是否可以访问密钥?它位于Key policy -> Key users 下。

标签: java python amazon-web-services aws-kms


【解决方案1】:

我们建议您的开发堆栈与生产堆栈使用不同的 KMS CMK。

至于您为什么会被拒绝访问,John 是正确的;那是因为您在本地使用的用户/角色没有使用密钥的权限。

https://docs.aws.amazon.com/kms/latest/developerguide/control-access-overview.html

【讨论】:

    猜你喜欢
    • 2022-11-02
    • 1970-01-01
    • 2019-03-29
    • 2018-08-03
    • 2019-07-24
    • 1970-01-01
    • 2016-12-16
    • 2023-01-04
    • 1970-01-01
    相关资源
    最近更新 更多