You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS IAM显式拒绝规则中是否可针对特定EBS卷设置例外?

关于IAM显式拒绝规则排除指定EBS卷资源的问题解答

结论

你设计的「在显式拒绝规则中通过多条件逻辑排除指定资源」的思路本身是成立的,但当前的代码写法存在问题,无法达到预期效果。

具体原因

  1. 条件键使用错误
    你当前使用的aws:ResourceTag/Name是用于校验已存在资源上绑定的标签的条件键,而ec2:CreateVolume是创建新资源的操作,资源尚未生成时该条件键对应的标签值不存在,该条件会直接判定为不满足,最终导致整条拒绝规则完全不生效,所有未加密的EBS卷都可以被创建。
  2. 正确的条件键选择
    如果需要校验创建EBS卷请求中携带的标签,应该使用aws:RequestTag/Name条件键,调整后的策略如下:
{
  "Sid": "DenyCreationOfUnencryptedEBSVOL",
  "Effect": "Deny",
  "Action": "ec2:CreateVolume",
  "Resource": "*",
  "Condition": {
    "Bool": {
      "ec2:Encrypted": "false"
    },
    "StringNotLike": {
      "aws:RequestTag/Name":"*Test_Unencrypted*"
    }
  }
}

额外注意事项

  • 上述规则仅在创建EBS卷时请求中携带了Name标签的场景下生效:如果用户创建未加密EBS卷时未携带任何Name标签,aws:RequestTag/Name不存在,会导致StringNotLike条件不满足,拒绝规则不会触发,未加密卷会被允许创建。
  • 如果需要避免上述漏洞,可以额外增加一条IAM策略,要求所有EBS卷创建时必须携带Name标签,避免绕开限制。
  • 该规则仅限制创建环节,如果你允许用户创建完未加密卷后再补充Test_Unencrypted标签,该规则无法拦截这类操作。

内容的提问来源于stack exchange,提问作者DeclanG

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 12:15:03