Comment accéder aux ressources d'un autre compte AWS à l'aide d'AWS IAM ?

Lecture de 4 minute(s)
0

Je souhaite assumer un rôle Identity AWS and Access Management (IAM) dans un autre compte AWS. Comment faut-il configurer l'accès entre comptes à l'aide d'IAM ?

Brève description

Vous pouvez configurer une relation d'approbation avec un rôle IAM dans un autre compte AWS pour accéder à leurs ressources. Par exemple, vous souhaitez accéder au compte de destination à partir du compte source. Vous pouvez assumer le rôle IAM du compte source au compte de destination en fournissant votre autorisation d'utilisateur IAM pour l'API AssumeRole. Vous devez spécifier votre utilisateur IAM dans la relation d'approbation du rôle IAM de destination.

Remarque : vous pouvez également assumer un rôle allant du rôle IAM source au rôle IAM de destination plutôt que de vous servir de l'utilisateur pour jouer avec le chaînage des rôles. Le chaînage de rôles fonctionne uniquement pour les accès programmatiques tels que l'interface de ligne de commande AWS (AWS CLI) ou l'API. Le changement de rôle ne peut pas être utilisé avec l'AWS Management Console.

Solution

Suivez ces instructions pour créer une politique d'autorisation IAM pour le compte source, attacher la politique à un utilisateur et créer un rôle pour le compte de destination.

Remarque : si vous recevez des erreurs lors de l'exécution des commandes AWS CLI, vérifiez que vous utilisez la version AWS CLI la plus récente.

Compte source

1.    Créez une politique IAM similaire à celle-ci :

Remarque : remplacez DESTINATION-ACCOUNT-ID et DESTINATION-ROLENAME par vos propres valeurs.

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "sts:AssumeRole"
      ],
      "Resource": [
        "arn:aws:iam::DESTINATION-ACCOUNT-ID:role/DESTINATION-ROLENAME"
      ]
    }
  ]
}

2.    Attachez la politique IAM à vos autorisations utilisateur IAM.

Attachez la politique créée à vos autorisations utilisateur IAM en suivant les étapes décrites ici.

Compte de destination

1.    Créez un rôle IAM.

2.    Collez la politique d'approbation personnalisée similaire à la suivante :

Remarque : remplacez SOURCE-ACCOUNT-ID et SOURCE-USERNAME par vos propres valeurs.

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": "arn:aws:iam::SOURCE-ACCOUNT-ID:user/SOURCE-USERNAME"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}

Remarque : si vous ne disposez pas de l'accès requis pour créer et modifier des utilisateurs et des rôles IAM, demandez l'aide du compte propriétaire en vue de terminer le processus. Il est recommandé d'accorder l'accès à votre compte et à vos ressources uniquement aux entités auxquelles vous faites confiance.

Vous pouvez modifier cette politique pour permettre d'endosser autant d'entités source à autant de rôles de destination que nécessaire. Par exemple, vous pouvez modifier la valeur Principal (Mandataire) de la politique d'approbation du compte de destination en "AWS": "SOURCE-ACCOUNT-ID". Cela permet à toutes les entités du compte source disposant des autorisations de rôle d'assumer le rôle d'assumer le rôle de compte de destination. Pour plus d'informations, consultez les sections Spécifier un mandataire et Créer ou modifier la politique.

Tester votre accès

Pour tester votre accès, suivez les instructions relatives au Changement de rôle (console).

-ou-

Suivez les instructions relatives au Passage vers un rôle IAM (AWS CLI).

Pour plus d'informations, consultez la section Tutoriel IAM : déléguer l'accès entre les comptes AWS à l'aide de rôles IAM.


Informations connexes

Comment assumer un rôle IAM à l'aide de l'interface de ligne de commande AWS ?

Je souhaite créer ou mettre à jour une politique IAM et j'ai reçu l'erreur « A interdit le champ Principal ». Comme éliminer cette erreur ?

Comment fournir un accès entre comptes à des objets stockés dans des compartiments Amazon S3 ?

Pourquoi je reçois l'erreur « AccessDenied » (Accès refusé) ou « Invalid information » (Informations non valides) lorsque j'essaie d'assumer un rôle IAM entre comptes ?

AWS OFFICIEL
AWS OFFICIELA mis à jour il y a un an