PHP Conference Japan 2024

MongoDB\Driver\ClientEncryption::createDataKey

(mongodb >=1.7.0)

MongoDB\Driver\ClientEncryption::createDataKey创建密钥文档

描述

final public MongoDB\Driver\ClientEncryption::createDataKey(string $kmsProvider, ?array $options = null): MongoDB\BSON\Binary

创建一个新的密钥文档并将其插入密钥保管库集合。

参数

kmsProvider

将用于加密新数据密钥的 KMS 提供程序(例如 "local""aws")。

options

数据密钥选项
选项 类型 描述
masterKey array

masterKey 文档标识用于加密新数据密钥的特定于 KMS 的密钥。除非 kmsProvider"local",否则此选项是必需的。

"aws" 提供程序选项
选项 类型 描述
region string 必需。
key string 必需。指向 AWS 客户主密钥 (CMK) 的 Amazon 资源名称 (ARN)。
endpoint string 可选。发送 KMS 请求的备用主机标识符。可以包含端口号。

"azure" 提供程序选项
选项 类型 描述
keyVaultEndpoint string 必需。主机,可选端口(例如,“example.vault.azure.net”)。
keyName string 必需。
keyVersion string 可选。命名密钥的特定版本。默认为使用密钥的主版本。

"gcp" 提供程序选项
选项 类型 描述
projectId string 必需。
location string 必需。
keyRing string 必需。
keyName string 必需。
keyVersion string 可选。命名密钥的特定版本。默认为使用密钥的主版本。
endpoint string 可选。主机,可选端口。默认为“cloudkms.googleapis.com”。

"kmip" 提供程序选项
选项 类型 描述
keyId string 可选。96 字节 KMIP 密钥数据托管对象的唯一标识符。如果未指定,驱动程序将创建一个随机的 96 字节 KMIP 密钥数据托管对象。
endpoint string 可选。主机,可选端口。

keyAltNames array

用于引用密钥的可选字符串备用名称列表。如果使用备用名称创建密钥,则加密可以使用唯一的备用名称而不是 _id 来引用密钥。

keyMaterial MongoDB\BSON\Binary

可选的 96 字节值,用作正在创建的数据密钥的自定义密钥材料。如果提供了 keyMaterial,则自定义密钥材料将用于加密和解密数据。否则,新数据密钥的密钥材料将从密码安全随机设备生成。

返回值

返回新密钥的标识符,作为具有子类型 4(UUID)的 MongoDB\BSON\Binary 对象。

错误/异常

变更日志

版本 描述
PECL mongodb 1.15.0 添加了 "keyMaterial" 选项。
PECL mongodb 1.10.0 Azure 和 GCP 现在作为客户端加密的 KMS 提供程序受支持。

添加注释

用户贡献的注释

此页面没有用户贡献的注释。
To Top