ClientEncryption.encryptExpression(keyId, expression, encOptions)
ClientEncryption.encryptExpression
は、クエリ対象フィールドの と ドキュメントのクエリタイプとアルゴリズムを使用して、 範囲インデックスをクエリするための MQL式を暗号化します。keyId
encOptions
クエリの暗号化された結果を返します。次の値を返します。 The encrypted result of the query as a
binary data
object with subtype 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(Customer Master Key)管理用に次のKMS ( 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()
をご覧ください。