Docs Menu
Docs Home
/ /

Compatibilidad

Esta página describe las ediciones de MongoDB Server y las versiones de controlador compatibles con el cifrado consultable y el cifrado a nivel de campo del lado del cliente para ayudarlo a determinar si su implementación admite cada función de cifrado en uso.

➤ Utilice el menú desplegable Seleccione su lenguaje para seleccionar su driver y ver su compatibilidad con Queryable Encryption y el cifrado a nivel de campo del lado del cliente.

Las siguientes secciones describen los requisitos de compatibilidad para usar el cifrado consultable con MongoDB Server y el controlador seleccionado.

Puede usar el cifrado consultable en un conjunto de réplicas o clúster fragmentado de MongoDB Server 7.0 o posterior, pero no en una instancia independiente. La siguiente tabla muestra qué productos de MongoDB Server admiten qué mecanismos de cifrado consultable:

Nombre del producto
Versión mínima
Admite cifrado consultable con cifrado automático
Admite cifrado consultable con cifrado explícito

MongoDB Atlas [1]

7.0

MongoDB Enterprise Advanced

7.0

MongoDB Community Edition

7.0

No

[1] El cifrado consultable es compatible con MongoDB Atlas pero no con MongoDB Search.
Controlador
Versión requerida
Dependencies

1.24.0 o posterior

libmongocrypt versión 1.8.0 o posterior

3.8.0 o posterior

libmongocrypt versión 1.8.0 o posterior

2.20.0 o posterior

1.12 o posterior

libmongocrypt versión 1.8.0 o posterior

4.10.0 o posterior

mongodb-crypt 18versión..0 o posterior

4.10.0 o posterior

mongodb-crypt 18versión..0 o posterior

5.5.0 o posterior

mongodb-client-encryption versión..2 80 o posterior.

Si está utilizando la versión 6.0 o posterior del controlador Node.js, también debe utilizar la versión 6.0 o posterior de mongodb-client-encryption.

1.16 o posterior

(Ninguno)

4.4 o posterior

pymongocrypt 1versión.6 o posterior

2.19 o posterior

libmongocrypt-helper 18versión..0 o posterior

2.4.0 o posterior

libmongocrypt versión 1.8.0 o posterior

4.10.0 o posterior

mongodb-crypt 18versión..0 o posterior

Importante

Soporte de cifrado automático

Para usar el cifrado consultable con cifrado automático, debe instalar un componente de análisis de consultas. Para obtener más información, consulte Instalar y configurar un componente de análisis de consultas.

Al habilitar Queryable Encryption en una colección, se eliminan los campos de algunos comandos de diagnóstico y se omiten algunas operaciones del registro de las query. Esto limita los datos disponibles para los ingenieros de soporte de MongoDB, especialmente cuando analizan el rendimiento de las query. Para medir el impacto de las operaciones en las colecciones cifradas, utiliza una herramienta de supervisión de rendimiento de aplicaciones de terceros para recopilar métricas.

Las siguientes secciones describen los requisitos de compatibilidad para usar el cifrado de nivel de campo del lado del cliente (CSFLE) con MongoDB Server y el controlador seleccionado.

Puede usar el cifrado a nivel de campo del lado del cliente en un conjunto de réplicas o un clúster fragmentado, pero no en una instancia independiente. La siguiente tabla muestra qué productos de MongoDB Server admiten distintos mecanismos de cifrado a nivel de campo del lado del cliente:

Nombre del producto
Versión mínima
Admite CSFLE con cifrado automático
Admite CSFLE con cifrado explícito

MongoDB Atlas

MongoDB Enterprise Advanced

4.2

MongoDB Community Edition

4.2

No

Para utilizar el cifrado de nivel de campo del lado del cliente y la API de rotación de clave con el controlador C, instale la versión del controlador 1.17.5 o posterior.

Para utilizar el cifrado de nivel de campo del lado del cliente y la API de rotación de clave con el controlador C++, instale la versión del controlador 3.6.0 o posterior.

Para usar el cifrado de nivel de campo del lado del cliente con el controlador .NET/C#, instale 2.10.0 la versión o posterior. Para usar la API de rotación de claves, instale la versión 2.17.1 o posterior.

