(mongodb >=1.7.0)
MongoDB\Driver\Manager::createClientEncryption — 建立新的 ClientEncryption 物件
$options): MongoDB\Driver\ClientEncryption使用指定的選項建構新的 MongoDB\Driver\ClientEncryption 物件。
options
| 選項 | 型別 | 描述 |
|---|---|---|
| keyVaultClient | MongoDB\Driver\Manager | 用於將資料金鑰查詢路由到單獨 MongoDB 叢集的 Manager。預設情況下,會使用目前的 Manager 和叢集。 |
| keyVaultNamespace | string | 一個完全限定的命名空間(例如 "databaseName.collectionName"),表示包含所有用於加密和解密的資料金鑰的集合。此選項是必要的。 |
| kmsProviders | array |
包含一個或多個 KMS 提供者配置的文件,這些提供者用於加密資料金鑰。支援的提供者包括 如果為
aws: {
accessKeyId: <string>,
secretAccessKey: <string>,
sessionToken: <optional string>
}
azure: {
tenantId: <string>,
clientId: <string>,
clientSecret: <string>,
identityPlatformEndpoint: <optional string> // Defaults to "login.microsoftonline.com"
}
gcp: {
email: <string>,
privateKey: <base64 string>|<MongoDB\BSON\Binary>,
endpoint: <optional string> // Defaults to "oauth2.googleapis.com"
}
kmip: {
endpoint: <string>
}
local: {
// 96-byte master key used to encrypt/decrypt data keys
key: <base64 string>|<MongoDB\BSON\Binary>
}
|
| tlsOptions | array |
包含一個或多個 KMS 提供者 TLS 配置的文件。支援的提供者包括 <provider>: {
tlsCaFile: <optional string>,
tlsCertificateKeyFile: <optional string>,
tlsCertificateKeyFilePassword: <optional string>,
tlsDisableOCSPEndpointCheck: <optional bool>
}
|
回傳新的 MongoDB\Driver\ClientEncryption 執行個體。
| 版本 | 描述 |
|---|---|
| PECL mongodb 1.16.0 |
用於客戶端加密的 AWS KMS 提供者現在接受 將 如果為 |
| PECL mongodb 1.15.0 |
如果為 |
| PECL mongodb 1.12.0 |
KMIP 現在支援作為客戶端加密的 KMS 提供者,並且可以在 新增 |
| PECL mongodb 1.10.0 | Azure 和 GCP 現在支援作為客戶端加密的 KMS 提供者,並且可以在 "kmsProviders" 選項中配置。Base64 編碼字串現在可作為 MongoDB\BSON\Binary 的替代方案,用於 "kmsProviders" 中的選項。 |