PHPCon Poland 2024

MongoDB\Driver\ClientEncryption::createDataKey

(mongodb >=1.7.0)

MongoDB\Driver\ClientEncryption::createDataKeyCreates a key document

Descrição

final public MongoDB\Driver\ClientEncryption::createDataKey(string $kmsProvider, ?array $options = null): MongoDB\BSON\Binary

Creates a new key document and inserts it into the key vault collection.

Parâmetros

kmsProvider

The KMS provider (e.g. "local", "aws") that will be used to encrypt the new data key.

options

Data key options
Option Type Description
masterKey array

The masterKey document identifies a KMS-specific key used to encrypt the new data key. This option is required unless kmsProvider is "local".

Opções do provedor "aws"
Opção Tipo Descrição
region string Obrigatória.
key string Obrigatória. O Nome de Recurso da Amazon (ARN) para a chave mestra do cliente (CMK) da AWS.
endpoint string Opcional. Um identificador de servidor alternativo para o qual enviar requisições KMS. Pode incluir o número da porta.

Opções do provedor "azure"
Opção Tipo Descrição
keyVaultEndpoint string Obrigatória. Servidor com porta opcional (por exemplo, "example.vault.azure.net").
keyName string Obrigatória.
keyVersion string Opcional. Uma versão específica da chave nomeada. O padrão é usar a versão primária da chave.

Opções do provedor "gcp"
Opção Tipo Descrição
projectId string Obrigatória.
location string Obrigatória.
keyRing string Obrigatória.
keyName string Obrigatória.
keyVersion string Opcional. Uma versão específica da chave nomeada. O padrão é usar a versão primária da chave.
endpoint string Opcional. Servidor com porta opcional. O padrão é "cloudkms.googleapis.com".

Opções do provedor "kmip"
Opção Tipo Descrição
keyId string Opcional. Identificador único para um objeto gerenciado de dados secretos KMIP de 96 bytes. Se não especificado, o driver cria um objeto gerenciado de dados secretos KMIP aleatório de 96 bytes.
endpoint string Opcional. Servidor com porta opcional.

keyAltNames array

An optional list of string alternate names used to reference a key. If a key is created with alternate names, then encryption may refer to the key by the unique alternate name instead of by _id.

keyMaterial MongoDB\BSON\Binary

An optional 96-byte value to use as custom key material for the data key being created. If keyMaterial is given, the custom key material is used for encrypting and decrypting data. Otherwise, the key material for the new data key is generated from a cryptographically secure random device.

Valor Retornado

Returns the identifier of the new key as a MongoDB\BSON\Binary object with subtype 4 (UUID).

Erros/Exceções

Registro de Alterações

Versão Descrição
PECL mongodb 1.15.0 Added the "keyMaterial" option.
PECL mongodb 1.10.0 Azure and GCP are now supported as KMS providers for client-side encryption.

add a note

User Contributed Notes

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