Satya vous montre comment
transférer des objets S3
vers d'autres comptes AWS

Satya_account-transfer-s3-new

Je souhaite transférer la propriété d'objets Amazon S3 d'un compte Amazon Web Services (AWS) à un autre compte AWS. Comment puis-je faire ?

AWS Support ne dispose pas de l'accès nécessaire pour copier des objets Amazon S3 ou modifier les options de configuration des comptes AWS. Vous ne pouvez pas séparer un compte AWS d'un compte Amazon.com ni transférer des ressources entre des comptes AWS. Il est possible de migrer manuellement des ressources Amazon S3 vers un nouveau compte AWS en appliquant des stratégies basées sur les ressources et en déléguant l'accès à ces ressources dans les comptes AWS avec des stratégies d'utilisateur (ou de groupe) IAM.

Vous pouvez copier des objets Amazon S3 d'un compte AWS vers un autre en utilisant l'opération S3 COPY. Vous devez accorder l'accès du compte AWS de destination aux ressources du compte AWS source en utilisant les listes de contrôle d'accès (ACL) ou les stratégies de compartiment Amazon S3. Par exemple, les étapes suivantes décrivent comment un compte AWS source peut créer une stratégie de compartiment afin d'accorder à un autre compte AWS un accès à une ou plusieurs ressources Amazon S3, en donnant au compte AWS l'autorisation de copier à partir de la source.

Remarque : La stratégie de compartiment suivante, créée dans le compte AWS source, accorde des autorisations ListBucket et GetObject au compte AWS de destination pour chaque ressource S3 désignée. Dans un environnement de production, il est recommandé de spécifier les paramètres d'action qui suivent le principe d'accès privilégié minimum. Après avoir défini les paramètres d'action, ajoutez dans la section Ressources les ressources pour lesquelles le compte AWS de destination doit posséder des autorisations. Assurez-vous de séparer d'une virgule chaque entrée de ressource.

Obtenez d'abord l'ID de compte à 12 chiffres du compte de destination. Voici une façon de trouver le numéro de compte :

  1. Connectez-vous à AWS Management Console pour le compte AWS de destination.
  2. Dans la barre de navigation, cliquez sur Support, puis sélectionnez Support Center. Le numéro du compte (par exemple, 222222222222) est affiché dans l'angle supérieur droit de Support Center.

Dans le compte source, attachez la stratégie suivante au compartiment que vous souhaitez copier. Pour obtenir des instructions détaillées, consultez Gérer les autorisations d'un compartiment.

#Bucket policy set up in the source AWS account.
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "DelegateS3Access",
            "Effect": "Allow",
            "Principal": {"AWS": "222222222222"},
            "Action": ["s3:ListBucket","s3:GetObject"],
            "Resource": [
                "arn:aws:s3:::sourcebucket/*",
                "arn:aws:s3:::sourcebucket"
            ]
        }
    ]
}

Attachez une stratégie à un utilisateur ou à un groupe dans le compte AWS de destination pour déléguer l'accès au compartiment dans le compte AWS source. Si vous attachez la stratégie à un groupe, assurez-vous que l'utilisateur IAM est bien un membre du groupe.

#New AWS account IAM user policy set up on destination AWS account.
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:ListBucket",
                "s3:GetObject"
            ],
            "Resource": [
                "arn:aws:s3:::sourcebucket",
                "arn:aws:s3:::sourcebucket/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:ListBucket",
                "s3:PutObject",
                "s3:PutObjectAcl"
            ],
            "Resource": [
                "arn:aws:s3:::destinationbucket",
                "arn:aws:s3:::destinationbucket/*"
            ]
        }
    ]
}

Après avoir réalisé ces étapes, le compte « destination » peut copier des objets à l'aide des commandes de l'interface de ligne de commande (CLI) cp ou sync. Par exemple, la commande aws s3 sync suivante permet de copier le contenu d'un compartiment du compte AWS source vers un compartiment du compte AWS de destination :

Remarque : pour que cette commande s'exécute correctement, l'interface de ligne de commande AWS doit avoir été correctement configurée pour l'utilisateur dans le compte AWS de destination et les compartiments source et de destination doivent se trouver dans la même région (une option de ligne de commande permet de spécifier une région différente). Pour plus d'informations sur la configuration de l'interface de ligne de commande AWS, consultez Configuration de l'interface de ligne de commande AWS. En outre, l'utilisateur du compte AWS de destination doit disposer des autorisations appropriées pour copier les fichiers dans s3://destinationbucket.

aws s3 sync s3://sourcebucket s3://destinationbucket

Pour en savoir plus sur la délégation d'un accès à un compartiment S3 dans un autre compte, consultez Exemple : Utilisation d'une stratégie basée sur les ressources pour déléguer l'accès à un compartiment Amazon S3 à un autre compte.

Pour plus d'informations sur la délégation d'accès aux ressources dans différents comptes AWS avec des rôles IAM, consultez Procédure : Délégation d'accès aux ressources entre les comptes AWS avec des rôles IAM.

Pour une procédure détaillée sur la façon dont un propriétaire de compartiment peut octroyer des autorisations d'accès au compartiment entre les comptes, consultez Exemple 2 : Octroi par le propriétaire d'un compartiment d'autorisations d'accès au compartiment entre les comptes.


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 : 26/02/2015

Date de mise à jour : 07/08/2017