AI 에이전트의 경우: 문서 인덱스는 https://www.mongodb.com/ko-kr/docs/llms.txt에서 사용할 수 있으며, 모든 페이지의 마크다운 버전은 어떤 URL 경로에 .md를 추가하여 사용할 수 있습니다.
Docs Menu

ClientEncryption.encryptExpression() (mongosh 메서드)

ClientEncryption.encryptExpression(keyId, expression, encOptions)

ClientEncryption.encryptExpression 쿼리된 필드의 keyId, encOptions 문서의 쿼리 유형 및 알고리즘을 사용하여 범위 인덱스를 쿼리하기 위해 MQL 표현식을 암호화합니다. 쿼리의 암호화된 결과를 반환합니다.

반환합니다:

쿼리 의 암호화됨 결과는 하위 6 binary data 유형이 인 객체 입니다.

이 명령은 다음 환경에서 호스팅되는 배포에서 사용할 수 있습니다.

  • MongoDB Atlas: The fully managed service for MongoDB deployments in the cloud
clientEncryption = db.getMongo().getClientEncryption()
clientEncryption.encryptExpression(
keyId,
expression,
encOptions
)
Parameter
유형
설명

keyId

UUID

표현식 에서 쿼리된 필드 에 대한 데이터 암호화 키 .

The UUID is a BSON binary data object with subtype 4 that identifies a specific data encryption key. If the data encryption key does not exist in the key vault configured for the database connection, encryptExpression() returns an error. See Key Vault Collections for more information on key vaults and data encryption keys.

expression

문서

다음 중 하나로 암호화할 범위 쿼리 표현식 입니다.

  • {$and: [{<field>: {$gt: <value1>}}, {<field>: {$lt: <value2> }}]}형식의 $match 표현식

  • {$and: [{$gt: [<fieldpath>, <value1>]}, {$lt: [<fieldpath>, <value2>]}]}형식의 aggregate 표현식

표현식은 $lte 또는 $gte를 사용할 수도 있습니다.

encOptions

문서

필드가 있는 문서 :

  • algorithm: expression 암호화에 사용할 암호화 알고리즘 입니다. "range"(으)로 설정하다 해야 합니다.

  • queryType: 쿼리 유형입니다. "range"(으)로 설정하다 해야 합니다.

  • rangeOptions: 범위 쿼리 설정이 있는 문서 입니다. 값은 컬렉션의 암호화 스키마 에 있는 값과 일치해야 합니다.

    • min, max: 필드의 BSON types와 일치하는 최소값 및 최대값.

    • precision: double 및 decimal128 필드를 쿼리할 때 MongoDB 고려하는 유효 자릿수입니다.

    • sparsity: MongoDB 범위 값을 얼마나 철저히 인덱스하는지에 영향을 줍니다.

    • trimFactor: 동시 삽입 및 업데이트의 처리량 제어합니다.

  • contentionFactor: 표현식 에 있는 필드 값의 빈도와 관련이 있습니다. 자세한 내용은 경합을 참조하세요.

The mongosh client-side field level and queryable encryption methods require a database connection configured for client-side encryption. If the current database connection was not initiated with client-side field level encryption enabled, either:

or

clientEncryption.encryptExpression(
UUID("64e2d87d-f168-493c-bbdf-a394535a2cb9"),
{
$and: [{ val: { $gt: Int32('100') } }, { val: { $lt: Int32('150') } }]
},
{
algorithm: 'range',
queryType: 'range',
rangeOptions: { min: Int32('0'), max: Int32('200') },
contentionFactor: 8
})

성공적인 하면 ClientEncryption.encryptExpression 가 암호화됨 쿼리 결과를 반환합니다.

클라이언트 측 필드 레벨 암호화 또는 Queryable Encryption 활성화된 상태에서 MongoDB 연결을 시작하는 방법에 대한 전체 문서는 Mongo()를 참조하세요.

이 페이지 평가하기