GCP EKM
EKM configuration guide for GCP KMS
Integrating Doppler EKM with GCP KMS enables an organization to supply an encryption key, which Doppler will use to encrypt an organization's secrets an additional time. Doppler fetches the encryption key each time it needs to read or write a secret. If Doppler's access to the key is revoked or the key is deleted, access to the secrets is not possible.
WARNING: Deleting your key will terminate secret access
If you delete your GCP KMS key, your secrets will become inaccessible. This is not reversible.
Requirements
- Doppler Admin access
- Doppler Enterprise plan
- Ability to create a GCP Service Account
- Advanced experience with GCP Service Accounts and GCP KMS recommended
Overview
- Create a Service Account for Doppler to utilize in retrieving your GCP KMS Key
- Create a new GCP KMS Key
- Configure the necessary settings in Doppler
New GCP Project
We recommend creating a new GCP project that is solely dedicated to EKM. This creates isolation from your existing GCP workloads.
GCP Service Account
First we need to create a Service Account for Doppler to utilize
- Hop into the new GCP Project you created above
- Go to
IAM & Admin
- Go to
Service Accounts
- Create a new service account
- Name your service account and provide an optional description. Hit Continue.
- Grant your service account the
Cloud KMS CryptoKey Encrypter/Decrypter
role. Hit continue. - Hit done.
- Select the service account you just created.
- Select the keys tab
- Select
Add Key
->New Key
- Select
JSON
and click Create - A file will be generated. Its contents will be used later
KMS Key
- In the GCP console, navigate to
Security
->Key Management
- You may be prompted to enable the KMS API. You may need to logout of the GCP Console afterwards in order to proceed.
- Select
Create Key Ring
- Give your key ring a name and hit create
- Name your new key
- Protection level can be Software or HSM
- Purpose should be Symmetric encrypt/decrypt
- Choose your preferred rotation cadence
- Create your new key
- In the table of keys, in the row for the key you just created, click the 3-dot menu and click
Copy Resource Name
. Note: it must be the parent key, not a specific version of the key
Doppler Configuration
- Visit the
Settings
page in Doppler - Under EKM, set the Service to Google KMS
- Enter the Key Resource name in the KMS Key Name field
- Enter the contents of the Service Account JSON document in the Key input
- Hit Save
WARNING: Deleting your key will terminate secret access
If you delete your GCP KMS key, your secrets will become inaccessible. This is not reversible.
Key Rotation
Doppler supports GCP KMS keys that are rotated
FAQs
Do I need to create a separate GCP project?
You technically don't need a separate account but it's highly recommended in order to keep your Doppler secrets data separate from your existing GCP workloads that may also be using GCP Secrets Manager.
Updated about 1 year ago