在 Amazon EKS 上运行的应用程序需要存储在 Secrets Manager 中的机密凭证。这些机密使用客户管理的 KMS 密钥进行加密。一个用于第三方工具的 Kubernetes 服务账户通过承担一个为访问 Secrets Manager 而创建的 IAM 角色,向应用程序提供机密。该服务账户在尝试检索机密时收到 403 Forbidden 错误。根本原因是什么?
选择一个答案
点击一个选项来检查您的答案。
正确答案: KMS 客户管理密钥的密钥策略不允许 Kubernetes 服务账户承担的 IAM 角色使用该密钥。.
为什么这是答案
正确答案是:KMS 客户管理密钥的密钥策略不允许 Kubernetes 服务账户承担的 IAM 角色使用该密钥。 当应用程序尝试检索使用客户管理 KMS 密钥加密的 Secrets Manager 机密时,KMS 密钥策略必须明确授权调用者(在本例中是 Kubernetes 服务账户所承担的 IAM 角色)执行解密操作。如果密钥策略中缺少此权限,即使 IAM 角色本身具有访问 Secrets Manager 的权限,KMS 也会拒绝请求并返回 403 Forbidden 错误。 其他选项错误的原因: 附加到 EKS 集群的 IAM 角色缺少从 Secrets Manager 检索机密的权限:虽然 EKS 集群角色需要适当的权限,但直接访问 Secrets Manager 的是服务账户承担的 IAM 角色。 KMS 客户管理密钥的密钥策略不允许 EKS 集群 IAM 角色使用该密钥:直接访问机密的是服务账户承担的 IAM 角色,而不是 EKS 集群的 IAM 角色。 Kubernetes 服务账户承担的 IAM 角色没有访问 EKS 集群的权限:服务账户已经成功承担了 IAM 角色,问题在于访问加密机密,而不是 EKS 集群本身。
通过考试 — 无需无休止地寻找答案
将本次考试的所有验证问题和解释集中在一处,节省数小时的准备时间。1,000+ 认证 · 20+ 语言 · 免费开始。
更快通过考试 → 无需银行卡