MongoDB\Driver\ClientEncryption::encrypt

(mongodb >=1.7.0)

MongoDB\Driver\ClientEncryption::encrypt加密值

描述

final public MongoDB\Driver\ClientEncryption::encrypt(mixed $value, ?array $options = null): MongoDB\BSON\Binary

加密值。

参数

value

要加密的值。任何可以插入 MongoDB 的值都可以使用此方法加密。

options

加密选项
选项 类型 描述
algorithm string

要使用的加密算法。此选项是必需的。指定以下 ClientEncryption 常量 之一

contentionFactor int

用于评估具有索引加密有效载荷的查询的争用因子。

此选项仅适用于 algorithmMongoDB\Driver\ClientEncryption::ALGORITHM_INDEXEDMongoDB\Driver\ClientEncryption::ALGORITHM_RANGE 时,并且只能在这些情况下指定。

keyAltName string

通过 keyAltName 标识密钥保管库集合文档。此选项与 keyId 互斥,并且必须且只能指定其中一个。

keyId MongoDB\BSON\Binary

通过 _id 标识数据密钥。该值是 UUID(二进制子类型 4)。此选项与 keyAltName 互斥,并且必须且只能指定其中一个。

queryType string

用于评估具有索引加密有效载荷的查询的查询类型。指定以下 ClientEncryption 常量 之一

此选项仅适用于 algorithmMongoDB\Driver\ClientEncryption::ALGORITHM_INDEXEDMongoDB\Driver\ClientEncryption::ALGORITHM_RANGE 时,并且只能在这些情况下指定。

rangeOpts array

支持“范围”查询的可查询加密字段的索引选项。以下选项必须与目标集合的 encryptedFields 中设置的值匹配。对于双精度和 decimal128 BSON 字段类型,必须设置 minmaxprecision,或者全部不设置。

范围索引选项
选项 类型 描述
min mixed 如果设置了 precision,则为必需。范围的最小 BSON 值。
max mixed 如果设置了 precision,则为必需。范围的最大 BSON 值。
sparsity int 必需。正的 64 位整数。
precision int 可选。正的 32 位整数,指定用于显式加密的精度。只能为双精度或 decimal128 BSON 字段类型设置。
trimFactor int 必需。正的 32 位整数。

返回值

返回加密后的值,作为 MongoDB\BSON\Binary 对象,子类型为 6。

错误/异常

变更日志

版本 描述
PECL mongodb 1.14.0 添加了 "contentionFactor""queryType" 选项。

添加注释

用户贡献注释

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