Pour suivre les bonnes pratiques, je souhaite limiter la capacité des utilisateurs à effectuer certaines actions et restreindre l'accès à des adresses IP spécifiques dans un bureau physique ou au niveau d'une connexion VPN. Toutefois, je veux également que ces utilisateurs puissent faire appel à la fonctionnalité de changement de rôles d'AWS Management Console.

La fonctionnalité de changement de rôles dans AWS Management Console. vous permet d'assumer des rôles pour votre compte et pour un accès entre des comptes. Comme la demande de changement de rôles est émise à partir de l'adresse IP d'AWS Management Console, qui ne fait pas partie des adresses IP autorisées, cette fonctionnalité est bloquée par les restrictions d'adresses IP sources définies dans la stratégie utilisateur.

Prenons l'exemple de la stratégie utilisateur ci-dessous, qui refuse explicitement que les adresses IP qui ne sont pas incluses dans la spécification SourceIp, aient accès aux actions et aux ressources :

{

    "Version":"2012-10-17",

    "Statement": [

         {

             "Effect": "Deny",

             "Action": "*",

             "Resource": "*",

             "Condition": {

                "NotIpAddress": {

                    "aws:SourceIp": [

                         "123.123.123.123/24"

                    ]

                }

            }

        }

    ]

}

Et l'exemple de la stratégie AssumeRole suivante, qui permet à un utilisateur d'assumer le rôle RoleA dans le compte 12345678901 :

{

  "Version":"2012-10-17",

  "Statement": {

    "Effect":"Allow",

    "Action": "sts:AssumeRole",

    "Resource": "arn:aws:iam::12345678901:role/RoleA"

   }

}

L'utilisateur ne peut pas assumer le rôle RoleA, car l'action AssumeRole viendrait d'une adresse IP externe à la plage SourceIp de la stratégie utilisateur.

Pour résoudre ce problème, vous pouvez inclure une instruction NotAction dans la première stratégie afin d'exclure l'action AssumeRole de la restriction SourceIp :

{
    "Version":"2012-10-17",
    "Statement": [
        {
            "Effect": "Deny",
            "NotAction": "sts:AssumeRole",
            "Resource": "*",
            "Condition": {
                "NotIpAddress": {
                     "aws:SourceIp": [
                         "123.123.123.123/24"
                     ]
                }
             }
         }
     ]
}

Cette modification permet à l'utilisateur d'accéder à la fonction de changement de rôles à partir de la console tout en conservant la restriction SourceIp pour toutes les autres actions.

AWS Identity and Access Management, AssumeRole, SwitchRole, stratégie, NotAction


Cette page vous a-t-elle été utile ? Oui | Non

Retour au Centre de connaissances AWS Support

Vous avez besoin d'aide ? Consultez le site du Centre AWS Support

Date de publication : 16/05/2016