Overview
Aprende sobre las aplicaciones y bibliotecas que debes instalar para usar el cifrado a nivel de campo del lado del cliente (CSFLE).
Lo que se necesita
Antes de poder utilizar CSFLE, debe configurar los siguientes elementos en su entorno de desarrollo:
(Opcional) Descargar el Librería compartida de cifrado automático. La Librería Compartida de Cifrado Automático es una alternativa preferida a mongocryptd y no requiere la creación de un nuevo proceso.
mongocryptdTodavía se admite.Instalar Edición empresarial de MongoDB.
Instala un Controlador de MongoDB compatible con CSFLE.
Consulte Primeros pasos para obtener información sobre cómo iniciar una instancia de MongoDB.
Asegúrate de utilizar un sistema operativo x64. CSFLE requiere soporte con x64.
Si utiliza la versión del controlador 3.0 o posterior:
Instala el MongoDB.driver.cifrado Paquete de NuGet. Este paquete permite el cifrado automático.
Si su aplicación se ejecuta en Linux, instale libmongocrypt manualmente. Luego, configure la variable de entorno
LIBMONGOCRYPT_PATHa la ruta absoluta del archivolibmongocrypt.Si tu aplicación se ejecuta en un Linux de 64bits y estás utilizando la versión 3.4.3 o anterior del controlador, agrega el siguiente XML a tu archivo
.csproj.Reemplaza
<MongoDriverEncryptionVersion>con la versión instalada del paqueteMongoDB.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>
(Opcional) Descarga la Librería Compartida de Cifrado Automático. La Librería Compartida de cifrado automático es una alternativa preferida a mongocryptd y no requiere la creación de un nuevo proceso.
mongocryptdtodavía está soportado.Install MongoDB Enterprise.
Instala un Controlador de MongoDB compatible con CSFLE.
Consulte Primeros pasos para obtener información sobre cómo iniciar una instancia de MongoDB.
Instala libmongocrypt. La librería
libmongocryptcontiene acoplamientos para comunicarse con la librería nativa que gestiona el cifrado.
(Opcional) Descarga la Librería Compartida de Cifrado Automático. La Librería Compartida de cifrado automático es una alternativa preferida a mongocryptd y no requiere la creación de un nuevo proceso.
mongocryptdtodavía está soportado.Install MongoDB Enterprise.
Instala un Controlador de MongoDB compatible con CSFLE.
Consulte Primeros pasos para obtener información sobre cómo iniciar una instancia de MongoDB.
Instala mongodb-crypt. La librería
mongodb-cryptcontiene enlaces para comunicarse con la librería nativa que gestiona el cifrado.
(Opcional) Descarga la Librería Compartida de Cifrado Automático. La Librería Compartida de cifrado automático es una alternativa preferida a mongocryptd y no requiere la creación de un nuevo proceso.
mongocryptdtodavía está soportado.Install MongoDB Enterprise.
Instala un Controlador de MongoDB compatible con CSFLE.
Consulte Primeros pasos para obtener información sobre cómo iniciar una instancia de MongoDB.
Instala mongodb-client-encryption, un contenedor Node.js para la librería de cifrado
libmongocrypt. La libreríalibmongocryptcontiene enlaces para comunicarse con la librería nativa que gestiona el cifrado.
Al usar la versión 6.0.0 o posterior del controlador de Node.js, mongodb-client-encryption debe tener el mismo número de versión principal que el controlador.
Por ejemplo, el driver de Node.js v6.x.x requiere mongodb-client-encryption v6.x.x.
(Opcional) Descarga la Librería Compartida de Cifrado Automático. La Librería Compartida de cifrado automático es una alternativa preferida a mongocryptd y no requiere la creación de un nuevo proceso.
mongocryptdtodavía está soportado.Install MongoDB Enterprise.
Instala un Controlador de MongoDB compatible con CSFLE.
Consulte Primeros pasos para obtener información sobre cómo iniciar una instancia de MongoDB.
Instale pymongocrypt, un contenedor de Python para la
libmongocryptbiblioteca de cifrado. Lalibmongocryptbiblioteca contiene enlaces para comunicarse con la biblioteca nativa que gestiona el cifrado.
Obtén más información
Para comenzar a usar CSFLE, consulta la Guía de inicio rápido de CSFLE.
Para aprender cómo usar CSFLE con un proveedor remoto de Sistema de Gestión de Claves, consulta Tutoriales de CSFLE.