(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 | 字符串 | 一个完全限定的命名空间(例如 "databaseName.collectionName"),表示包含用于加密和解密的所有数据密钥的集合。此选项是必需的。 |
| kmsProviders | 数组 |
一个文档,包含一个或多个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 | 数组 |
一个包含一个或多个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"中的选项。 |