Quick Search:
User Case: Move Files Directly from One S3 Account to Another
Pretty basic question but I haven't been able to find an answer. Using Transit I can "move" files from one S3 bucket on one AWS account to another S3 bucket on another AWS account, but what it actually does is download the files from the first then upload them to the second. Is there a way to move files directly from one S3 account to another without downloading them in between?
- Question from Reddit
How to Copy Objects from One S3 Bucket to Another Cross Account [Easiest]
The easiest and quickest to make S3 automatically copy to another bucket is to utilize a cloud transfer service, MultCloud. MultCloud is an all-in-one cloud management platform designed to simplify how you access, manage, and transfer files across multiple cloud storage services.
MultCloud supports over 30 leading cloud providers: Amazon S3, Google Drive, Dropbox, OneDrive, and MEGA, among others. MultCloud makes it easy to integrate all your accounts. Whether you need to sync, transfer, or back up data from cloud to cloud, MultCloud will manage all operations securely and without the messy need for manual file operations.
- Direct Cloud-to-Cloud Transfers: Transferring files and documents easily from one cloud drive to another without downloading and re-uploading them, making it easy and time-saving.
- Scheduled Transfers: Schedule an automated transfer to a certain time interval, so that your files will be moved regularly and without manual effort. When you want to transfer data from Dropbox to SharePoint monthly, this feature helps a lot.
- High-Speed Transfers: Benefit from MultCloud’s efficient transfer servers to move large files or bulk data quickly between cloud services.
- Selective File Transfers: Filter files by type, size, or creation date to move only the data you need, making transfers more precise.
- Transfer Notifications: Receive email alerts once your transfer tasks are complete, so you can focus on other work.
- Error-Free Data Transfer: Built-in features prevent transfer interruptions, and MultCloud automatically retries failed transfers until they succeed.
Now, refer to the following part to learn how to copy objects from one S3 bucket to another cross account via MultCloud:
Step 1: Register an account by your email. MultCloud is free to get started, and you can log in directly with your Google, Facebook, or Apple ID.
Step 2: Proceed to Add Cloud on the left pane. Then tap the Amazon S3 button to add your credentials. Next, refer to the on-screen tips to permit MultCloud. Next, repeat the same steps to add another Amazon S3 account.
Step 3: To transfer objects from one Amazon S3 account to another, simply head to Cloud Transfer located on the left upper sidebar. Then, select objects from first Amazon S3 account as the source, and hit the second Amazon S3 as the target. Finally, click on Transfer Now.
With the help of MultCloud, you don’t need to be familiar with code and programs. Instead, MultCloud offers a seamless and efficient way to complete the target. To create automatic transfers, simply tap the Schedule button. Similarly, when you want to transfer files from OneDrive to Google Drive, simply re-select the source and target directories.
How to Copy Objects from One S3 Bucket to Another Cross Account [Normal]
If you don’t mind cumbersome operations, you can follow this method. This method is normal and a little troublesome, which contains 20 steps and you need to enter codes.
Step 1: Sign into your AWS console with the source account. Choose Amazon S3 > + Create bucket.
Step 2: Name the bucket and select a region.
Step 3: Deselect Block all public access and scroll down to hit Create bucket.
Step 4: Open the bucket by tapping on it. Then add a file to the bucket by simply hitting the Upload button. Or, you can drag and drop the file to the bucket.
Step 5: After uploading the file successfully, log out of the current account. Then, sign into your destination account, and follow the same steps above to create a bucket.
Step 6: Now, we have 2 buckets from 2 different AWS accounts. Go to your destination account to create an IAM Policy that gives read access to the source bucket and write access to the destination bucket. Simply head to the destination account’s Identity and Access Management > Policies > Create policy.
Step 7: Select JSON.
Step 8: Enter the following JSON code (use your source and destination bucket names):
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:ListBucket",
"s3:GetObject"
],
"Resource": [
"arn:aws:s3:::uadmin-sourcebucket",
"arn:aws:s3:::uadmin-sourcebucket/*"
]
},
{
"Effect": "Allow",
"Action": [
"s3:ListBucket",
"s3:PutObject",
"s3:PutObjectAcl"
],
"Resource": [
"arn:aws:s3:::uadmin-destinationbucket",
"arn:aws:s3:::uadmin-destinationbucket/*"
]
}
]
}
Step 9: Hit Review policy. Make sure that the policy has a name that you’ll remember and then click Create policy.
Step 10: Now, we will create an IAM user to connect it to the policy we created. You are still logging in the destination account, now open the IAM dashboard > Users>Add user.
Step 11: Enter the User name and select the Access type. Then tap Next: Permissions.
Step 12: Connect the user to the policy we created before. Tap Attach existing policies directly.
Step 13: Enter the policy name in the search bar. Then tap Next: Tags.
Step 14: Hit Next: Review in the next window.
Step 15: On the review screen, make sure that all the information is correct and then tap Create user.
Step 16: A success message will pop up notifying you the Access key ID and Secret access key. These keys will be needed for programmatic access later.
Step 17: Then head to the AWS management console dashboard. Hit your account name > My Account. Under Account Settings, find your Account ID. This ID will be used in the following steps. So, store it.
Step 18: We should allow the destination account to access the source bucket now. So, sign into the source account, head to the bucket, and tap the Permission option > Bucket Policy.
Step 19: In the editor, enter the code below. Make sure replace the example bucket names with your own and your destination account Account ID. Finally, tap Save.
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowCopy",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::01234567891:root"
},
"Action": [
"s3:ListBucket",
"s3:GetObject"
],
"Resource": [
"arn:aws:s3:::uadmin-sourcebucket/*",
"arn:aws:s3:::uadmin-sourcebucket"
]
}
}
Step 20: Now, use the AWS CLI to copy the object. If you don’t know how to install AWSZ CLI, visit the hyperlink. After configuring it successfully, follow the operations below:
- In order to copy the object(s) from the source to the destination bucket, you need the credentials of the user you created in step 10- step 15.
- In the AWS CLI, open a command window.
📌For Windows:
SET AWS_ACCESS_KEY_ID=AKIAWJXKIY5E2GGG4BOR
SET AWS_SECRET_ACCESS_KEY=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
🎶For Mac:
export AWS_ACCESS_KEY_ID=AKIAWJXKIY5E2GGG4BOR
Export AWS_SECRET_ACCESS_KEY=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
Then, you can copy the bucket from the source to the destination:
aws s3 sync s3://uadmin-sourcebucket s3://uadmin-destinationbucket
As you can see, the way to copy objects from one S3 bucket to another cross account via this method is too time-consuming and troublesome.
Final Words
That’s all about how to copy objects from one S3 bucket to another cross account. Anyway, the best way is to utilize MultCloud. It offers 5GB of free data traffic per month, which can be consumed during the cloud-to-cloud transfer process. So, you can simply have a try to see whether it can be helpful.
If you use MultCloud, you can enjoy other advanced features, such as cloud sync, cloud backup, remote upload as well as Instagram Downloader. You can manage different cloud services and accounts in one place, eliminating the frequent steps to head to different platforms. Also, it allows you to connect Gmail and Outlook to MultCloud. For instance, you can save emails to Box.
MultCloud Supports Clouds
-
Google Drive
-
Google Workspace
-
OneDrive
-
OneDrive for Business
-
SharePoint
-
Dropbox
-
Dropbox Business
-
MEGA
-
Google Photos
-
iCloud Photos
-
FTP
-
box
-
box for Business
-
pCloud
-
Baidu
-
Flickr
-
HiDrive
-
Yandex
-
NAS
-
WebDAV
-
MediaFire
-
iCloud Drive
-
WEB.DE
-
Evernote
-
Amazon S3
-
Wasabi
-
ownCloud
-
MySQL
-
Egnyte
-
Putio
-
ADrive
-
SugarSync
-
Backblaze
-
CloudMe
-
MyDrive
-
Cubby