Overview
このガイドでは、KMIP(Key Management Interoperability Protocol)準拠のキープロバイダーを使用して、クライアント側フィールドレベル暗号化(CSFLE)対応のアプリケーションを構築する方法について説明します。
このガイドの手順を完了すると、次のものが作成されます。
KMIP準拠のキープロバイダーでホストされているカスタマー マスター キー。
カスタマー マスター キーを使用して暗号化されたフィールドを持つドキュメントを挿入する動作するクライアント アプリケーション。
始める前に
このチュートリアルを開始する前に、次の前提条件ステップを完了してください。
MongoDB ダウンロード センターから自動暗号化共有ライブラリをダウンロードする。MongoDB Enterprise Server Download セクションに移動し、次のオプションを選択します。
Version ドロップダウンで、
"current"とマークされているバージョンを選択します。[ Platform ] ドロップダウンで、プラットフォームを選択します。
Package のドロップダウンで、[
crypt_shared] を選択します。
アーカイブを展開し、共有ライブラリ ファイルへのパスを今後の使用のために保存します。
注意
クエリ分析コンポーネント
自動暗号化共有ライブラリは
mongocryptdの推奨される代替手段であり、自動暗号化を実行するために新しいプロセスを生成する必要はありません。このチュートリアルでは自動暗号化共有ライブラリを使用しますが、mongocryptdは今もサポートされています。MongoDB Atlas クラスターまたはローカル レプリカセット配置を構成し、接続文字列を今後の使用のために保存します。詳細については、「スタートガイド」チュートリアルを参照してください。
このガイド全体を通して、コード例ではプレースホルダー テキストを使用します。例を実行する前に、これらのプレースホルダーを独自の値に置き換えてください。
以下に例を挙げます。
dek_id := "<Your Base64 DEK ID>"
引用符で囲まれたすべての部分を DEK ID に置き換えます。
dek_id := "abc123"
以下のドロップダウン メニューから、コード例を表示するプログラミング言語を選択します。
完全なアプリケーション コード
KMS を設定する
注意
mongod は、起動時に KMIP 構成を読み取ります。 デフォルトでは、サーバーは KMIP プロトコル バージョン 1.2 を使用します。
バージョン 1.0 または 1.1 に接続するにはKMIP サーバーでは、useLegacyProtocol 設定を使用します。
詳細
CSFLE の仕組みについては、CSFLE の基礎 を参照してください。
このガイドで言及されているトピックについて詳しくは、次のリンクを参照してください。
CSFLE コンポーネントの詳細については、リファレンスページを参照してください。
カスタマー マスター キーとデータ暗号化キーの仕組みについては、「暗号化キーとキーヴォールト」ページを参照してください。
[ KMS プロバイダー ] ページで、 KMS プロバイダーが CSFLE キーを管理する方法を確認します。