Comment créer une politique IAM pour contrôler l'accès aux ressources Amazon EC2 à l'aide d’identifications ?

Date de la dernière mise à jour : 27/09/2021

Comment créer une politique AWS Identity and Access Management (IAM) pour contrôler l'accès aux instances Amazon Elastic Compute Cloud (Amazon EC2) à l'aide d’identifications ?

Brève description

Vous pouvez contrôler l'accès aux petits déploiements d'instances Amazon EC2 comme suit :

  1. Ajoutez une balise spécifique aux instances auxquelles vous souhaitez donner accès aux utilisateurs ou aux groupes.
  2. Créez une stratégie IAM qui donne accès à toutes les instances disposant de la balise spécifiée.
  3. Attachez la stratégie IAM aux utilisateurs ou aux groupes auxquels vous souhaitez donner l'accès aux instances.

Solution

Ajouter une balise au groupe d'instances EC2

Ouvrez la console Amazon EC2, puis ajoutez des balises au groupe d'instances EC2 auxquelles les utilisateurs ou groupes doivent accéder. Si vous ne disposez pas déjà d’une balise, créez-en une.

Remarque : veillez à lire et comprendre les restrictions liées aux balises avant de baliser les ressources. Les balises Amazon EC2 sont sensibles à la casse.

Créer une stratégie IAM qui octroie l'accès aux instances avec la balise spécifique

Créez une stratégie IAM qui effectue les opérations suivantes :

  • Autorise le contrôle sur les instances disposant de la balise.
  • Contient une instruction conditionnelle qui permet d'accéder à des ressources Amazon EC2 si la valeur de la clé de condition ec2:ResourceTag/UserName correspond à la variable de stratégie aws:username. La variable de stratégie ${aws:username} est remplacée par le nom convivial de l’IAM actuelle lorsque la stratégie est évaluée par IAM.
  • Autorise l'accès aux actions ec2:Describe* pour les ressources Amazon EC2.
  • Refuse explicitement l'accès aux actions ec2:CreateTags et ec2:DeleteTags pour empêcher les utilisateurs de créer ou de supprimer des balises.
    Remarque : cela empêche l'utilisateur de prendre le contrôle d'une instance EC2 en y ajoutant la balise spécifique.

La stratégie finie se présente comme suit :

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "ec2:*",
      "Resource": "*",
      "Condition": {
        "StringEquals": {
          "ec2:ResourceTag/UserName": "${aws:username}"
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": "ec2:Describe*",
      "Resource": "*"
    },
    {
      "Effect": "Deny",
      "Action": [
        "ec2:CreateTags",
        "ec2:DeleteTags"
      ],
      "Resource": "*"
    }
  ]
}

Remarque : cette stratégie s'applique aux instances Amazon EC2 qui utilisent la clé de condition ec2:ResourceTag. Pour restreindre le lancement de nouvelles instances Amazon EC2 à l'aide de balises, consultez Comment utiliser les balises de stratégie IAM pour limiter le mode de création d'une instance EC2 ou d'un volume EBS ?

Associer la stratégie IAM aux utilisateurs ou groupes qui doivent accéder aux instances

Enfin, associez la stratégie IAM que vous avez créée aux utilisateurs ou groupes qui doivent accéder aux instances. Vous pouvez associer la stratégie IAM en utilisant AWS Management Console, l'interface de ligne de commande (CLI) AWS ou l’API AWS.


Cet article vous a-t-il été utile ?


Besoin d'aide pour une question technique ou de facturation ?