MongoDB\Driver\ClientEncryption::__construct
(mongodb >=1.14.0)
MongoDB\Driver\ClientEncryption::__construct — Cria um novo objeto ClientEncryption
Descrição
Constrói um novo objeto MongoDB\Driver\ClientEncryption com as opções especificadas.
Parâmetros
options
-
Opções Opção Tipo Descrição keyVaultClient MongoDB\Driver\Manager O gerenciador usado para rotear consultas de chave de dados. Esta opção é obrigatória (diferentemente de MongoDB\Driver\Manager::createClientEncryption()). keyVaultNamespace string Um namespace totalmente qualificado (por exemplo, "nomeDoBancoDados.nomeDaColecao"
) denotando a coleção que contém todas as chaves de dados usadas para criptografia e descriptografia. Esta opção é obrigatória.kmsProviders array Um documento contendo a configuração de um ou mais provedores KMS, que são usados para criptografar chaves de dados. Os provedores compatíveis incluem
"aws"
,"azure"
,"gcp"
,"kmip"
e"local"
e pelo menos um deve ser especificado.Se um documento vazio for especificado para
"aws"
,"azure"
, ou"gcp"
, o driver tentará configurar o provedor usando » Credenciais Automáticas.O formato para
"aws"
é o seguinte:aws: { accessKeyId: <string>, secretAccessKey: <string>, sessionToken: <string opcional> }
O formato para
"azure"
é o seguinte:azure: { tenantId: <string>, clientId: <string>, clientSecret: <string>, identityPlatformEndpoint: <string opcional> // O padrão é "login.microsoftonline.com" }
O formato para
"gcp"
é o seguinte:gcp: { email: <string>, privateKey: <string base64>|<MongoDB\BSON\Binary>, endpoint: <string opcional> // O padrão é "oauth2.googleapis.com" }
O formato para
"kmip"
é o seguinte:kmip: { endpoint: <string> }
O formato para
"local"
é o seguinte:local: { // Chave mestra de 96 bytes usada para criptografar/descriptografar chaves de dados key: <string base64>|<MongoDB\BSON\Binary> }
tlsOptions array Um documento contendo a configuração TLS para um ou mais provedores KMS. Os provedores suportados incluem
"aws"
,"azure"
,"gcp"
e"kmip"
. Todos os provedores suportam as seguintes opções:<provider>: { tlsCaFile: <string opcional>, tlsCertificateKeyFile: <string opcional>, tlsCertificateKeyFilePassword: <string opcional>, tlsDisableOCSPEndpointCheck: <booleano opcional> }
Erros/Exceções
- Lança uma exceção MongoDB\Driver\Exception\InvalidArgumentException em caso de erro ao analisar argumentos.
- Lança MongoDB\Driver\Exception\RuntimeException se a extensão foi compilada sem suporte libmongocrypt
Registro de Alterações
Versão | Descrição |
---|---|
PECL mongodb 1.16.0 |
O provedor AWS KMS para criptografia do lado do cliente agora aceita uma
opção
Adicionado
Se um documento vazio for especificado para o provedor KMS |
PECL mongodb 1.15.0 |
Se um documento vazio for especificado para o provedor KMS |
Veja Também
- MongoDB\Driver\Manager::createClientEncryption() - Cria um novo objeto ClientEncryption
- » Criptografia explícita (manual) em nível de campo do lado do cliente in the MongoDB manual