(mongodb >=1.7.0)
MongoDB\Driver\Manager::createClientEncryption — Cria um novo objeto ClientEncryption
$options): MongoDB\Driver\ClientEncryptionConstrói um novo objeto MongoDB\Driver\ClientEncryption com as opções especificadas.
options
| Opção | Tipo | Descrição |
|---|---|---|
| keyVaultClient | MongoDB\Driver\Manager | O Manager usado para rotear consultas de chave de dados para um cluster MongoDB separado. Por padrão, o Manager e o cluster atuais são usados. |
| 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>
}
"azure" é o seguinte:
azure: {
tenantId: <string>,
clientId: <string>,
clientSecret: <string>,
identityPlatformEndpoint: <string opcional> // O padrão é "login.microsoftonline.com"
}
"gcp" é o seguinte:
gcp: {
email: <string>,
privateKey: <string base64>|<MongoDB\BSON\Binary>,
endpoint: <string opcional> // O padrão é "oauth2.googleapis.com"
}
"kmip" é o seguinte:
kmip: {
endpoint: <string>
}
"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>
}
|
Retorna uma nova instância de MongoDB\Driver\ClientEncryption.
| Versão | Descrição |
|---|---|
| PECL mongodb 1.16.0 |
O provedor AWS KMS para criptografia do lado do cliente agora aceita uma
opção "sessionToken", que pode ser usada para
autenticação com credenciais temporárias da AWS.
Adicionado "tlsDisableOCSPEndpointCheck" à opção
"tlsOptions".
Se um documento vazio for especificado para o provedor KMS "azure" ou
"gcp", o driver tentará
configurar o provedor usando
» Credenciais Automáticas.
|
| PECL mongodb 1.15.0 |
Se um documento vazio for especificado para o provedor KMS "aws",
o driver tentará configurar o provedor usando
» Credenciais Automáticas.
|
| PECL mongodb 1.12.0 |
O KMIP agora é suportado como um provedor KMS para criptografia do lado do cliente e
pode ser configurado na opção "kmsProviders".
Adicionada a opção "tlsOptions".
|
| PECL mongodb 1.10.0 |
O Azure e o GCP agora são suportados como provedores KMS para criptografia
do lado do cliente e podem ser configurados na
opção "kmsProviders". Strings codificadas em Base64 agora são
aceitas como uma alternativa ao MongoDB\BSON\Binary
para opções dentro de "kmsProviders".
|