MongoDB\Driver\ClientEncryption::encrypt
(mongodb >=1.7.0)
MongoDB\Driver\ClientEncryption::encrypt — Encrypt a value
説明
$value
, ?array $options
= null
): MongoDB\BSON\BinaryEncrypts the value.
パラメータ
value
-
The value to be encrypted. Any value that can be inserted into MongoDB can be encrypted using this method.
options
-
Encryption options Option Type Description algorithm string The encryption algorithm to be used. This option is required. Specify one of the following ClientEncryption constants:
MongoDB\Driver\ClientEncryption::AEAD_AES_256_CBC_HMAC_SHA_512_DETERMINISTIC
MongoDB\Driver\ClientEncryption::AEAD_AES_256_CBC_HMAC_SHA_512_RANDOM
MongoDB\Driver\ClientEncryption::ALGORITHM_INDEXED
MongoDB\Driver\ClientEncryption::ALGORITHM_UNINDEXED
MongoDB\Driver\ClientEncryption::ALGORITHM_RANGE
contentionFactor int The contention factor for evaluating queries with indexed, encrypted payloads.
This option only applies and may only be specified when
algorithm
isMongoDB\Driver\ClientEncryption::ALGORITHM_INDEXED
orMongoDB\Driver\ClientEncryption::ALGORITHM_RANGE
.keyAltName string Identifies a key vault collection document by
keyAltName
. This option is mutually exclusive withkeyId
and exactly one is required.keyId MongoDB\BSON\Binary Identifies a data key by
_id
. The value is a UUID (binary subtype 4). This option is mutually exclusive withkeyAltName
and exactly one is required.queryType string The query type for evaluating queries with indexed, encrypted payloads. Specify one of the following ClientEncryption constants:
MongoDB\Driver\ClientEncryption::QUERY_TYPE_EQUALITY
MongoDB\Driver\ClientEncryption::QUERY_TYPE_RANGE_PREVIEW
This option only applies and may only be specified when
algorithm
isMongoDB\Driver\ClientEncryption::ALGORITHM_INDEXED
orMongoDB\Driver\ClientEncryption::ALGORITHM_RANGE
.rangeOpts array Index options for a queryable encryption field supporting "range" queries. The options below must match the values set in the
encryptedFields
of the target collection. For double and decimal128 BSON field types,min
,max
, andprecision
must all be set, or all be unset.Range index options Option Type Description min mixed Required if precision
is set. The minimum BSON value of the range.max mixed Required if precision
is set. The maximum BSON value of the range.sparsity int Optional. Positive 64-bit integer. precision int Optional. Positive 32-bit integer specifying precision to use for explicit encryption. May only be set for double or decimal128 BSON field types. trimFactor int Optional. Positive 32-bit integer.
戻り値
Returns the encrypted value as MongoDB\BSON\Binary object with subtype 6.
エラー / 例外
- Throws MongoDB\Driver\Exception\InvalidArgumentException on argument parsing errors.
- Throws MongoDB\Driver\Exception\EncryptionException if an error occurs while encrypting the value
変更履歴
バージョン | 説明 |
---|---|
PECL mongodb 1.20.0 |
Added the "trimFactor" range option. The
"sparsity" range option is now optional.
|
PECL mongodb 1.16.0 |
Added the "rangeOpts" option.
|
PECL mongodb 1.14.0 |
Added the "contentionFactor" and
"queryType" options.
|
参考
- MongoDB\Driver\ClientEncryption::decrypt() - Decrypt a value
- MongoDB\Driver\ClientEncryption::encryptExpression() - Encrypts a match or aggregate expression