AWS Enforce MFA 策略 AllowIndividualUserToDeactivateOnlyTheirOwnMFAOnlyWhenUsingMFA 是强制性的吗?

Is AWS Enforce MFA policy AllowIndividualUserToDeactivateOnlyTheirOwnMFAOnlyWhenUsingMFA mandatory?

我正在为一个测试帐户设置 MFA,并在此过程中学到了一些东西。通过 AWS Documentation for the default Policy JSON,除了 SID 之外,它是完全不言自明的:AllowIndividualUserToDeactivateOnlyTheirOwnMFAOnlyWhenUsingMFA

1) 我想弄清楚在哪些情况下需要此政策?

2) 将此保留在强制 MFA 政策中是强制性的还是最佳做法?我想强制执行 MFA 一次并确保用户不能停用它(只有管理员应该)。我的想法有什么缺点吗?

感谢您的帮助!

您提到的政策允许用户停用他们自己的 MFA 设备。他们只有在获得 MFA 授权的情况下才能这样做。

    {
        "Sid": "AllowIndividualUserToDeactivateOnlyTheirOwnMFAOnlyWhenUsingMFA",
        "Effect": "Allow",
        "Action": [
            "iam:DeactivateMFADevice"
        ],
        "Resource": [
            "arn:aws:iam::*:mfa/${aws:username}",
            "arn:aws:iam::*:user/${aws:username}"
        ],
        "Condition": {
            "Bool": {
                "aws:MultiFactorAuthPresent": "true"
            }
        }
    }

如果您希望每个用户决定他们是否使用 MFA,是的,此策略是最佳做法。这不是强制性的。

但是既然你想强制执行,你不应该让普通用户有权限iam:DeactivateMFADevice。只有管​​理员应该拥有它。

要执行 MFA,重要的部分是条件:

        "Condition": {
            "Bool": {
                "aws:MultiFactorAuthPresent": "true"
            }
        }