Указанная вами политика позволяет пользователям деактивировать свое собственное устройство 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"
}
}