【问题标题】:How to use Beanstalk with default EBS encrpytion enabled?如何在启用默认 EBS 加密的情况下使用 Beanstalk?
【发布时间】:2019-12-30 20:49:41
【问题描述】:

我最近启用了此处提到的默认 ebs 加密:https://aws.amazon.com/blogs/aws/new-opt-in-to-default-encryption-for-new-ebs-volumes/。之后,当尝试启动 beanstalk 实例时,我得到一个通用的“ClientError”并且该实例立即终止。如果我禁用默认加密,它可以正常工作。

有谁知道要让 beanstalk 使用客户管理的加密密钥需要进行哪些更改?我怀疑这是一个权限问题,所以我暂时为 beanstalk 角色提供了完全的管理员访问权限,但这并没有解决问题。我还有什么遗漏的吗?

我看到了这个related question,但它是在默认 EBS 加密发布之前,我希望避免手动复制和加密 AMI...

【问题讨论】:

  • 您使用的是默认加密密钥还是自定义 KMS 密钥?
  • 自定义 KMS 密钥

标签: amazon-web-services amazon-elastic-beanstalk


【解决方案1】:

如果您使用自定义 CMK,则必须更新密钥策略并明确分配权限。对于 EBS 加密,委托人通常需要以下权限:

  • kms:CreateGrant
  • kms:加密
  • kms:解密
  • kms:重新加密*
  • kms:GenerateDataKey*
  • kms:DescribeKey

解决关键权限问题的最佳方法是检查 Cloudtrail 事件历史记录。按事件源过滤事件,检查是否有“拒绝访问”错误。

过滤器:事件来源:kms.amazonaws.com

您可以在此处查看被拒绝的操作并相应地调整密钥策略。事件中的“用户名”字段会提示您确定要在策略中使用的委托人的 ARN。

在您的情况下,服务相关角色之一很可能需要访问 KMS 密钥的权限。对于自动缩放服务相关角色的关键权限here 有一个很好的解释。

【讨论】:

  • 谢谢。最终只需要在 KMS GUI 中的 EBS 加密密钥上添加“AutoScalingServiceRolePolicy”作为用户。有关 cloudtrail 故障排除的提示也有帮助。
猜你喜欢
  • 2020-11-28
  • 2019-02-13
  • 2017-12-05
  • 1970-01-01
  • 2020-09-10
  • 2014-05-28
  • 1970-01-01
  • 1970-01-01
  • 2014-08-21
相关资源
最近更新 更多