(mongodb >=1.16.0)
MongoDB\Driver\ClientEncryption::encryptExpression — Шифрует совпадение или агрегированное выражение
$expr
, ?array $options
= null
): objectШифрует совпадение или агрегированное выражение для запроса индекса диапазона.
Для выполнения запроса с зашифрованным диапазоном полезной нагрузки
драйвер MongoDB\Driver\Manager должен быть сконфигурирован
с опцией "autoEncryption"
.
Опция "bypassQueryAnalysis"
автоматического шифрования может иметь значение true
.
Опция "bypassAutoEncryption"
автоматического шифрования должна иметь значение false
.
Замечание:
Алгоритм работы с диапазоном является экспериментальным. Он не предназначен для публичного использования.
Модуль пока не поддерживает запросы диапазонов для BSON-полей с типом Decimal128.
expr
Соответствие или агрегированное выражение, которое необходимо зашифровать.
В выражениях должен использоваться хотя бы один из операторов
$gt
, $gte
, $lt
или $lte
.
Оператор верхнего уровня $and
необходим,
даже если используется только один оператор сравнения.
Пример поддерживаемого выражения соответствия (применяется для запросов
и этапа агрегации $match
) выглядит следующим образом:
[ '$and' => [ [ '<field>' => [ '$gt' => '<value1>' ] ], [ '<field>' => [ '$lte' => '<value2>' ] ], ], ]
Пример поддерживаемого агрегированного выражения выглядит следующим образом:
[ '$and' => [ [ '$gte' => [ '<fieldPath>', '<value1>' ] ], [ '$lt' => [ '<fieldPath>', '<value2>' ] ], ], ]
options
Опция | Тип | Описание | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
algorithm | string |
Алгоритм шифрования, который будет использоваться. Опция обязательна. Укажите одну из следующих констант ClientEncryption:
|
||||||||||||||||||
contentionFactor | int |
Коэффициент конкуренции для оценки запросов с индексированными зашифрованными полезными нагрузками.
Опция применяется и может быть указана только тогда, когда
опция |
||||||||||||||||||
keyAltName | string |
Идентифицирует документ коллекции хранилища ключей по |
||||||||||||||||||
keyId | MongoDB\BSON\Binary |
Идентифицирует ключ данных по |
||||||||||||||||||
queryType | string |
Тип запроса для оценки запросов с индексированными, зашифрованными полезными нагрузками. Укажите одну из следующих констант ClientEncryption:
Опция применяется и может быть указана только тогда, когда
опция |
||||||||||||||||||
rangeOpts | array |
Опции индекса для шифруемого поля с поддержкой запросов «range».
Параметры, которые приводят следующие абзацы, должны соответствовать значениям, которые установили
в параметре
|
Возвращает зашифрованное выражение в виде объекта.