MongoDB\Driver\Manager::createClientEncryption

(mongodb >=1.7.0)

MongoDB\Driver\Manager::createClientEncryptionСоздание нового объекта ClientEncryption

Описание

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

Создаёт новый объект MongoDB\Driver\ClientEncryption с заданными параметрами.

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

options

options
ПараметрТипОписание
keyVaultClientMongoDB\Driver\ManagerМенеджер маршрутизации запросов ключей данных в отдельный кластер MongoDB. По умолчанию метод выбирает текущий менеджер и кластер.
keyVaultNamespacestringПолное пространство имён (например, "databaseName.collectionName"), обозначающее коллекцию, которая содержит все ключи данных, используемые для шифрования и дешифрования. Обязательный параметр.
kmsProvidersarray

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

Если для "aws", "azure" или "gcp" указан пустой документ, драйвер попытается сконфигурировать провайдера, используя » Автоматические учётные данные.

Формат для "aws" выглядит следующим образом:

aws: { accessKeyId: <string>, secretAccessKey: <string>, sessionToken: <optional string> }

Формат для "azure" выглядит следующим образом:

azure: { tenantId: <string>, clientId: <string>, clientSecret: <string>, identityPlatformEndpoint: <optional string> }

Формат для "gcp" выглядит следующим образом:

gcp: { email: <string>, privateKey: <base64 string>|<MongoDB\BSON\Binary>, endpoint: <optional string> }

Формат для "kmip" выглядит следующим образом:

kmip: { endpoint: <string> }

Формат для "local" выглядит следующим образом:

local: { key: <base64 string>|<MongoDB\BSON\Binary> }
tlsOptionsarray

Документ, содержащий конфигурацию TLS для одного или нескольких KMS провайдеров. Поддерживаются провайдеры "aws", "azure", "gcp" и "kmip". Все провайдеры поддерживают следующие опции:

<provider>: { tlsCaFile: <optional string>, tlsCertificateKeyFile: <optional string>, tlsCertificateKeyFilePassword: <optional string>, tlsDisableOCSPEndpointCheck: <optional bool> }

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

Возвращает новый экземпляр MongoDB\Driver\ClientEncryption.

Ошибки

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

ВерсияОписание
PECL mongodb 1.16.0

Провайдер AWS KMS для шифрования на стороне клиента теперь принимает параметр "sessionToken", который можно использовать для аутентификации с временными учётными данными AWS.

Для опции "tlsOptions" добавлена настройка "tlsDisableOCSPEndpointCheck".

Если для KMS-провайдеров "azure" или "gcp" указан пустой документ, драйвер попытается сконфигурировать провайдера, заполнив » Автоматические учётные данные.

PECL mongodb 1.15.0

Если для KMS-провайдера "aws" указан пустой документ, драйвер попытается сконфигурировать провайдера, заполнив » Автоматические учётные данные.

PECL mongodb 1.12.0

KMIP теперь поддерживается в качестве KMS провайдера для шифрования на стороне клиента и может быть настроен с помощью параметра "kmsProviders".

Добавлен параметр "tlsOptions".

PECL mongodb 1.10.0 Azure и GCP теперь поддерживаются в качестве поставщиков KMS для шифрования на стороне клиента и могут быть настроены в поле "kmsProviders" параметра драйвера "autoEncryption". Строки в кодировке Base64 теперь принимаются в качестве альтернативы MongoDB\BSON\Binary для параметров внутри "kmsProviders".

Смотрите также

To Top