@@ -15,7 +15,7 @@ Features
15
15
Overview
16
16
--------
17
17
18
- On this page, you can learn about the security benefits of {+qe+},
18
+ On this page, you can learn about the security benefits of {+qe+},
19
19
how it works, and how it compares to other security mechanisms supported
20
20
by MongoDB. You can also view a fictional scenario that demonstrates the
21
21
value of {+qe+} in securing your data.
@@ -30,53 +30,53 @@ encrypt data before transporting it over the network using fully
30
30
randomized encryption, while maintaining queryability.
31
31
Sensitive data is transparently encrypted and decrypted by the client
32
32
and only communicated to and from the server in encrypted form.
33
- The security guarantees for sensitive fields containing both low
33
+ The security guarantees for sensitive fields containing both low
34
34
cardinality (low-frequency) data and high cardinality data are identical
35
35
36
36
Unlike :ref:`Client-Side Field Level Encryption <manual-csfle-feature>`
37
37
that can use :ref:`Deterministic Encryption <csfle-deterministic-encryption>`,
38
- {+qe+} uses fast, searchable encryption schemes based on `Structured Encryption <https://dl.acm.org/doi/abs/10.1007/978-3-030-77883-5_13>`__.
38
+ {+qe+} uses fast, searchable encryption schemes based on `Structured Encryption <https://dl.acm.org/doi/abs/10.1007/978-3-030-77883-5_13>`__.
39
39
These schemes produce different encrypted output values even when given
40
40
the same cleartext input.
41
41
42
42
How {+qe+} Works
43
43
------------------------------
44
44
45
- The diagram below shows the process and architecture of how {+qe+} is
45
+ The diagram below shows the process and architecture of how {+qe+} is
46
46
used in a customer environment.
47
47
48
48
.. image:: /images/QE-how-it-works.png
49
49
:alt: How Queryable Encryption works
50
50
51
- In this diagram, the user is able to query on fully randomly encrypted
51
+ In this diagram, the user is able to query on fully randomly encrypted
52
52
data such as SSN number.
53
53
54
54
The process and mechanisms that make this possible within {+qe+} are as follows:
55
55
56
- 1. When the application submits the query, MongoDB drivers first analyze
56
+ 1. When the application submits the query, MongoDB drivers first analyze
57
57
the query.
58
58
59
- 2. The driver recognizes the query is against an encrypted field and
60
- requests the encryption keys from the customer-provisioned key
59
+ 2. The driver recognizes the query is against an encrypted field and
60
+ requests the encryption keys from the customer-provisioned key
61
61
provider such as:
62
62
63
- - AWS Key Management Service (AWS KMS)
63
+ - AWS Key Management Service (AWS KMS)
64
64
- Google Cloud KMS
65
65
- Azure Key Vault
66
66
- Any {+kmip-kms+}
67
67
68
- 3. The driver submits the query to the MongoDB server with the encrypted
68
+ 3. The driver submits the query to the MongoDB server with the encrypted
69
69
fields rendered as ciphertext.
70
70
71
- 4. Queryable Encryption implements a fast, searchable scheme that allows
72
- the server to process queries on fully encrypted data, without knowing
73
- anything about the data. The data and the query itself remain encrypted
71
+ 4. Queryable Encryption implements a fast, searchable scheme that allows
72
+ the server to process queries on fully encrypted data, without knowing
73
+ anything about the data. The data and the query itself remain encrypted
74
74
at all times on the server.
75
75
76
- 5. The MongoDB server returns the encrypted results of the query to the
76
+ 5. The MongoDB server returns the encrypted results of the query to the
77
77
driver.
78
78
79
- 6. The query results are decrypted with the keys held by the driver and
79
+ 6. The query results are decrypted with the keys held by the driver and
80
80
returned to the client and shown as plaintext.
81
81
82
82
{+qe+} functions with the help of the following data structures. It is critical
@@ -186,17 +186,19 @@ To learn more, see
186
186
Comparison of Features
187
187
----------------------
188
188
189
- The following diagram describes security features MongoDB supports and
189
+ The following diagram describes security features MongoDB supports and
190
190
the potential security vulnerabilities that they address:
191
191
192
192
.. image:: /images/QE_Security_Feature_Chart.png
193
193
:alt: Diagram that describes MongoDB security features and the potential vulnerabilities that they address
194
194
195
195
.. important:: Use the Mechanisms Together
196
196
197
- To secure a production deployment, you can use multiple security
198
- mechanisms discussed in this guide together. However, you cannot use
199
- both {+csfle-abbrev+} and {+qe+} to encrypt data in the same collection.
197
+ To secure a production deployment, use Role-Based Access
198
+ Control, Encryption at Rest, Transport Encryption, and optionally, the
199
+ In-Use Encryption security mechanisms together. Please note that you cannot
200
+ use both {+csfle+} and {+qe+} to encrypt different fields in the same
201
+ collection.
200
202
201
203
To learn more about {+csfle+}, see :ref:`{+csfle+} Features <csfle-features>`.
202
204
0 commit comments