252 文字
1 分
別アカウントのS3バケットに転送する手順
概要
- いくつか記事がありますが、ただのデータ移行という前提では簡単にできるので記事として書いておきます。
前提条件
- 転送元
- アカウント A
- 転送先
- アカウント B
手順
アカウントAでの作業
1. アカウント個別の設定を入れます。
S3 のアカウント名は、AWS 全体でユニークな ID があります。Account A にて bucket を適当に作ると、デフォルトではそのユーザのアクセス権限が付与されているので、そこからログイン中の ID がわかります。

2. 移行元のbucketにbucket policyを入れます。
{ "Version": "2012-10-17", "Statement": [ { "Sid": "DelegateS3Access", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::<AWS ID of Account B>:user/<IAM account name on Account B>" }, "Action": [ "s3:ListBucket", "s3:GetObject" ], "Resource": [ "arn:aws:s3:::<minedia-source-bucket>/*", "arn:aws:s3:::<minedia-source-bucket>" ] } ]}例:

アカウントBでの作業
アカウントBの認証を設定している前提で、普通にaws s3コマンドを発行すれば終わりです。
% aws s3 sync s3://minedia-source-bucket/ s3://minedia-destination-bucket/平均して 260MB/s で転送出来ていまいました。
別アカウントのS3バケットに転送する手順
https://blog.teraren.com/posts/qiita-20180816-7d317e5eac77d87fc294/ 関連記事
この記事が役に立ったら
GitHub Sponsorsで応援できます