PHP 8.1.24 Released!

MongoDB\Driver\Manager::createClientEncryption

(mongodb >=1.7.0)

MongoDB\Driver\Manager::createClientEncryptionCreate a new ClientEncryption object

Descrição

final public MongoDB\Driver\Manager::createClientEncryption(array $options): MongoDB\Driver\ClientEncryption

Constructs a new MongoDB\Driver\ClientEncryption object with the specified options.

Parâmetros

options

options
Option Type Description
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.

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>
}

Valor Retornado

Returns a new MongoDB\Driver\ClientEncryption instance.

Erros

Changelog

Versão Descrição
PECL mongodb 1.16.0

The AWS KMS provider for client-side encryption now accepts a "sessionToken" option, which can be used to authenticate with temporary AWS credentials.

PECL mongodb 1.12.0

KMIP is now supported as a KMS provider for client-side encryption and may be configured in the "kmsProviders" option.

Added the "tlsOptions" option.

PECL mongodb 1.10.0 Azure and GCP are now supported as KMS providers for client-side encryption and may be configured in the "kmsProviders" option. Base64-encoded strings are now accepted as an alternative to MongoDB\BSON\Binary for options within "kmsProviders".

Veja Também

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top