Join us at MongoDB.local London on 7 May to unlock new possibilities for your data. Use WEB50 to save 50%.
Register now >
Docs Menu
Docs Home
/ /
Referencia
/ / /

Opciones específicas de MongoClient para CSFLE

Ver información sobre las opciones de configuración específicas del cifrado a nivel de campo del lado del cliente (CSFLE, por sus siglas en inglés) para MongoClient instancia.

Pasa un objeto autoEncryptionOpts a tu instancia MongoClient para especificar opciones específicas de CSFLE.

La siguiente tabla describe la estructura de un objeto autoEncryptionOpts:

Parameter
Tipo
Requerido
Descripción

keyVaultClient

MongoClient

No

Una instancia MongoClient configurada para conectarse a la instancia de MongoDB que aloja su colección Key Vault.

Si omites la opción keyVaultClient, la instancia de MongoDB especificada a tu instancia MongoClient que contiene la configuración autoEncryptionOpts se usará como el host de tu Colección de Bóvedas de Llaves.

Para obtener más información sobre las colecciones de Key Vault, consulte Colecciones de Key Vault.

keyVaultNamespace

String

El namespace completo de la Colección de Bóvedas de Llaves.

kmsProviders

Objeto

El Sistema de Gestión de Claves (KMS) utilizado por Cifrado lado del cliente a nivel de campo para gestionar sus llaves maestras de cliente (CMK).

Para obtener más información sobre los objetos kmsProviders, consulta Proveedores de KMS de CSFLE.

Para aprender más sobre las llaves maestras de cliente, consulta Claves y almacenes de claves.

tlsOptions

Objeto

No

Un objeto que asigna los nombres de los proveedores de sistemas de gestión de claves a las opciones de configuración de TLS.

Para obtener más información sobre las opciones de TLS, consulte: Opciones TLS.

Para obtener más información sobre TLS, consulte: TLS/SSL (cifrado de transporte).

schemaMap

Objeto

No

Un esquema de cifrado.

Para aprender a construir un esquema de cifrado, consulte Esquemas de cifrado.

Para obtener documentación completa sobre esquemas de cifrado, consulte Esquemas de cifrado CSFLE.

bypassAutoEncryption

Booleano

No

Especificar true para eludir las reglas automáticas de cifrado a nivel de campo del lado del cliente y realizar un cifrado explícito. bypassAutoEncryption no desactiva el descifrado automático.

Para obtener más información sobre esta opción, consulte Descifrado automático.

Para ver un code-snippet demostrando cómo utilizar autoEncryptionOpts para configurar tu instancia MongoClient, selecciona la pestaña correspondiente a tu driver:

var autoEncryptionOpts =
{
"keyVaultNamespace" : "<database>.<collection>",
"kmsProviders" : { ... },
"schemaMap" : { ... }
}
cluster = Mongo(
"<Your Connection String>",
autoEncryptionOpts
);

Tip

Variables de entorno

Si es posible, considera definir las credenciales proporcionadas en kmsProviders como variables de entorno y luego pasarlas a mongosh mediante la opción --eval. Esto minimiza las posibilidades de que las credenciales se filtren en los registros.

var clientSettings = MongoClientSettings.FromConnectionString(_connectionString);
var autoEncryptionOptions = new AutoEncryptionOptions(
keyVaultNamespace: keyVaultNamespace,
kmsProviders: kmsProviders,
schemaMap: schemaMap,
extraOptions: extraOptions);
clientSettings.AutoEncryptionOptions = autoEncryptionOptions;
var client = new MongoClient(clientSettings);
autoEncryptionOpts := options.AutoEncryption().
SetKmsProviders(provider.Credentials()).
SetKeyVaultNamespace(keyVaultNamespace).
SetSchemaMap(schemaMap).
SetExtraOptions(extraOptions)
client, err := mongo.Connect(context.TODO(), options.Client().ApplyURI(uri).SetAutoEncryptionOptions(autoEncryptionOpts))
MongoClientSettings clientSettings = MongoClientSettings.builder()
.applyConnectionString(new ConnectionString("mongodb://localhost:27017"))
.autoEncryptionSettings(AutoEncryptionSettings.builder()
.keyVaultNamespace(keyVaultNamespace)
.kmsProviders(kmsProviders)
.schemaMap(schemaMap)
.extraOptions(extraOptions)
.build())
.build();
MongoClient mongoClient = MongoClients.create(clientSettings);
const secureClient = new MongoClient(connectionString, {
useNewUrlParser: true,
useUnifiedTopology: true,
monitorCommands: true,
autoEncryption: {
keyVaultNamespace,
kmsProviders,
schemaMap: patientSchema,
extraOptions: extraOptions,
},
});
fle_opts = AutoEncryptionOpts(
kms_providers,
key_vault_namespace,
schema_map=patient_schema,
**extra_options
)
client = MongoClient(connection_string, auto_encryption_opts=fle_opts)

Volver

Operaciones compatibles

En esta página