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

ПараметрТипОпис
keyVaultClientMongoDB\Driver\ManagerМенеджер маршрутизації запитів ключів даних окремий кластер MongoDB. За замовчуванням метод вибирає поточний менеджер та кластер.
keyVaultNamespacestringПовний простір імен (наприклад, "databaseName.collectionName"), що означає колекцію, яка містить усі ключі даних, що використовуються для шифрування та дешифрування. Обов'язковий параметр.
kmsProvidersarray
Документ, який містить конфігурацію для одного або кількох провайдерів KMS, які використовуються для шифрування ключів даних. Підтримуються провайдери "aws""azure""gcp"и"local", і принаймні один з них повинен бути вказаний.

Якщо для "aws" "azure"или"gcp" вказано порожній документ, драйвер спробує налаштувати провайдера, використовуючи » Автоматичні облікові дані

Формат для"aws" виглядає наступним чином:

aws: { accessKeyId:, secretAccessKey:, sessionToken:}

Формат для"azure" виглядає наступним чином:

azure: { tenantId:, clientId:, clientSecret:, identityPlatformEndpoint: // За замовчуванням "login.microsoftonline.com"

}

Формат для"gcp" виглядає наступним чином:

gcp: { email:, privateKey:|<MongoDB\BSON\Binary>, endpoint: // За замовчуванням "oauth2.googleapis.com"

}

Формат для"kmip" виглядає наступним чином:

kmip: { endpoint:}

Формат для"local" виглядає наступним чином:

local: { // 96-байтовий головний ключ, який використовується для шифрування/дешифрування ключів даних key: |<MongoDB\BSON\Binary> }

| | tlsOptions | array |

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

: { tlsCaFile:, tlsCertificateKeyFile:, tlsCertificateKeyFilePassword:, tlsDisableOCSPEndpointCheck:}

Значення, що повертаються

Повертає новий екземпляр 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".

Дивіться також