Hasty Briefsbeta

双语

AWS Secrets Manager Terraform: Least-Privilege Access

a day ago
  • 即使无法修改身份策略(例如在Academy Labs或跨账户设置中),你也可以通过将基于资源的策略附加到密钥上,实现对AWS Secrets Manager的最低权限访问。
  • 双层访问模型同时评估基于身份和基于资源的策略;限制性资源策略可以约束过于宽泛的身份策略。
  • 该实现使用Terraform创建密钥,并为实验室环境将恢复窗口设为零,动态解析LabRole ARN,并附加带有条件(如`VersionStage=AWSCURRENT`)的资源策略。
  • 阻止公共策略(`block_public_policy = true`)可通过自动推理检查防止意外公共访问。
  • 测试包括从具有LabInstanceProfile的EC2实例进行正向测试读取,以及请求AWSPREVIOUS的负向测试以验证策略条件。
  • 安全考虑包括使用`secret_string_wo`(Terraform >=1.11)实现只写属性、不单独依赖`sensitive = true`,以及遵循CIS控制措施进行加密和公共访问管理。
  • 该模式不仅限于Academy Labs,还适用于无法编辑身份策略的任何场景,例如跨账户角色或SCP锁定环境。