MongoDB は、自動暗号化共有ライブラリ(推奨)または mongocryptd 実行可能プロセスを使用して、クエリを暗号化されたクエリに変換し、データを暗号化または復号化します。
始める前に
続行する前に、前述のタスクに従って、 Queryable Encryptionと互換性のあるドライバーと依存関係をがインストールしてください。
クエリ分析コンポーネントの選択
自動暗号化共有ライブラリ
自動暗号化共有ライブラリは、クライアント アプリケーションで自動暗号化を実行できるようにする動的ライブラリです。 動的ライブラリは、コンパイル時ではなく実行時にアプリケーションによってアクセスされる機能のセットです。 自動暗号化共有ライブラリは、次のタスクを実行します。
暗号化スキーマを読み取って、どのフィールドを暗号化または復号化するかを決定します
アプリケーションが暗号化されたフィールドに対してサポートされていない操作を実行するのを防ぎます
自動暗号化共有ライブラリは、次のいずれも実行しません。
データの暗号化または復号化の実行
暗号化のキーマテリアルにアクセスする
ネットワーク経由のデータをリッスンする
自動暗号化共有ライブラリはmongocryptdの代替として推奨され、自動暗号化を実行するために別のプロセスを開始する必要はありません。
mongocryptd
重要
自動暗号化共有ライブラリの使用
新しいプロジェクトを開始する場合は、 自動暗号化共有ライブラリ を使用します。 自動暗号化共有ライブラリはmongocryptdを置き換え、新しいプロセスを開始する必要はありません。
mongocryptd は MongoDB Enterprise Server とともにインストールされます。
使用中の暗号化を使用して MongoDB クライアントを作成すると、 mongocryptdプロセスがデフォルトで自動的に開始されます。
mongocryptdプロセスでは以下の操作が実行されます。
指定された自動暗号化ルールを使用して、暗号化の読み取り操作および書込み (write) 操作のフィールドをマークします。
暗号化されたフィールドでサポートされていない操作が実行されるのを防ぎます。
データベース接続に指定された暗号化スキーマを解析します。 自動暗号化ルールは、JSON schema 構文の厳密なサブセットを使用します。 ルールに無効な自動暗号化構文または
schema validation構文が含まれている場合、mongocryptdはエラーを返します。
mongocryptd は、前の機能のみを実行し、次の機能は実行しません。
mongocryptd暗号化または復号化は実行されませんmongocryptd暗号化のキー リソースにはアクセスしません。mongocryptdネットワーク経由でリッスンしない
フィールドの暗号化と自動復号化を実行するために、ドライバーは Apache ライセンスのlibmongocrypt ライブラリを使用します。
手順
次のステップ
クエリ分析コンポーネントをインストールしたら、キー管理システムに CMK を作成します。