能否在IAM策略中用变量引用AWS账号ID以实现通用化自动化?
能否在IAM策略中使用账户ID变量来通用化ARN格式?
当然可以实现这个需求!不过你提到的${aws:accountnumber}不是正确的变量名,AWS IAM中对应的全局变量是${aws:account-id},用它就能完美替换ARN里硬编码的账户ID,实现策略的通用化。
这个变量会自动解析为当前策略所属AWS账户的ID,所以你想要的通用ARN格式应该写成:arn:aws:iam::${aws:account-id}:user/${aws:username}
给你举个完整的IAM策略示例,这样更直观:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iam:GetUser", "iam:ListAccessKeys" ], "Resource": "arn:aws:iam::${aws:account-id}:user/${aws:username}" } ] }
需要提醒的是,这类IAM全局变量有明确的使用范围,不过你这种在资源ARN中替换账户ID和用户名的场景是完全支持的,官方文档里也列出了所有可用的全局变量类型。
内容的提问来源于stack exchange,提问作者lft93ryt
相关产品推荐
相关产品推荐

