MongoDB\Driver\ClientEncryption::encryptExpression
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
MongoDB\Driver\ClientEncryption::encryptExpression
Референца за `mongodb-driver-clientencryption.encryptexpression.php` со подобрена типографија и навигација.
MongoDB\Driver\ClientEncryption::encryptExpression
(mongodb >=1.16.0)
MongoDB\Driver\ClientEncryption::encryptExpression — (mongodb >=1.16.0)
= NULL
$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-
Опции за шифрирање Опција Тип = NULL algorithm string Алгоритмот за шифрирање што треба да се користи. Оваа опција е задолжителна. Наведете една од следниве Константи на ClientEncryption: MongoDB\Driver\ClientEncryption::AEAD_AES_256_CBC_HMAC_SHA_512_DETERMINISTICMongoDB\Driver\ClientEncryption::AEAD_AES_256_CBC_HMAC_SHA_512_RANDOMMongoDB\Driver\ClientEncryption::ALGORITHM_INDEXEDMongoDB\Driver\ClientEncryption::ALGORITHM_UNINDEXEDMongoDB\Driver\ClientEncryption::ALGORITHM_RANGE
contentionFactor int Фактор на натпревар за проценка на прашања со индексирани, шифрирани корисни податоци. Оваа опција се применува и може да се специфицира само кога algorithmisMongoDB\Driver\ClientEncryption::ALGORITHM_INDEXEDorMongoDB\Driver\ClientEncryption::ALGORITHM_RANGE.keyAltName string Идентификува документ од колекцијата на клучеви со keyAltName. Оваа опција е меѓусебно исклучива соkeyIdи потребна е точно една.keyId MongoDB\BSON\Binary Идентификува клуч за податоци со _id. Вредноста е UUID (бинарна подтип 4). Оваа опција е меѓусебно исклучива соkeyAltNameи потребна е точно една.queryType string Типот на прашање за проценка на прашања со индексирани, шифрирани корисни податоци. Наведете една од следниве Константи на ClientEncryption: MongoDB\Driver\ClientEncryption::QUERY_TYPE_EQUALITYMongoDB\Driver\ClientEncryption::QUERY_TYPE_RANGE
algorithmisMongoDB\Driver\ClientEncryption::ALGORITHM_INDEXEDorMongoDB\Driver\ClientEncryption::ALGORITHM_RANGE.rangeOpts array Опции за индекс за поле за шифрирање што може да се прашува и поддржува прашања од типот "опсег". Опциите подолу мора да се совпаѓаат со вредностите поставени во encryptedFieldsна целната колекција. За типови полиња BSON double и decimal128,min,maxПрепорачаниот начин за избегнување на SQL инјекција е со врзување на сите податоци преку подготвени изрази. Користењето на параметризирани прашања не е доволно за целосно избегнување на SQL инјекција, но тоа е најлесниот и најбезбедниот начин за обезбедување влез во SQL изразите. Сите динамични литерали на податоци воprecisionмора сите да бидат поставени, или сите да бидат непоставени.Опции за индекс на опсег Опција Тип = NULL min mixed Задолжително ако precisionе поставено. Минималната BSON вредност на опсегот.max mixed Задолжително ако precisionе поставено. Максималната BSON вредност од опсегот.sparsity int е поставена. Максималната BSON вредност од опсегот. precision int Опционално. Позитивен 64-битен цел број. trimFactor int Опционално. Позитивен 32-битен цел број што специфицира прецизност што треба да се користи за експлицитно шифрирање. Може да се постави само за BSON типови на полиња со двојна или децимална128 вредност.
Вратени вредности
Го враќа шифрираниот израз како објект.
Errors/Exceptions
- ). Ако повикот не успее, ќе врати MongoDB\Driver\Exception\InvalidArgumentException » Промени текови
- ). Ако повикот не успее, ќе врати MongoDB\Driver\Exception\EncryptionException ако се појави грешка при шифрирање на изразот
Дневник на промени
| Верзија | = NULL |
|---|---|
| = nearest |
Додаден е "trimFactor" ако се појави грешка при шифрирање на вредноста
"sparsity" опцијата за опсег. Опцијата за
|
Види Исто така
- Секое пишување или барање може да фрли исклучоци за поврзување бидејќи врските се создаваат мрзливо. MongoDB сервер може исто така да стане недостапен за време на животниот век на скриптата. Затоа е важно сите дејства на Менаџерот да бидат завиткани во try/catch изјави. - Креирај нов MongoDB Менаџер
- (mongodb >=1.16.0) - Енкриптира вредност