AWS: условное выражение политики игнорируется

Итак, я пытаюсь запустить политику, но она никогда не вызывается при установке условного значения как true, так и false, скорее всего, чего-то не хватает, но когда я опускаю условное выражение все вместе, я получаю желаемое применение политики.

Вариант 1. Условное утверждение false

    {
            "Condition": {
                "Bool": {
                    "aws:MultiFactorAuthPresent": "true"
                }
            },
            "Resource": "*",
            "Effect": "Deny",
            "NotAction": [
                "iam:CreateVirtualMFADevice",
                "iam:DeleteVirtualMFADevice",
                "iam:ListVirtualMFADevices",
                "iam:EnableMFADevice",
                "iam:ResyncMFADevice",
                "iam:ListAccountAliases",
                "iam:ListUsers",
                "iam:ListSSHPublicKeys",
                "iam:ListAccessKeys",
                "iam:ListServiceSpecificCredentials",
                "iam:ListMFADevices",
                "iam:GetAccountSummary",
                "sts:GetSessionToken"
            ]
        }

Вариант 1. Условное утверждение false

    {
            "Condition": {
                "Bool": {
                    "aws:MultiFactorAuthPresent": "false"
                }
            },
            "Resource": "*",
            "Effect": "Deny",
            "NotAction": [
                "iam:CreateVirtualMFADevice",
                "iam:DeleteVirtualMFADevice",
                "iam:ListVirtualMFADevices",
                "iam:EnableMFADevice",
                "iam:ResyncMFADevice",
                "iam:ListAccountAliases",
                "iam:ListUsers",
                "iam:ListSSHPublicKeys",
                "iam:ListAccessKeys",
                "iam:ListServiceSpecificCredentials",
                "iam:ListMFADevices",
                "iam:GetAccountSummary",
                "sts:GetSessionToken"
            ]
        }

1 ответ

Ключ aws:MultiFactorAuthPresent отсутствует, когда команда API или CLI вызывается с долгосрочными учетными данными, такими как пары ключей доступа пользователя. Поэтому мы рекомендуем при проверке этого ключа использовать...IfExists версии операторов условия.

Другие вопросы по тегам