Visão geral
Saiba mais sobre os aplicativos e bibliotecas que você deve instalar para usar a criptografia no nível do campo do lado do cliente (CSFLE).
O que você precisa
Antes de usar o CSFLE, você deve configurar os seguintes itens em seu ambiente de desenvolvimento:
(Opcional) Baixe a biblioteca compartilhada de criptografia automática. A biblioteca compartilhada de criptografia automática é uma alternativa preferencial ao mongocryptd e não requer a criação de um novo processo.
mongocryptd
ainda é suportado.Instale a edição MongoDB Enterprise.
Instale um driver MongoDB compatível com CSFLE.
Inicie uma instância MongoDB ou Atlas Cluster.
Certifique-se de que esteja usando um sistema operacional x64. O CSFLE requer suporte x64.
Se estiver usando a versão 3.0 ou posterior do driver, você também deverá concluir as seguintes etapas:
Instale o pacote MongoDB.Driver.Encryption do NuGet. Este pacote habilita a criptografia automática.
Se seu aplicação for executado no Linux, instale libmongocrypt manualmente. Em seguida, defina a variável de ambiente
LIBMONGOCRYPT_PATH
para o caminho absoluto do arquivolibmongocrypt
.Se o seu aplicação for executado no 64-bit Linux e você estiver utilizando a versão do driver 3.4.3 ou anterior, adicione as seguintes linhas de XML ao seu arquivo
.csproj
. Altere o valor do elemento<MongoDriverEncryptionVersion>
para corresponder à versão do pacoteMongoDB.Driver.Encryption
que você instalou.
<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) Baixe a biblioteca compartilhada de criptografia automática. A biblioteca compartilhada de criptografia automática é uma alternativa preferencial ao mongocryptd e não requer a criação de um novo processo.
mongocryptd
ainda é suportado.Instale o MongoDB Enterprise Edition.
Instale um driver MongoDB compatível com CSFLE.
Inicie uma instância MongoDB ou Atlas Cluster.
Instale o libmongocrypt. A biblioteca
libmongocrypt
contém ligações para se comunicar com a biblioteca nativa que gerencia a criptografia.
(Opcional) Baixe a biblioteca compartilhada de criptografia automática. A biblioteca compartilhada de criptografia automática é uma alternativa preferencial ao mongocryptd e não requer a criação de um novo processo.
mongocryptd
ainda é suportado.Instale o MongoDB Enterprise Edition.
Instale um driver MongoDB compatível com CSFLE.
Inicie uma instância MongoDB ou Atlas Cluster.
Instale mongodb-crypt. A biblioteca
mongodb-crypt
contém ligações para se comunicar com a biblioteca nativa que gerencia a criptografia.
(Opcional) Baixe a biblioteca compartilhada de criptografia automática. A biblioteca compartilhada de criptografia automática é uma alternativa preferencial ao mongocryptd e não requer a criação de um novo processo.
mongocryptd
ainda é suportado.Instale o MongoDB Enterprise Edition.
Instale um driver MongoDB compatível com CSFLE.
Inicie uma instância MongoDB ou Atlas Cluster.
Instale mongodb-client-encryption, um wrapper do Node.js para a biblioteca de criptografia
libmongocrypt
. A bibliotecalibmongocrypt
contém vinculações para se comunicar com a biblioteca nativa que gerencia a criptografia.
Ao usar a versão 6.0.0
ou posterior do driver do Node.js, mongodb-client-encryption
deve ter o mesmo número de versão principal que o driver.
Por exemplo, o driver Node.js v6.xx requer mongodb-client-encryption
v6.xx
(Opcional) Baixe a biblioteca compartilhada de criptografia automática. A biblioteca compartilhada de criptografia automática é uma alternativa preferencial ao mongocryptd e não requer a criação de um novo processo.
mongocryptd
ainda é suportado.Instale o MongoDB Enterprise Edition.
Instale um driver MongoDB compatível com CSFLE.
Inicie uma instância MongoDB ou Atlas Cluster.
Instale pymongocrypt, um wrapper Python para a biblioteca de criptografia
libmongocrypt
. A bibliotecalibmongocrypt
contém vinculações para se comunicar com a biblioteca nativa que gerencia a criptografia.
Saiba mais
Para começar a usar o CSFLE, consulte Início Rápido do CSFLE.
Para saber como usar o CSFLE com um provedor remoto do Key Management System, consulte Tutoriais do CSFLE.