Set Up BYOK on AWS KMS
Customer-managed encryption keys (BYOK) mean your files are encrypted with a key that lives entirely in your own AWS account — BYOVault never has independent access to it. This takes about 10 minutes and does not touch anything already backed up.
1. Create a KMS key
- Go to the AWS KMS console → Customer managed keys → Create key.
- Key type: Symmetric. Key usage: Encrypt and decrypt.
- Give it an alias (e.g.
acme-byok-key) for identification in the console. - On the Key administrators step, pick whoever on your side should be able to manage this key’s lifecycle (disable, schedule deletion, rotate). BYOVault is never an administrator of your key — only a user of it, granted in the next step.
- On the Key usage permissions step, skip adding BYOVault here — key-policy access for a different AWS account is not available in this step’s key-usage picker. You will add it directly to the key policy in step 2 instead.
- Review and finish creating the key.
2. Grant BYOVault's proxy role access to your key
Unlike Azure, AWS does not require installing an app into your account. Authorization is a single statement you add directly to your key’s own resource policy, granting BYOVault’s dedicated proxy role permission to use (never export) your key.
- Open the key you just created → Key policy tab.
- If you see sections like “Key administrators” instead of raw JSON, click Switch to policy view first.
- Click Edit, then add the following statement inside the existing
Statementarray, alongside the ones AWS already put there — do not remove those:
{
"Sid": "AllowBYOVaultProxyToUseThisKey",
"Effect": "Allow",
"Principal": {
"AWS": "arn:aws:iam::460223322928:role/byovault-prod-byok-kms-proxy-role"
},
"Action": [
"kms:Encrypt",
"kms:Decrypt",
"kms:GenerateDataKey",
"kms:DescribeKey"
],
"Resource": "*"
}Save the policy.
Resource: "*" refers broadly to resources, this role can only act on THIS key, because only this key’s own policy names it.3. Copy your key's ARN and region
On the key’s own page, copy its ARN (starts with arn:aws:kms:, shown under “General configuration”).
The region is not printed alongside it — it is whatever region the console’s selector, top-right corner, was set to when you created the key (e.g. us-east-1).
us-east-1. If your key was created in any other region, you must fill in the region field explicitly. Otherwise BYOVault will issue wrap/unwrap calls against the wrong region, and key verification and subsequent backups will fail.4. Enter it into BYOVault
On the tenant’s own Encryption Key page, choose AWS KMS. Paste in your key’s ARN and region, then click Verify and activate.
BYOVault performs a real wrap/unwrap round trip against your key before saving — a missing key-policy statement or a typo in the ARN is caught here, not discovered later at your first backup.
See The Shared Master Key for how this compares to BYOVault’s default shared-master-key path.