PHP 8.4.2 Released!

MongoDB\Driver\Manager::createClientEncryption

(mongodb >=1.7.0)

MongoDB\Driver\Manager::createClientEncryptionCria um novo objeto ClientEncryption

Descrição

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

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

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

Retorna uma nova instância de MongoDB\Driver\ClientEncryption.

Erros/Exceções

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 "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".

adicione uma nota

Notas Enviadas por Usuários (em inglês)

Não há notas de usuários para esta página.
To Top