ClientEncryption.encryptExpression(keyId, expression, encOptions)
ClientEncryption.encryptExpression
쿼리된 필드의keyId
,encOptions
문서의 쿼리 유형 및 알고리즘을 사용하여 범위 인덱스를 쿼리하기 위해 MQL 표현식 을 암호화합니다. 쿼리 의 암호화됨 결과를 반환합니다.반환합니다: 쿼리 의 암호화됨 결과는
binary data
하위 유형 을 6 가진 객체 입니다.
호환성
이 명령은 다음 환경에서 호스팅되는 배포에서 사용할 수 있습니다.
MongoDB Atlas: 클라우드에서의 MongoDB 배포를 위한 완전 관리형 서비스
MongoDB Enterprise: MongoDB의 구독 기반 자체 관리 버전
MongoDB Community: MongoDB의 소스 사용 가능 무료 자체 관리 버전
구문
clientEncryption = db.getMongo().getClientEncryption() clientEncryption.encryptExpression( keyId, expression, encOptions )
Parameter | 유형 | 설명 |
---|---|---|
|
| 표현식 에서 쿼리된 필드 에 대한 데이터 암호화 키 . UUID는 특정 데이터 암호화 키 식별하는 하위 유형 이 있는 BSON 객체 입니다. |
| 문서 | |
| 문서 | 필드가 있는 문서 :
|
행동
mongosh
클라이언트 사이드 필드 수준 및 Queryable Encryption 메서드를 사용하려면 클라이언트 사이드 암호화를 위해 구성된 데이터베이스 연결이 필요합니다. 클라이언트 사이드 필드 수준 암호화가 활성화된 상태에서 현재 데이터베이스 연결이 시작되지 않은 경우 다음 중 하나를 수행합니다.
mongosh
의Mongo()
생성자를 사용하여 필요한 클라이언트 사이드 필드 수준 암호화 옵션과 연결을 설정합니다.Mongo()
메서드는 고객 마스터 키(CMK) 관리를 위해 다음과 같은 키 관리 서비스(KMS) 공급자를 지원합니다.
or
mongosh
명령줄 옵션을 사용하여 필요한 옵션과의 연결을 설정합니다. 명령줄 옵션은 CMK 관리를 위한 Amazon Web Services KMS 제공자만 지원합니다.
예시
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()
를 참조하세요.