Docs Menu
Docs Home
/ /
Referencia
/ / /

Opciones de MongoClient específicas de CSFLE

Ver información sobre las opciones de configuración específicas del cifrado de nivel de campo del lado del cliente (CSFLE) para MongoClient instancias.

Pase un objeto autoEncryptionOpts a su 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 omite la opción keyVaultClient, la instancia de MongoDB especificada en su instancia MongoClient que contiene la configuración autoEncryptionOpts se utiliza como host de su colección de Key Vault.

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

keyVaultNamespace

String

El espacio de nombres completo de la colección Key Vault.

kmsProviders

Objeto

El sistema de administración de claves (KMS) utilizado por el cifrado a nivel de campo del lado del cliente para administrar sus claves maestras de cliente (CMK).

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

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

tlsOptions

Objeto

No

Un objeto que asigna nombres de proveedores del sistema de administración de claves a opciones de configuración de TLS.

Para obtener más información sobre las opciones de TLS, consulte: Opciones de 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 de los esquemas de cifrado, consulte Esquemas de cifrado CSFLE.

bypassAutoEncryption

Booleano

No

Especifique true para omitir las reglas automáticas de cifrado de nivel de campo del lado del cliente y realizar un cifrado explícito. bypassAutoEncryption no deshabilita el descifrado automático.

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

Para ver un fragmento de código que demuestra cómo usar autoEncryptionOpts para configurar su instancia MongoClient, seleccione la pestaña correspondiente a su controlador:

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

Tip

Variables de entorno

Si es posible, considere definir las credenciales proporcionadas en kmsProviders como variables de entorno y luego pasarlas a mongosh mediante la opción. Esto minimiza la posibilidad de que --eval 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