Dutch PHP Conference 2025 - Call For Papers

MongoDB\Driver\ClientEncryption::__construct

(mongodb >=1.14.0)

MongoDB\Driver\ClientEncryption::__constructCreate a new ClientEncryption object

Опис

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

Constructs a new MongoDB\Driver\ClientEncryption object with the specified options.

Параметри

options

options
Option Type Description
keyVaultClient MongoDB\Driver\Manager The Manager used to route data key queries. This option is required (unlike with MongoDB\Driver\Manager::createClientEncryption()).
keyVaultNamespace string Повна назва простору імен (напр. "databaseName.collectionName"), що позначає колекцію, яка містить усі ключі даних, що використовуються для шифрування та дешифрування. Цей параметр є обов'язковим.
kmsProviders array

Документ, що містить налаштування для одного або кількох KMS-провайдерів, які використовуються для шифрування ключів даних. Підтримувані провайдери: "aws", "azure", "gcp", "kmip" і "local". Цей параметр є обов'язковим.

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

Формат для "aws" наступний:

aws: {
    accessKeyId: <string>,
    secretAccessKey: <string>,
    sessionToken: <string (необов&apos;язковий)>
}

Формат для "azure" наступний:

azure: {
    tenantId: <string>,
    clientId: <string>,
    clientSecret: <string>,
    identityPlatformEndpoint: <string (необов&apos;язковий)> // Початково: "login.microsoftonline.com"
}

Формат для "gcp" наступний:

gcp: {
    email: <string>,
    privateKey: <base64 string>|<MongoDB\BSON\Binary>,
    endpoint: <string (необов&apos;язковий)> // Початково: "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: <string> (необов&apos;язковий),
    tlsCertificateKeyFile: <string> (необов&apos;язковий),
    tlsCertificateKeyFilePassword: <string> (необов&apos;язковий),
    tlsDisableOCSPEndpointCheck: <bool> (необов&apos;язковий)
}

Помилки/виключення

Журнал змін

Версія Опис
PECL mongodb 1.16.0

The AWS KMS provider for client-side encryption now accepts a "sessionToken" option, which can be used to authenticate with temporary AWS credentials.

Added "tlsDisableOCSPEndpointCheck" to the "tlsOptions" option.

If an empty document is specified for the "azure" or "gcp" KMS provider, the driver will attempt to configure the provider using » Automatic Credentials.

PECL mongodb 1.15.0

If an empty document is specified for the "aws" KMS provider, the driver will attempt to configure the provider using » Automatic Credentials.

Прогляньте також

add a note

User Contributed Notes

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