![](/img/trans.png)
[英]How to copy files from a bucket on one AWS account to a bucket on another AWS account?
[英]How to copy files from one AWS account to Another AWS Account
我需要將文件從客戶端S3存儲桶移動到我們的S3存儲桶。 我做了幾件事:
你能給我一些指示嗎? 提前致謝。
你有2個選擇:
拉文件
在源中設置存儲桶策略,授予對目標帳戶中用戶/角色的讀取權限。
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Example",
"Effect": "Allow",
"Action": [
"s3:GetObject",
"s3:ListBucket"
],
"Principal": {
"AWS": "arn:aws:iam::DEST_ACCOUNT:user/DestinationAccountUserName"
},
"Resource": [
"arn:aws:s3:::source-bucket",
"arn:aws:s3:::source-bucket/*"
]
}
]
}
然后,您可以使用目標帳戶中的用戶運行aws s3 sync s3://source-bucket s3://dest-bucket
。
推送文件
在目標中設置存儲桶策略,授予對源帳戶中用戶/角色的寫訪問權限。
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Example",
"Effect": "Allow",
"Action": [
"s3:PutObject",
"s3:PutObjectAcl"
],
"Principal": {
"AWS": "arn:aws:iam::SOURCE_ACCOUNT:user/SourceAccountUserName"
},
"Resource": [
"arn:aws:s3:::dest-bucket"
],
"Condition": {
"StringEquals": {
"s3:x-amz-acl": "bucket-owner-full-control"
}
}
}
]
}
然后,您可以在源帳戶中運行aws s3 sync --acl bucket-owner-full-control s3://source-bucket s3://dest-bucket
。 重要信息如果未設置ACL,則目標帳戶中的存儲區所有者將無法訪問這些對象,這就是我們在"Condition"
強制執行ACL的原因。
以下是關於此的AWS帖子: https : //aws.amazon.com/es/premiumsupport/knowledge-center/cross-account-access-s3/
本文介紹了幾個選項......
- AWS S3控制台 - 適用於處理有限數量的對象或在同一AWS賬戶內進行轉移。
- AWS命令行界面(cli) - EC2命令行工具。
- AWS S3 SDK - 如果您准備進行編碼並編寫自己的腳本。
- 來自s3tools.org的s3cmd - 用Python編寫的命令行工具。 查看Alfie La Peter的文章。
- S3瀏覽器 - 僅限Windows。
- CloudBerry S3 Explorer - 僅限Windows,而且價格合理。
- Bucket Explorer - 支持Windows,Mac和Linux(需要付費)。
CloudBuddy - MS Office插件。
S3Fox - Firefox附加組件。
...它還提供了有關如何使用AWS CLI進行遷移的詳細信息。 宏步驟:
- 創建/識別存儲桶
- 創建IAM用戶帳戶
- 設置用戶憑據
- 創建用戶策略
- 創建存儲桶策略
- 驗證EC2實例上的AWS S3 CLI可用性
- 配置S3 CLI憑據
- 最后復制並移動一些S3對象
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.