@@ -15,32 +15,35 @@ Configure Encryption
1515Overview
1616--------
1717
18- .. include:: /includes/fact-enterprise-only-admonition.rst
19-
20- .. important::
21-
22- Available for the WiredTiger Storage Engine Only.
23-
24- .. note:: Changed in version 4.0
25-
26-
27- .. include:: /includes/fact-aes.rst
18+ This page discusses server configuration to support encryption at rest.
19+ If you use `MongoDB Atlas <https://www.mongodb.com/cloud/atlas>`__,
20+ your data is already encrypted. MongoDB manages Atlas encryption at the
21+ cloud provider level, but you can also use your own key management
22+ solution. See the Atlas `key management documentation
23+ <https://docs.atlas.mongodb.com/security-kms-encryption/>`__ for details.
2824
2925MongoDB Enterprise 3.2 introduces a native encryption option for the
30- WiredTiger storage engine. With storage encryption, the secure
31- management of the encryption keys is critical.
26+ WiredTiger storage engine. Outside Atlas, encryption is only available
27+ for enterprise installations that use the WiredTiger Storage Engine.
28+
29+ Secure management of the encryption keys is a critical requirement for
30+ storage encryption. MongoDB uses a master key that is not stored with
31+ the MongoDB installation. Only the master key is externally managed,
32+ other keys can be stored with your MongoDB instance.
3233
33- Only the master key is external to the server and requires external
34- management. To manage the master key, MongoDB's encrypted storage
35- engine supports two key management options:
34+ MongoDB's encrypted storage engine supports two key management options
35+ for the master key:
3636
3737- Integration with a third party key management appliance via the Key
3838 Management Interoperability Protocol (KMIP). **Recommended**
39-
4039- Use of local key management via a keyfile.
4140
42- The following tutorial outlines the procedures to configure MongoDB for
43- encryption and key management.
41+ .. important::
42+
43+ MongoDB cannot encrypt existing data. When you enable encryption
44+ with a new key, the MongoDB instance cannot have any pre-existing
45+ data. If your MongoDB installation already has existing data, see
46+ :ref:`encrypt-existing-data` for additional steps.
4447
4548Key Manager
4649-----------
@@ -70,6 +73,10 @@ Prerequisites
7073- To authenticate MongoDB to a KMIP server, you must have a valid
7174 certificate issued by the key management appliance.
7275
76+ .. note:: Changed in version 4.0
77+
78+ .. include:: /includes/fact-aes.rst
79+
7380.. _encrypt-with-new-key:
7481
7582Encrypt Using a New Key
@@ -213,3 +220,21 @@ accessible by the owner of the :binary:`~bin.mongod` process.
213220
214221 :ref:`encryption-key-management-options`
215222
223+ .. _encrypt-existing-data:
224+
225+ Encrypt Existing Data at Rest
226+ -----------------------------
227+
228+ MongoDB cannot encrypt existing data. When you enable encryption with a
229+ new key, the MongoDB instance cannot have any pre-existing data.
230+
231+ If you are using a replica set that does have existing data, use a
232+ rolling :ref:`initial sync <replica-set-initial-sync>` to encrypt the
233+ data.
234+
235+ For example, consider a replica set with three members. The replica set
236+ is in use and holds data that you want to encrypt. These are the steps
237+ you would take to encrypt the data at rest:
238+
239+ .. include:: /includes/steps/encrypt-with-rolling-sync.rst
240+
0 commit comments