PHP Conference Nagoya 2025

MongoDB\Driver\ClientEncryption::createDataKey

(mongodb >=1.7.0)

MongoDB\Driver\ClientEncryption::createDataKeyCréer un document clé

Description

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

Créer un nouveau document clé et l'insère dans la collection de coffre de clés.

Liste de paramètres

kmsProvider

Le fournisseur KMS (par exemple "local", "aws") qui sera utilisé pour chiffrer le nouveau document clé.

options

Options de données de clé
Option Type Description
masterKey array

Le document masterKey identifie une clé spécifique à KMS utilisée pour chiffrer le nouveau document clé. Cette option est requise à moins que kmsProvider soit "local".

Options du fournisseur "aws"
Option Type Description
region string Requis.
key string Requis. Le nom de ressource Amazon (ARN) de la clé maîtresse du client AWS (CMK).
endpoint string Optionnel. Un identifiant d'hôte alternatif pour envoyer les demandes KMS. Peut inclure le numéro de port.

Options du fournisseur "azure"
Option Type Description
keyVaultEndpoint string Requis. Hôte avec port optionnel (par exemple, "example.vault.azure.net").
keyName string Requis.
keyVersion string Optionnel. Une version spécifique de la clé nommée. Par défaut, la version primaire de la clé est utilisée.

Options du fournisseur "gcp"
Option Type Description
projectId string Requis.
location string Requis.
keyRing string Requis.
keyName string Requis.
keyVersion string Optionnel. Une version spécifique de la clé nommée. Par défaut, la version primaire de la clé est utilisée.
endpoint string Optionnel. Hôte avec port optionnel. La valeur par défaut est "cloudkms.googleapis.com".

Options du fournisseur "kmip"
Option Type Description
keyId string Optionnel. Identifiant unique d'un objet géré de 96 octets de données secrètes KMIP. S'il n'est pas spécifié, le pilote crée un objet géré aléatoire de 96 octets de données secrètes KMIP.
endpoint string Optionnel. Hôte avec port optionnel.

keyAltNames array

Une liste optionnelle de noms alternatifs de chaîne utilisés pour référencer une clé. Si une clé est créée avec des noms alternatifs, alors le chiffrement peut se référer à la clé par le nom alternatif unique au lieu de par _id.

keyMaterial MongoDB\BSON\Binary

Une valeur optionnelle de 96 octets à utiliser comme matériel de clé pour le document clé en cours de création. Si keyMateria est donné, le matériel de clé personnalisé est utilisé pour chiffrer et déchiffrer les données. Sinon, le matériel de clé pour le nouveau document clé est généré à partir d'un dispositif aléatoire cryptographiquement sécurisé.

Valeurs de retour

Renvoie un identifiant du nouveau document clé en tant qu'objet MongoDB\BSON\Binary avec le sous-type 4 (UUID).

Erreurs / Exceptions

  • Lance une exception MongoDB\Driver\AuthenticationException si une identification est nécessaire mais qu'elle échoue
  • Lance une exception MongoDB\Driver\ConnectionException si la connexion au serveur échoue pour une autre raison qu'en raison d'un problème d'identification
  • Lance une MongoDB\Driver\Exception\RuntimeException sur d'autres erreurs.

Historique

Version Description
PECL mongodb 1.15.0 Ajout de l'option "keyMaterial".
PECL mongodb 1.10.0 Azure et GCP sont désormais pris en charge en tant que fournisseurs KMS pour le chiffrement côté client.

add a note

User Contributed Notes

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