Q41 — AWS SAP-C02 第1章

第 41/75 题 | ← 返回第1章

Q116. 一家公司使用 AWS Organizations 进行 AWS 云中的多账户设置。公司使用 AWS Control Tower 进行治理,使用 AWS Transit Gateway 进行跨账户的 VPC 连接。在一个 AWS 应用程序账户中,公司的应用程序团队部署了一个使用 AWS Lambda 和 Amazon RDS 的 Web 应用程序。公司的数据库管理员有一个独立的 DBA 账户,用于集中管理组织中的所有数据库。数据库管理员使用部署在 DBA 账户中的 Amazon EC2 实例来访问部署在应用程序账户中的 RDS 数据库。应用程序团队已将数据库凭证作为密钥存储在应用程序账户的 AWS Secrets Manager 中。应用程序团队正在手动与数据库管理员共享密钥。密钥由应用程序账户中 Secrets Manager 的默认 AWS 托管密钥加密。解决方案架构师需要实施一个解决方案,为数据库管理员提供数据库访问权限并消除手动共享密钥的需要。哪个解决方案将满足这些要求?

正确答案: B. 在应用程序账户中,创建名为 DBA-Secret 的 IAM 角色。授予该角色访问密钥的必要权限。在 DBA 账户中,创建名为 DBA-Admin 的 IAM 角色。授予 DBA-Admin 角色代入应用程序账户中 DBA-Secret 角色的必要权限。将 DBA-Admin 角色附加到 EC2 实例以访问跨账户密钥。

解析

为实现跨账户密钥访问,推荐的解决方案是: B. 在应用程序账户中,创建名为 DBA-Secret 的 IAM 角色。授予该角色访问密钥的必要权限。在 DBA 账户中,创建名为 DBA-Admin 的 IAM 角色。授予 DBA-Admin 角色代入应用程序账户中 DBA-Secret 角色的必要权限。将 DBA-Admin 角色附加到 EC2 实例以访问跨账户密钥。 说明: 由于密钥使用默认 AWS 托管密钥加密,无法修改 AWS 托管密钥的策略来授予跨账户访问。因此需要使用跨账户角色代入模式:在应用程序账户中创建具有密钥访问权限的角色,然后从 DBA 账户代入该角色。 选项 A 不正确,Secrets Manager 密钥不能通过 RAM 共享。 选项 C 不正确,AWS 托管密钥的策略不能修改。 选项 D 不正确,SCP 不能授予权限,只能限制权限。