資格情報保管方法

Virtual DataPort では、外部の 資格情報保管方法 から JDBC データソースの資格情報を取得できます。つまり、データベースに保存されたサービスアカウントのユーザー名とパスワードをデータソースに入力する代わりに、パスワード保管方法に格納している「シークレット」の名前を入力します。すると実行時に、データソースがパスワード保管方法からユーザー名とパスワードを取得します。

資格情報保管方法を使用する主なメリットは以下のとおりです。

  • Virtual DataPort の開発者は、データベースのサービスアカウントのユーザー名とパスワードを把握する必要がなくなります。

  • 組織のセキュリティチームは、JDBC データソースが使用するサービスアカウントのパスワードをローテーションするように資格情報保管方法を構成できます。これにより、長期間使用されていたパスワードを短期間で変更できるようになり、セキュリティ侵害のリスクが低下します。資格情報保管方法を使用せずにサービスアカウントのパスワードを変更する場合は、データベース管理者と Virtual DataPort の管理者が同時にパスワードを変更するように調整しなければなりません。

  • 組織のセキュリティチームは、各サービスアカウントがどのアプリケーションに使用されているかを常に追跡できます。

資格情報保管方法へのアクセスの有効化

資格情報保管方法へのアクセスを有効にするには、以下の手順に従って実施してください。

  1. [Administration] メニュー > [Server configuration] に移動し、[Credentials vault] をクリックします。

  2. [Use external credentials vault] を選択して、組織が使用する [Provider] を指定します。

  3. 構成の詳細を入力します。内容は使用する資格情報保管方法によります。入力したら、[Ok] をクリックします。

    入力後の再起動は不要です。

  4. 資格情報保管方法から資格情報を取得する必要がある JDBC データソースを開き、[Authentication] から適切なオプションを選びます。

JDBC データソースを構成するとき、そのデータベースのサービスアカウントの資格情報を設定します。データソースは、その資格情報を使用してデータベースに接続し、クエリを実行します。 パススルーセッション資格情報 を有効にした場合でも、データソースは、基本ビューの作成プロセス中、テーブルとデータベースのビューを表示するために、このサービスアカウントを使用します。

このサービスアカウントの資格情報は、次を行うことで提示できます。

  1. このアカウントのユーザーとパスワードを入力する。

  2. あるいは、データソースがデータベースに接続する必要があるときに、資格情報保管方法からユーザーとパスワードを取得するように、データソースを構成する。

サポートされている資格情報保管方法

Virtual DataPort では、次の資格情報保管方法がサポートされています。

データソースが資格情報保管方法から資格情報を取得する方法

次のような状況を考えます。

  1. 組織の資格情報保管方法を使用するように Virtual DataPort が構成されているとします。つまり、[Server Configuration] ダイアログ > [Credentials vault] からこのシステムを有効化し、必要な構成を入力済みです。

  2. サービスアカウントのユーザー名とパスワードを入力するのではなく、パスワード保管方法から資格情報 (ユーザー名とパスワード) を取得するように、JDBC データソースが構成されているとします。

  3. データソースでは、 パススルー資格情報有効にしていない ものとします。

この場合、データソースがデータベースとのコネクションを初めて開く際に、次の動作が行われます。

  1. データソースが資格情報保管方法にリクエストを送信し、ユーザー名とパスワードを取得します。

  2. 取得した資格情報を使用して、データソースがデータベースとのコネクションを開きます。

  3. データソースは、このデータベースへのコネクションを再度作成する際の速度を向上させるために、この資格情報をハードドライブではなくメモリに保持します。

次回以降、このデータソースが同じデータベースとのコネクションを開く際は、次の操作を行います。

  1. データソースは、メモリに保存されている資格情報を使用してコネクションを開こうとします。この際、過去に資格情報保管方法から取得した資格情報を使用します。

  2. 接続に失敗した場合、データソースは資格情報保管方法に資格情報をリクエストして、再度接続を試みます。

  3. それでも接続に失敗した場合には、データソースからユーザーにエラーが返されます。

ステップ 1 とステップ 2 は、ユーザーが介在することなく、自動的に行われます。

このプロセスは、組織がどの資格情報保管方法を使用する場合でも同じです。Virtual DataPort がそれぞれの資格情報保管方法に資格情報を要求する方法だけが異なります。

その他の考慮すべき事項

  • デフォルトで、JDBC データソースは、データベースへの コネクションプール を作成します。資格情報保管方法に資格情報をリクエストするようにデータソースを構成する場合、新しいコネクションを開くプロセスは、プールが有効でも無効でも同じです。

  • データソースでパススルー資格情報のオプションを有効にした場合、データソースは Virtual DataPort に接続されたユーザーの資格情報を使用してクエリを実行します。また、資格情報保管方法から取得した資格情報は、データベースのイントロスペクションにのみ使用されます。つまり、[Create base view] をクリックして、データベースのテーブルとビューを表示する場合にのみ使用されます。

  • Virtual DataPort を再起動する場合、またはデータソースが再作成される場合 (構成を変更して [Save] をクリックした場合など)、このデータソース用にメモリに保存された資格情報はメモリから削除され、資格情報保管方法にリクエストされます。

  • Use Kerberos 認証オプションを使用して資格情報を取得するように、データソースを構成することもできます。この場合、データソースは資格情報保管方法から資格情報を取得し、この資格情報を使用して Kerberos チケットを取得します。