Si está utilizando la versión del controlador 3.0 o posterior:

  • Instale el paquete MongoDB.Driver.Encryption desde NuGet. Este paquete permite el cifrado automático.

  • Si su aplicación se ejecuta en Linux, instale libmongocrypt manualmente. Luego, configure la LIBMONGOCRYPT_PATH variable de entorno con la ruta absoluta del libmongocrypt archivo.

  • Si su aplicación se ejecuta en Linux de 64bits y está usando la versión del controlador 3.4.3 o anterior, agregue el siguiente XML a su archivo .csproj.

    Reemplace <MongoDriverEncryptionVersion> con la versión instalada del paquete MongoDB.Driver.Encryption:

    <PropertyGroup>
    <!-- replace the version here with your package version -->
    <MongoDriverEncryptionVersion>3.4.2</MongoDriverEncryptionVersion>
    <MongoDriverEncryptionPath>$(NuGetPackageRoot)mongodb.driver.encryption\$(MongoDriverEncryptionVersion)</MongoDriverEncryptionPath>
    </PropertyGroup>
    <PropertyGroup>
    <!-- Suppresses the duplicate file error -->
    <ErrorOnDuplicatePublishOutputFiles>false</ErrorOnDuplicatePublishOutputFiles>
    </PropertyGroup>
    <!-- Ensures the correct library after build or publish -->
    <Target Name="EnsureCorrectMongoEncryption" AfterTargets="Build;Publish" Condition="'$(RuntimeIdentifier)' != ''">
    <!-- Determine paths based on current operation -->
    <PropertyGroup>
    <_TargetDir Condition="Exists('$(PublishDir)')">$(PublishDir)</_TargetDir>
    <_TargetDir Condition="'$(_TargetDir)' == ''">$(OutputPath)</_TargetDir>
    </PropertyGroup>
    <!-- Copy the correct library based on runtime identifier (RID) -->
    <ItemGroup>
    <_CorrectMongoLib Include="$(MongoDriverEncryptionPath)/runtimes/linux/native/x64/libmongocrypt.so"
    Condition="'$(RuntimeIdentifier)' == 'linux-x64'" />
    <_CorrectMongoLib Include="$(MongoDriverEncryptionPath)/runtimes/linux/native/arm64/libmongocrypt.so"
    Condition="'$(RuntimeIdentifier)' == 'linux-arm64'" />
    <_CorrectMongoLib Include="$(MongoDriverEncryptionPath)/runtimes/linux/native/alpine/libmongocrypt.so"
    Condition="'$(RuntimeIdentifier)' == 'linux-musl-arm64'" />
    </ItemGroup>
    <!-- Copy with overwrite -->
    <Copy SourceFiles="@(_CorrectMongoLib)"
    DestinationFolder="$(_TargetDir)"
    Condition="'@(_CorrectMongoLib)' != ''"
    OverwriteReadOnlyFiles="true" />
    <Message Text="Fixed MongoDB encryption library for $(RuntimeIdentifier)"
    Condition="'@(_CorrectMongoLib)' != ''" />
    </Target>

Para usar el cifrado de nivel de campo del lado del cliente con el controlador Go, instale 1.2 la versión o posterior. Para usar la API de rotación de claves, instale libmongocrypt 1.5.2 o posterior.

Para usar el cifrado a nivel de campo del lado del cliente con el controlador Java Reactive Streams, instale 1.12.0 la versión o posterior. Para usar la API de rotación de claves, instale la mongodb-crypt versión 1.7.3 o posterior.

Para usar el cifrado a nivel de campo del lado del cliente con el controlador Java Sync o Java Reactive Streams, instale 3.10.0 la versión o posterior. Para usar la API de rotación de claves, instale la mongodb-crypt versión,,,1 73 o posterior.

Para usar el cifrado de nivel de campo del lado del 3.4.0 cliente con el controlador de Node.js, instale la versión o posterior. Para usar la API de rotación de claves, instale mongodb-client-encryption 2 2versión..0 2-.x.

Si está utilizando la versión 6.0 o posterior del controlador Node.js, también debe utilizar la versión 6.0 o posterior de mongodb-client-encryption.

Para utilizar el cifrado de nivel de campo del lado del cliente y la API de rotación de clave con el controlador PHP, instale la versión del controlador 1.6.0 o posterior.

Para usar el cifrado a nivel de campo del lado del cliente con PyMongo, instala la versión del controlador 3.10.0 o posterior. Para usar la API de rotación de claves, instala la versión pymongocrypt 1.3.1 o posterior.

Para utilizar el cifrado de nivel de campo del lado del cliente y la API de rotación de clave con el controlador Ruby, instale la versión del controlador 2.12.1 o posterior.

Para usar el cifrado de nivel de campo del lado del cliente con el controlador de Rust, instale 2.4.0 la versión o posterior. Para usar la API de rotación de claves, instale libmongocrypt 1.8versión.0 o posterior.

Para utilizar el cifrado a nivel de campo del lado del cliente y la API de rotación de claves con el driver de Scala, instala la versión del driver 2.7.0 o posterior.

Para obtener más información sobre la API de rotación de claves, consulte Rotar y reenvolver claves de cifrado.

Importante

Soporte de cifrado automático

Para usar el cifrado de nivel de campo del lado del cliente con cifrado automático, debe instalar un componente de análisis de consultas. Para obtener más información, consulte Instalar y configurar un componente de análisis de consultas CSFLE.

Volver

Comparación de enfoques

En esta página