You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
5. Choose a **Deletion grace period** from the list. You can choose between the following options:
2
+
-**Immediate**: If Redis Cloud loses access to your key, Redis will notify you and delete your database immediately.
3
+
-**Alert only (No deletion, limited SLA)**: If Redis Cloud loses access to your key, Redis will notify you but will not delete your database.
4
+
5
+
{{<warning>}}
6
+
If you select **Alert only (No deletion, limited SLA)**, Redis will not be able to make changes to your database if we lose access to your key. This includes database upgrades, failovers to persistent storage, and other operations that require access to your key. Because of this, Redis will not be able to meet its [Service Level Agreement (SLA)](https://redis.io/legal/redis-cloud-service-level-agreement/) if we lose access to your key.
7
+
8
+
Provide a new key as soon as possible to avoid service disruption.
9
+
{{</warning>}}
10
+
11
+
6. After you finish granting access to your key, you can save your changes. For a new subscription, select **Activate** to activate your subscription and start billing.
Copy file name to clipboardExpand all lines: content/operate/rc/security/manage-encryption-keys.md
+38-14Lines changed: 38 additions & 14 deletions
Original file line number
Diff line number
Diff line change
@@ -31,7 +31,7 @@ Before you set up self-managed encryption, you must have a self-managed encrypti
31
31
The encryption key must be hosted by the same cloud provider as your database and must be available in your database's cloud provider region.
32
32
33
33
Refer to the provider's documentation to create a key:
34
-
<!-- - [Amazon Web Services - Create a KMS key](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html)-->
34
+
-[Amazon Web Services - Create a KMS key](https://docs.aws.amazon.com/kms/latest/developerguide/create-keys.html)
35
35
-[Google Cloud - Create a key](https://cloud.google.com/kms/docs/create-key)
36
36
37
37
## Set up self-managed encryption
@@ -74,45 +74,69 @@ To activate self-managed encryption on an existing Redis Cloud Pro subscription:
74
74
75
75
### Grant key permissions
76
76
77
-
After you activate self-managed encryption, you must grant Redis access to your encryption key so we can use it for storage encryption.
77
+
After you activate self-managed encryption, you must grant Redis access to your encryption key on your cloud provider so we can use it for storage encryption.
78
78
79
-
<!-- #### Amazon Web Services
79
+
Follow the steps for your cloud provider:
80
+
-[Amazon Web Services](#amazon-web-services)
81
+
-[Google Cloud](#google-cloud)
80
82
81
-
#### Google Cloud -->
83
+
#### Amazon Web Services
84
+
85
+
To grant Redis access to a key on AWS:
86
+
87
+
1. From your subscription page on the Redis Cloud console, copy the provided objects to add to the key policy.
88
+
89
+
{{<imagefilename="images/rc/cmek-access-roles-aws.png"alt="The Grant Redis your customer-managed key section shows the IAM role that needs access to your key and objects to add to your key policy."width=80% >}}
90
+
91
+
2. Go to the [Key management service](https://console.aws.amazon.com/kms) on the AWS console and locate your key.
92
+
93
+
3.[Modify the key policy](https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-modifying.html) using the policy view. Add the provided objects in the **Statement** section and then save your changes.
94
+
95
+
4. Return to the Redis Cloud console. In your subscription page, enter your key's ARN in the **Key resource name** field.
96
+
97
+
{{<imagefilename="images/rc/cmek-provide-resource-name-aws.png"alt="The Provide the name of your customer-managed key section lets you provide your key to Redis."width=80% >}}
98
+
99
+
At this point, Redis Cloud will check to see if it can access your key. If it can't access your key, make sure that you've added the correct permissions to your key, that the key is available in the database's cloud provider region, and that you have correctly entered your key's resource name.
100
+
101
+
{{< embed-md "rc-cmek-final-steps.md" >}}
102
+
103
+
#### Google Cloud
82
104
83
105
To grant Redis access to a key on Google Cloud:
84
106
85
107
1. From your subscription page on the Redis Cloud console, copy the provided Redis service account name.
86
108
87
109
{{<imagefilename="images/rc/cmek-access-roles-google.png"alt="The Grant Redis your customer-managed key section shows the service account needed to add as a principal."width=80% >}}
88
110
89
-
1. Go to [Key management](https://console.cloud.google.com/security/kms) on the Google Cloud console and locate your key.
111
+
2. Go to [Key management](https://console.cloud.google.com/security/kms) on the Google Cloud console and locate your key.
90
112
91
-
1. Add the provided service account as a principal for your key, with one of the following Role options:
113
+
3. Add the provided service account as a principal for your key, with one of the following Role options:
92
114
93
115
- Add the pre-defined IAM roles [Cloud KMS CryptoKey Encrypter/Decrypter](https://cloud.google.com/kms/docs/reference/permissions-and-roles#cloudkms.cryptoKeyEncrypterDecrypter) and [Cloud KMS Viewer](https://cloud.google.com/kms/docs/reference/permissions-and-roles#cloudkms.viewer), OR
94
116
-[Create a custom IAM role](https://cloud.google.com/iam/docs/creating-custom-roles#creating) with the following minimal permissions needed to use the key, and then assign that custom role to the principal:
95
117
- cloudkms.cryptoKeyVersions.useToDecrypt
96
118
- cloudkms.cryptoKeyVersions.useToEncrypt
97
119
- cloudkms.cryptoKeys.get
98
120
99
-
1. Return to the Redis Cloud console. In your subscription page, enter your key's resource name in the **Key resource name** field.
121
+
4. Return to the Redis Cloud console. In your subscription page, enter your key's resource name in the **Key resource name** field.
100
122
101
123
{{<imagefilename="images/rc/cmek-provide-resource-name-google.png"alt="The Provide the name of your customer-managed key section lets you provide your key to Redis."width=80% >}}
102
124
103
-
At this point, Redis Cloud will check to see if it can access your key. If it can't access your key, make sure that you've added the correct permissions to your key, that the key is available in the database's cloud provider region, and that you have correctly entered your key's resource name.
125
+
At this point, Redis Cloud will check to see if it can access your key. If it can't access your key, make sure that you've added the correct permissions to your key, that the key is available in the database's cloud provider region, and that you have correctly entered your key's resource name.
104
126
105
-
<!-- 1. Choose a **Deletion grace period** from the list. If Redis Cloud loses access to your key, Redis will notify you and delete your key after the selected grace period. During the grace period, you must provide a new key to prevent data loss. -->
127
+
{{< embed-md "rc-cmek-final-steps.md" >}}
106
128
107
-
1. After you finish granting access to your key, you can save your changes. For a new subscription, select **Activate** to activate your subscription and start billing.
When you have set up self-managed encryption, you can revoke Redis's access to your encryption key at any time through your cloud provider.
110
132
111
-
## Revoke key access
133
+
If you selected **Immediate** as the deletion grace period, Redis will immediately delete your database if we lose access to your key. If you selected **Alert only (No deletion, limited SLA)**, Redis will notify you but will not delete your database.
112
134
113
-
When you have set up self-managed encryption, you can revoke Redis's access to your encryption key at any time through your cloud provider. Redis will delete your plan immediately if we can't access your key.
135
+
{{<warning>}}
136
+
If you selected **Alert only (No deletion, limited SLA)**, Redis will not be able to make changes to your database if we lose access to your key. This includes database upgrades, failovers to persistent storage, and other operations that require access to your key. Because of this, Redis will not be able to meet its [Service Level Agreement (SLA)](https://redis.io/legal/redis-cloud-service-level-agreement/) if we lose access to your key.
114
137
115
-
<!-- Redis will delete your plan after the selected grace period if we can't access your key. During the grace period, you must provide a new key to prevent data loss. -->
138
+
Provide a new key as soon as possible to avoid service disruption.
0 commit comments