AWS: permet aux utilisateurs IAM authentifiés MFA de gérer leur propre appareil MFA sur la page des informations d'identification de sécurité - AWS Identity and Access Management

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

AWS: permet aux utilisateurs IAM authentifiés MFA de gérer leur propre appareil MFA sur la page des informations d'identification de sécurité

Cet exemple montre comment créer une politique basée sur l'identité qui permet aux utilisateurs IAM authentifiés par le biais de l'authentification multifactorielle (MFA) de gérer leur propre appareil MFA sur la page Informations d'identification de sécurité. Cette AWS Management Console page affiche les informations relatives au compte et à l'utilisateur, mais l'utilisateur ne peut consulter et modifier que son propre dispositif MFA. Pour autoriser les utilisateurs à gérer toutes leurs propres informations d'identification avec l'authentification MFA, consultez AWS: permet aux utilisateurs IAM authentifiés par MFA de gérer leurs propres informations d'identification sur la page Informations d'identification de sécurité.

Note

Si un utilisateur IAM doté de cette politique n'est pas authentifié par MFA, cette politique refuse l'accès à toutes les AWS actions, à l'exception de celles nécessaires pour s'authentifier à l'aide de l'authentification MFA. Pour utiliser l' AWS API AWS CLI et, les utilisateurs IAM doivent d'abord récupérer leur jeton MFA à l'aide de AWS STS GetSessionTokenl'opération, puis utiliser ce jeton pour authentifier l'opération souhaitée. D'autres politiques, telles que les politiques basées sur les ressources ou d'autres politiques basées sur l'identité peuvent autoriser des actions dans d'autres services. Cette politique refusera cet accès si l'utilisateur IAM n'est pas authentifié avec MFA.

Pour savoir comment les utilisateurs peuvent accéder à la page des informations d'identification de sécurité, voirComment les utilisateurs IAM modifient leur mot de passe (console).

À quoi sert cette politique ?

  • L'instruction AllowViewAccountInfo permet à l'utilisateur d'afficher les détails relatifs à un dispositif MFA virtuel, qui est activé pour l'utilisateur. Cette autorisation doit se trouver dans sa propre instruction, car elle ne prend pas en charge la spécification d'un ARN de ressource. À la place, vous devez spécifier "Resource" : "*".

  • L'instruction AllowManageOwnVirtualMFADevice permet à l'utilisateur de créer son propre dispositif MFA. L'ARN de ressource dans l'instruction autorise uniquement l'utilisateur à créer un dispositif MFA de n'importe quel nom, mais les autres instructions de la politique autorisent uniquement l'utilisateur à connecter le dispositif à l'utilisateur actuellement connecté.

  • L'instruction AllowManageOwnUserMFA permet à l'utilisateur de consulter et gérer son propre dispositif MFA matériel, U2F ou virtuel. L'ARN de ressource dans l'instruction autorise uniquement l'accès au propre utilisateur IAM de l'utilisateur. Les utilisateurs ne peuvent pas afficher ni gérer le dispositif MFA pour d'autres utilisateurs.

  • La DenyAllExceptListedIfNoMFA déclaration refuse l'accès à toutes les actions dans tous les AWS services, à l'exception de quelques actions répertoriées, mais uniquement si l'utilisateur n'est pas connecté avec le MFA. L'instruction utilise une combinaison de "Deny" et "NotAction" pour refuser explicitement l'accès à toutes les actions non répertoriées. Les éléments répertoriés ne sont pas refusés ou autorisés par cette instruction. Toutefois, les actions sont autorisées par d'autres instructions de la politique. Pour plus d'informations sur la logique de cette instruction, consultez la section NotAction avec Deny. Si l'utilisateur est connecté avec MFA, le test Condition échoue et cette instruction ne refuse aucune action. Dans ce cas, les autorisations de l'utilisateur sont définies par d'autres stratégies ou instructions.

    Cette instruction garantit à l'utilisateur de pouvoir effectuer uniquement les actions répertoriées lorsqu'il n'est pas connecté avec MFA. Par ailleurs, il peut effectuer les actions répertoriées uniquement si une autre instruction ou politique permet l'accès à ces actions.

    La version ...IfExists de l'opérateur Bool permet de s'assurer que si la clé aws:MultiFactorAuthPresent est manquante, la condition renvoie la valeur true. Cela signifie qu'un utilisateur qui accède à une opération d'API avec des informations d'identification à long terme, comme une clé d'accès, se voit refuser l'accès aux opérations d'API non IAM.

Cette politique ne permet pas aux utilisateurs d'afficher la page Users (Utilisateurs) dans la console IAM, ou d'utiliser cette page pour accéder à leurs propres informations utilisateur. Pour que cela soit possible, ajoutez l'action iam:ListUsers à l'instruction AllowViewAccountInfo et à l'instruction DenyAllExceptListedIfNoMFA.

Avertissement

N'ajoutez pas d'autorisations pour supprimer un dispositif MFA sans authentification MFA. Les utilisateurs dotés de cette politique peuvent tenter de s'attribuer un dispositif MFA virtuel et recevoir une erreur indiquant qu'ils ne sont pas autorisés à effectuer iam:DeleteVirtualMFADevice. Si cela se produit, n'ajoutez pas cette autorisation à l'instruction DenyAllExceptListedIfNoMFA. Les utilisateurs qui ne sont pas authentifiés avec MFA ne doivent jamais être autorisés à supprimer un dispositif MFA. Les utilisateurs peuvent consulter cette erreur s'ils ont précédemment commencé à affecter un dispositif MFA virtuel à leur utilisateur et annulé le processus. Pour résoudre ce problème, vous ou un autre administrateur devez supprimer le dispositif MFA virtuel existant de l'utilisateur à l'aide de l'API AWS CLI or AWS . Pour plus d'informations, voir Je ne suis pas autorisé à effectuer : iam : MFAdevice DeleteVirtual.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowViewAccountInfo", "Effect": "Allow", "Action": "iam:ListVirtualMFADevices", "Resource": "*" }, { "Sid": "AllowManageOwnVirtualMFADevice", "Effect": "Allow", "Action": [ "iam:CreateVirtualMFADevice" ], "Resource": "arn:aws:iam::*:mfa/*" }, { "Sid": "AllowManageOwnUserMFA", "Effect": "Allow", "Action": [ "iam:DeactivateMFADevice", "iam:EnableMFADevice", "iam:GetUser", "iam:GetMFADevice", "iam:ListMFADevices", "iam:ResyncMFADevice" ], "Resource": "arn:aws:iam::*:user/${aws:username}" }, { "Sid": "DenyAllExceptListedIfNoMFA", "Effect": "Deny", "NotAction": [ "iam:CreateVirtualMFADevice", "iam:EnableMFADevice", "iam:GetUser", "iam:ListMFADevices", "iam:ListVirtualMFADevices", "iam:ResyncMFADevice", "sts:GetSessionToken" ], "Resource": "*", "Condition": { "BoolIfExists": {"aws:MultiFactorAuthPresent": "false"} } } ] }