MongoDB\Driver\ClientEncryption::encrypt
(mongodb >=1.7.0)
MongoDB\Driver\ClientEncryption::encrypt — Criptografa um valor
Descrição
$value
, ?array $options
= null
): MongoDB\BSON\BinaryCriptografa o valor.
Parâmetros
value
-
O valor a ser criptografado. Qualquer valor que possa ser inserido no MongoDB pode ser criptografado usando este método.
options
-
Opções de criptografia Opção Tipo Descrição algorithm string O algoritmo de criptografia a ser usado. Esta opção é obrigatória. Especifique uma das seguintes constantes ClientEncryption:
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 O fator de contenção para avaliar consultas com cargas indexadas e criptografadas.
Esta opção só se aplica e só pode ser especificada quando
algorithm
forMongoDB\Driver\ClientEncryption::ALGORITHM_INDEXED
ouMongoDB\Driver\ClientEncryption::ALGORITHM_RANGE
.keyAltName string Identifica um documento de coleção de cofres de chaves por
keyAltName
. Esta opção é mutuamente exclusiva comkeyId
e exatamente uma é necessária.keyId MongoDB\BSON\Binary Identifica uma chave de dados por
_id
. O valor é um UUID (subtipo binário 4). Esta opção é mutuamente exclusiva comkeyAltName
e exatamente uma é necessária.queryType string O tipo de consulta para avaliar consultas com cargas indexadas e criptografadas. Especifique uma das seguintes constantes ClientEncryption:
MongoDB\Driver\ClientEncryption::QUERY_TYPE_EQUALITY
MongoDB\Driver\ClientEncryption::QUERY_TYPE_RANGE
Esta opção só se aplica e só pode ser especificada quando
algorithm
forMongoDB\Driver\ClientEncryption::ALGORITHM_INDEXED
ouMongoDB\Driver\ClientEncryption::ALGORITHM_RANGE
.rangeOpts array Opções de índice para um campo de criptografia consultável compatível com consultas "range". As opções abaixo devem corresponder aos valores definidos nos
encryptedFields
da coleção de destino. Para tipos de campo double e decimal128 BSON,min
,max
eprecision
devem ser todos definidos ou nenhum definido.Opções de índice de intervalo Opção Tipo Descrição min mixed Obrigatória se precision
for definida. O valor BSON mínimo do intervalo.max mixed Obrigatória se precision
for definida. O valor BSON máximo do intervalo.sparsity int Opcional. Inteiro de 64 bits positivo. precision int Opcional. Inteiro positivo de 32 bits que especifica a precisão a ser usada para criptografia explícita. Só pode ser definida para tipos de campo double ou decimal128 BSON. trimFactor int Opcional. Inteiro positivo de 32 bits.
Valor Retornado
Retorna o valor criptografado como objeto MongoDB\BSON\Binary com subtipo 6.
Erros/Exceções
- Lança uma exceção MongoDB\Driver\Exception\InvalidArgumentException em caso de erro ao analisar argumentos.
- Lança MongoDB\Driver\Exception\EncryptionException se ocorrer um erro ao criptografar o valor
Registro de Alterações
Versão | Descrição |
---|---|
PECL mongodb 1.20.0 |
Adicionada a opção de intervalo "trimFactor" . A opção
de intervalo "sparsity" agora é opcional.
|
PECL mongodb 1.16.0 |
Adicionada a opção "rangeOpts" .
|
PECL mongodb 1.14.0 |
Adicionadas as opções "contentionFactor" e
"queryType" .
|
Veja Também
- MongoDB\Driver\ClientEncryption::decrypt() - Descriptografa um valor
- MongoDB\Driver\ClientEncryption::encryptExpression() - Criptografa uma expressão de correspondência ou de agregação