PHPerKaigi 2024

MongoDB\Driver\ClientEncryption::createDataKey

(mongodb >=1.7.0)

MongoDB\Driver\ClientEncryption::createDataKeyСоздаёт документ с ключом

Описание

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

Создаёт новый документ с ключом шифрования и кладёт его в коллекцию хранилища ключей.

Список параметров

kmsProvider

Провайдер KMS ("local", "aws"), который будет использоваться для шифрования нового ключа данных.

options

Опции
Опция Тип Описание
masterKey array

Документ masterKey определяет специфический для KMS ключ, используемый для шифрования нового ключа данных. Параметр обязателен, если параметр kmsProvider не является "local".

Параметры провайдера "aws"
Параметр Тип Описание
region Строка Обязательный.
key Строка Обязательный. Имя ресурса Amazon (ARN) для главного ключа клиента AWS (CMK).
endpoint Строка Необязательный. Альтернативный идентификатор хоста для отправки запросов KMS. Может содержать номер порта.

Параметры провайдера "azure"
Параметр Тип Описание
keyVaultEndpoint Строка Обязательный. Хост с необязательным портом (например, "example.vault.azure.net").
keyName Строка Обязательный.
keyVersion Строка Необязательный. Определённая версия именованного ключа. По умолчанию — первичная версия ключа.

Параметры провайдера "gcp"
Параметр Тип Описание
projectId Строка Обязательный.
location Строка Обязательный.
keyRing Строка Обязательный.
keyName Строка Обязательный.
keyVersion Строка Необязательный. Определённая версия именованного ключа. По умолчанию — первичная версия ключа.
endpoint Строка Необязательный. Хост с дополнительным портом. По умолчанию "cloudkms.googleapis.com"..

Параметры провайдера "kmip"
Параметр Тип Описание
keyId Строка Необязательный. Уникальный идентификатор 96-байтового управляемого объекта секретных данных KMIP. Если не указан, драйвер создаёт случайный 96-байтовый управляемый объект секретных данных KMIP.
endpoint Строка Необязательный. Хост с дополнительным портом.

keyAltNames array

Опциональный список альтернативных имён использующихся для ссылки на ключ. Если ключ создан с использованием альтернативных имён, то при шифровании можно ссылаться на уникальное альтернативное имя вместо _id.

keyMaterial MongoDB\BSON\Binary

Необязательное 96-байтовое значение для использования в качестве материала пользовательского ключа для создаваемого ключа данных. Если задан keyMaterial, то используется пользовательский материал ключа для шифрования и расшифровки данных. В противном случае материал ключа для нового ключа данных генерируется из криптографически защищённого случайного устройства.

Возвращаемые значения

Возвращает идентификатор нового ключа в виде объекта MongoDB\BSON\Binary с подтипом 4 (UUID).

Ошибки

Список изменений

Версия Описание
PECL mongodb 1.15.0 Добавлена опция "keyMaterial".
PECL mongodb 1.10.0 В качестве поставщиков KMS для шифрования на стороне клиента теперь поддерживаются Azure и GCP.

add a note

User Contributed Notes

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