MongoDB\Driver\Manager::createClientEncryption

(mongodb >=1.7.0)

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

Описание

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

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

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

options

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

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

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

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

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

azure: {
    tenantId: <string>,
    clientId: <string>,
    clientSecret: <string>,
    identityPlatformEndpoint: <optional string> // По умолчанию "login.microsoftonline.com"

}

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

gcp: {
    email: <string>,
    privateKey: <base64 string>|<MongoDB\BSON\Binary>,
    endpoint: <optional string> // По умолчанию "oauth2.googleapis.com"

}

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

kmip: {
    endpoint: <string>
}

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

local: {
    // 96-байтовый главный ключ, используемый для шифрования/дешифрования ключей данных
    key: <base64 string>|<MongoDB\BSON\Binary>
}
tlsOptions array

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

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

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

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

Ошибки

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

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

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

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

add a note

User Contributed Notes

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