Longhorn PHP 2026 - Call For Papers

MongoDB\Driver\ClientEncryption::createDataKey

(mongodb >=1.7.0)

MongoDB\Driver\ClientEncryption::createDataKeyCrea un documento de clave

Descripción

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

Crea un nuevo documento de clave e inserta en la colección de almacén de claves.

Parámetros

kmsProvider
El proveedor KMS (por ejemplo "local", "aws") que se utilizará para cifrar la nueva clave de datos.
options

Opciones de clave de datos
Opción Tipo Descripción
masterKey array El documento masterKey identifica una clave específica del KMS utilizada para cifrar la nueva clave de datos. Esta opción es obligatoria a menos que kmsProvider sea "local".

Opciones del proveedor "aws"
Opción Tipo Descripción
region string Requis.
key string Requis. El nombre de recurso Amazon (ARN) de la clave maestra del cliente AWS (CMK).
endpoint string Opcional. Un identificador de host alternativo para enviar las solicitudes KMS. Puede incluir el número de puerto.

Opciones del proveedor "azure"
Opción Tipo Descripción
keyVaultEndpoint string Requis. Host con puerto opcional (por ejemplo, "example.vault.azure.net").
keyName string Requis.
keyVersion string Opcional. Una versión específica de la clave nombrada. Por omisión, se utiliza la versión primaria de la clave.

Opciones del proveedor "gcp"
Opción Tipo Descripción
projectId string Requis.
location string Requis.
keyRing string Requis.
keyName string Requis.
keyVersion string Opcional. Una versión específica de la clave nombrada. Por omisión, se utiliza la versión primaria de la clave.
endpoint string Opcional. Host con puerto opcional. El valor por omisión es "cloudkms.googleapis.com".

Opciones del proveedor "kmip"
Opción Tipo Descripción
keyId string Opcional. Identificador único de un objeto gestionado de 96 bytes de datos secretos KMIP. Si no se especifica, el controlador crea un objeto gestionado aleatorio de 96 bytes de datos secretos KMIP.
endpoint string Opcional. Host con puerto opcional.
delegated bool Opcional. Si es verdadero, esta clave debe ser descifrada por el servidor KMIP.

keyAltNames array Una lista opcional de nombres alternativos de tipo string utilizados para referenciar una clave. Si se crea una clave con nombres alternativos, entonces el cifrado puede referirse a la clave mediante el nombre alternativo único en lugar de por _id.
keyMaterial MongoDB\BSON\Binary Un valor opcional de 96 bytes para usar como material de clave personalizado para la clave de datos que se está creando. Si se proporciona keyMaterial, el material de clave personalizado se utiliza para cifrar y descifrar datos. De lo contrario, el material de la nueva clave de datos se genera a partir de un dispositivo criptográficamente seguro aleatorio.

Valores devueltos

Devuelve el identificador de la nueva clave como un objeto MongoDB\BSON\Binary con subtipo 4 (UUID).

Errores/Excepciones

  • Lanza una excepción MongoDB\Driver\InvalidArgumentException en caso de error durante el análisis de un argumento.
  • Lanza una excepción MongoDB\Driver\ConnectionException si la conexión al servidor falla por una razón distinta a un problema de identificación
  • Lanza una excepción MongoDB\Driver\AuthenticationException si se requiere una identificación pero falla
  • Lanza MongoDB\Driver\Exception\RuntimeException en caso de otros errores.

Historial de cambios

Versión Descripción
PECL mongodb 1.20.0 Añadido "delegated" a las opciones de masterKey del proveedor KMIP.
PECL mongodb 1.15.0 Añadida la opción "keyMaterial".
PECL mongodb 1.10.0 Azure y GCP ahora son compatibles como proveedores KMS para cifrado lado-cliente.
add a note

User Contributed Notes

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