@@ -128,12 +128,12 @@ enterprise-only feature. If you only intend to use explicit encryption, you may
128
128
skip this step.
129
129
130
130
Mongocryptd comes pre-packaged with enterprise builds of the MongoDB server
131
- (versions 4.2 and newer). For installation instructions, see
132
- `the MongoDB manual <https://mongodb.com/docs/manual/reference/security-client-side-encryption-appendix/#installation>`_.
131
+ (versions 4.2 and newer). For installation instructions, see the
132
+ `MongoDB manual <https://mongodb.com/docs/manual/reference/security-client-side-encryption-appendix/#installation>`_.
133
133
134
134
In order to configure mongocryptd (for example, which port it listens on or the
135
135
path used to spawn the daemon), it is necessary to pass different options to the
136
- ``Mongo::Client`` performing automatic encryption. See the `:extra_options`_
136
+ ``Mongo::Client`` performing automatic encryption. See the :ref: `:extra_options <cse-extra-options>`
137
137
section of this tutorial for more information.
138
138
139
139
Automatic Encryption
@@ -274,8 +274,8 @@ The example above demonstrates using automatic encryption with a local master ke
274
274
For more information about using other key management services to create a
275
275
master key and create data keys, see the following sections of this tutorial:
276
276
277
- - `Creating A Master Key`_
278
- - `Creating A Data Key`_
277
+ - :ref: `Creating A Master Key <creating-a-master-key>`
278
+ - :ref: `Creating A Data Key <creating-a-data-key>`
279
279
280
280
Explicit Encryption
281
281
===================
@@ -372,8 +372,8 @@ The example above demonstrates using explicit encryption with a local master key
372
372
For more information about using other key management services to create a
373
373
master key and create data keys, see the following sections of this tutorial:
374
374
375
- - `Creating A Master Key`_,
376
- - `Creating A Data Key`_,
375
+ - :ref: `Creating A Master Key <creating-a-master-key>`
376
+ - :ref: `Creating A Data Key <creating-a-data-key>`
377
377
378
378
Queryable Encryption
379
379
====================
@@ -485,8 +485,8 @@ The example above demonstrates using automatic encryption with a local master ke
485
485
For more information about using other key management services to create a
486
486
master key and create data keys, see the following sections of this tutorial:
487
487
488
- - `Creating A Master Key`_
489
- - `Creating A Data Key`_
488
+ - :ref: `Creating A Master Key <creating-a-master-key>`
489
+ - :ref: `Creating A Data Key <creating-a-data-key>`
490
490
491
491
Below is an example of explicit queryable encryption.
492
492
@@ -598,6 +598,7 @@ Below is an example of explicit queryable encryption.
598
598
find_result = client['encryption_coll'].find(encrypted_field: find_payload).first['encrypted_field']
599
599
# => 'sensitive data'
600
600
601
+ .. _creating-a-master-key:
601
602
602
603
Creating a Master Key
603
604
=====================
@@ -608,6 +609,8 @@ local key, or by creating a key in a key management service. Currently
608
609
Ruby driver supports AWS Key Management Service (KMS), Azure Key Vault, and
609
610
Google Cloud Key Management (GCP KMS).
610
611
612
+ .. _local-master-key:
613
+
611
614
Local Master Key
612
615
~~~~~~~~~~~~~~~~
613
616
@@ -626,17 +629,21 @@ Run the following code to generate a local master key using Ruby:
626
629
local_master_key = SecureRandom.random_bytes(96)
627
630
# => "\xB2\xBE\x8EN\xD4\x14\xC2\x13\xC3..." (a binary blob)
628
631
632
+ .. _remote-master-key:
633
+
629
634
Remote Master Key
630
635
~~~~~~~~~~~~~~~~~
631
636
It is recommended that you use a remote Key Management Service to create and
632
637
store your master key. To do so, follow steps of the
633
- :drivers: `"Set up a Remote Master Key" section</security/client-side-field-level-encryption-local-key-to-kms/ #set-up-a-remote-master-key>`
638
+ `"Set up a Remote Master Key" <https://www.mongodb.com/docs/manual/core/csfle/tutorials/ #set-up-a-remote-master-key>`_
634
639
in the MongoDB Client-Side Encryption documentation.
635
640
636
641
For more information about creating a master key, see the
637
- :drivers: `Create a Master Key </security/client-side-field-level-encryption-guide/ #a.-create-a-master-key>`
642
+ `Create a Master Key <https://www.mongodb.com/docs/manual/core/csfle/ #a.-create-a-master-key>`_
638
643
section of the MongoDB manual.
639
644
645
+ .. _creating-a-data-key:
646
+
640
647
Creating a Data Key
641
648
===================
642
649
@@ -679,8 +686,8 @@ key with the following code snippet:
679
686
data_key_id = client_encryption.create_data_key('local')
680
687
# => <BSON::Binary... type=ciphertext...>
681
688
682
- See the `Local Master Key`_ section for more information about generating a new
683
- local master key.
689
+ See the :ref: `Local Master Key <local-master-key>` section for more information
690
+ about generating a new local master key.
684
691
685
692
Create a Data Key Using a Remote Master Key
686
693
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -788,12 +795,12 @@ certificate and private key to authenticate to KMIP server.
788
795
)
789
796
# => <BSON::Binary... type=ciphertext...>
790
797
791
- See the `Remote Master Key`_ section of this tutorial for more information about
792
- generating a new remote master key and finding the information you need to
793
- create data keys.
798
+ See the :ref: `Remote Master Key <remote-master-key>` section of this tutorial
799
+ for more information about generating a new remote master key and finding the
800
+ information you need to create data keys.
794
801
795
802
For more information about creating a data key, see the
796
- :drivers: `Create a Data Encryption Key </security/client-side-field-level-encryption-guide/ #b.-create-a-data-encryption-key>`
803
+ `Create a Data Encryption Key <https://www.mongodb.com/docs/manual/core/csfle/ #b.-create-a-data-encryption-key>`_
797
804
section of the MongoDB manual.
798
805
799
806
For a list of possible KMS TLS options
@@ -1030,7 +1037,7 @@ When you intend to use your schema map, convert it to a Ruby ``Hash`` using the
1030
1037
1031
1038
.. seealso::
1032
1039
1033
- :drivers: `Specify Encrypted Fields Using JSON Schema</security/client-side-field-level-encryption-guide/ #c-specify-encrypted-fields-using-json-schema>`,
1040
+ `Specify Encrypted Fields Using JSON Schema <https://www.mongodb.com/docs/manual/core/csfle/ #c-specify-encrypted-fields-using-json-schema>`_ ,
1034
1041
:manual:`Automatic Encryption Rules</reference/security-client-side-automatic-json-schema/>`
1035
1042
1036
1043
.. _schema-map-path:
@@ -1068,6 +1075,8 @@ decryption of any previously-encrypted data.
1068
1075
}
1069
1076
)
1070
1077
1078
+ .. _cse-extra-options:
1079
+
1071
1080
``:extra_options``
1072
1081
~~~~~~~~~~~~~~~~~~
1073
1082
0 commit comments