小编Thl*_*ats的帖子

使用 AWS 空条件来防止空标签或丢失标签?

我的政策文件的目标:

  1. 如果没有正确的标签,则阻止资源创建
  2. 要求为特定标签提供某些值(例如 env 标签必须是 dev 或 stg 或 prd 等)

2 号按预期工作;但是,如果用户创建一个标签为空的 EC2 实例或只是忘记添加它,该策略仍然允许用户创建该实例。

我尝试了 null 运算符(在此处引用),但它似乎不起作用。

另一种尝试是使用匹配 aws:tag-keys 值的条件(在此处引用),但它似乎仅在使用 StringLike 比较运算符检查单个值时才有效

这是 Lambda 函数关闭开发实例的先决条件。


 {
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "RequireEnvTags",
            "Effect": "Deny",
            "Action": [
                "ec2:RunInstances"
            ],
            "Condition": {
                "ForAnyValue:StringNotEquals": {
                    "ec2:ResourceTag/env": [
                        "dev",
                        "stg",
                        "prd",
                        "dev-noshutdown"
                    ]
                }
            },
            "Resource": [
                "*"
            ]
        },
        {
            "Sid": "RequireDataSensitivity1",
            "Effect": "Deny",
            "Action": [
                "ec2:RunInstances"
            ],
            "Condition": {
                "ForAnyValue:StringNotEquals": {
                    "ec2:ResourceTag/data-sensitivity": [
                        "public", …
Run Code Online (Sandbox Code Playgroud)

null policy key amazon-ec2 amazon-iam

4
推荐指数
1
解决办法
3339
查看次数

标签 统计

amazon-ec2 ×1

amazon-iam ×1

key ×1

null ×1

policy ×1