-
Notifications
You must be signed in to change notification settings - Fork 21
Setting up Amazon Web Services to Store Snapshots
WP Snapshots uses AWS to store snapshots and their metadata in the cloud. You’ll need a free Amazon Web Services account. There are a few validation and security checks during registration, but be patient and complete them all. Once you’ve logged in for the first time, you’ll see a console that looks something like this:
The first thing you’ll want to do is set up an Identity Access Management (IAM) user for WP Snapshots. IAM will allow you to setup advanced permission rules in the future. For now, type IAM into the AWS services search bar, and head over to the IAM dashboard. We’ll need to create a Group, User and Policy.
In the sidebar, click on Groups, then Create New Group.
Name your group anything you like, then click on Next.
At this step, we need to add security policies to the group. You can think of security policies as permissions. A new group starts off with no permissions; let’s add a few user permissions in this group. In the policy filter, search for “Dynamo”. Click the checkbox “AmazonDynamoDBFullAccess”.
Now search for “S3” and click the checkbox next to “AmazonS3FullAccess”.
This provides full access to both DynamoDB and S3 for this user group. Go ahead and click “Next Step” and then “Create Group”.
Next we’ll add a User to the Group we just created. In the sidebar, click “Users”, and then “Add user”.
Create a user name for the new user and make sure Access Type is set to “Programmatic access”, as this user shouldn’t be able to sign into the AWS console. After you’ve done this, go ahead and click “Next: Permissions”.
On this next screen, add the user to the group we created earlier, then click “Next: Review”.
Finally, review the user’s settings and click “Create User” to confirm. On the next page, note the users’ Access Key ID, and Secret Access Key. You’ll want to save these to a Password Manager, or somewhere safe where you can retrieve them later. Think of them as a password, as you’ll need them to authorize with AWS later. Click on “Close.”
At this point, you have everything you need to use WPSnapshots with AWS. Use the AWS keys when using the command, wpsnapshots configure <repository>