Accès au bucket entre comptes - Studio de recherche et d'ingénierie

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.

Accès au bucket entre comptes

RESa la capacité de monter des buckets à partir d'autres AWS comptes, à condition que ces buckets disposent des autorisations appropriées. Dans le scénario suivant, un RES environnement du compte A souhaite monter un compartiment S3 dans le compte B.

Étape 1 : Créez un IAM rôle dans le RES compte déployé dans (ce rôle sera appelé compte A) :
  1. Connectez-vous à la console AWS de gestion pour le RES compte qui doit accéder au compartiment S3 (compte A).

  2. Ouvrez la IAM console :

    1. Accédez au IAM tableau de bord.

    2. Dans le panneau de navigation, choisissez Politiques.

  3. Créez une politique :

    1. Choisissez Create Policy (Créer une politique).

    2. Sélectionnez l'onglet JSON.

    3. Collez la JSON politique suivante (<BUCKET-NAME>remplacez-la par le nom du compartiment S3 situé dans le compte B) :

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:PutObject", "s3:ListBucket", "s3:DeleteObject", "s3:AbortMultipartUpload" ], "Resource": [ "arn:aws:s3:::<BUCKET-NAME>", "arn:aws:s3:::<BUCKET-NAME>/*" ] } ] }
    4. Choisissez Suivant.

  4. Passez en revue et créez la politique :

    1. Donnez un nom à la politique (par exemple, AccessPolicy « S3 »).

    2. Ajoutez une description facultative pour expliquer l'objectif de la politique.

    3. Passez en revue la politique et choisissez Créer une politique.

  5. Ouvrez la IAM console :

    1. Accédez au IAM tableau de bord.

    2. Dans le panneau de navigation, choisissez Roles (Rôles).

  6. Créez un rôle :

    1. Sélectionnez Créer un rôle.

    2. Choisissez Politique de confiance personnalisée comme type d'entité de confiance.

    3. Collez la JSON politique suivante (<ACCOUNT_ID>remplacez-la par l'ID de compte réel du compte A, <ENVIRONMENT_NAME> par le nom de l'environnement du RES déploiement et <REGION> par la AWS région dans laquelle le déploiement RES est effectué) :

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::<ACCOUNT_ID>:role/<ENVIRONMENT_NAME>-custom-credential-broker-lambda-role-<REGION>" }, "Action": "sts:AssumeRole" } ] }
    4. Choisissez Suivant.

  7. Joindre des politiques d'autorisation :

    1. Recherchez et sélectionnez la politique que vous avez créée précédemment.

    2. Choisissez Suivant.

  8. Marquez, révisez et créez le rôle :

    1. Entrez un nom de rôle (par exemple, AccessRole « S3 »).

    2. À l'étape 3, choisissez Ajouter une étiquette, puis entrez la clé et la valeur suivantes :

      • Clé : res:Resource

      • Valeur : s3-bucket-iam-role

    3. Passez en revue le rôle et choisissez Créer un rôle.

  9. Utilisez le IAM rôle dans RES :

    1. Copiez le IAM rôle ARN que vous avez créé.

    2. Connectez-vous à la RES console.

    3. Dans le volet de navigation de gauche, choisissez S3 Bucket.

    4. Choisissez Ajouter un compartiment et remplissez le formulaire avec le compartiment ARN S3 multi-comptes.

    5. Choisissez le menu déroulant Paramètres avancés - facultatif.

    6. Entrez le rôle ARN dans le ARN champ IAM Rôle.

    7. Choisissez Ajouter un compartiment.

Étape 2 : Modifier la politique de compartiment dans le compte B
  1. Connectez-vous à la console AWS de gestion du compte B.

  2. Ouvrez la console S3 :

    1. Accédez au tableau de bord S3.

    2. Sélectionnez le bucket auquel vous souhaitez accorder l'accès.

  3. Modifiez la politique relative aux compartiments :

    1. Sélectionnez l'onglet Permissions, puis choisissez Bucket policy.

    2. Ajoutez la politique suivante pour accorder au IAM rôle depuis le compte A l'accès au compartiment (remplacez <AccountA_ID> avec l'identifiant de compte réel du compte A et <BUCKET-NAME> avec le nom du compartiment S3) :

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::AccountA_ID:role/S3AccessRole" }, "Action": [ "s3:GetObject", "s3:PutObject", "s3:ListBucket", "s3:DeleteObject", "s3:AbortMultipartUpload" ], "Resource": [ "arn:aws:s3:::<BUCKET-NAME>", "arn:aws:s3:::<BUCKET-NAME>/*" ] } ] }
    3. Choisissez Save (Enregistrer).