JDBC 接続の一方向 SSL

JDBC ベースのコネクタで通常の (一方向) SSL を使用していて、自己署名証明書や非パブリック認証局 (CA) によって署名された証明書がある場合は、証明書の信頼を構成する必要があります。

Tableau では、次のいずれかの方法を使用して、JDBC 接続に対して一方向 SSL 信頼を構成できます。

証明書を埋め込む

一部のコネクタは、ワークブックまたはデータ ストアへの証明書の埋め込みに対応しています。埋め込みが利用可能な場合は、Tableau Desktop を使用して CA 証明書を埋め込むことができます。

システムの信頼ストアに証明書をインストールする

埋め込みを利用できない場合は、証明書を信頼するように Java ランタイムを構成する必要があります。また、この方がすべてのワークブックに証明書を埋め込むよりも簡単に行うことができます。

Windows の場合:

CA 証明書や自己署名証明書を Windows ルート CA 信頼ストアにインストールできます。Java ランタイムは、システムのルート信頼ストアで信頼された CA を検索します。中間証明書ストレージは検索されません。

注: ルート CA をインストールしても接続の確立に問題がある場合は、中間証明書が欠落している可能性があります。TLS 標準では、サーバーがルート証明書を除くすべての証明書をチェーンで送信することが要求されますが、すべてのサーバーが準拠しているわけではありません。サーバーが中間証明書を送信しない場合は、中間証明書を正しく転送するようにサーバーを修正するか、ルート信頼ストアに中間証明書をインストールします。または、データ ソースに証明書を埋め込むか、ドライバーのプロパティを使用して信頼ストアを構成することもできます。

  1. Windows で「証明書」を検索します。
  2. [コンピューター証明書の管理 ] を選択します。
  3. [操作] メニューで [すべてのタスク] を選択し、Windows のバージョンに応じて次のいずれかの操作を行います。
    • [インポート] を選択してから、[ローカル マシン] を選択する。
    • [証明書の検索] を選択する。
  4. 証明書ファイルを検索します。
  5. [信頼されたルート証明機関] にインポートします。

Mac の場合:

カスタム証明書を Mac にインストールするには、次の手順に従って "システム" キーチェーンに証明書をインポートします。

注: Mac のキーチェーンから証明書を読み込むと、ほぼすべてのドライバーで動作します。ごくまれに、PROPERTIES ファイルを使用して信頼ストアを構成する必要があります。詳細については、「接続のカスタマイズと微調整」を参照してください。

  1. https://support.apple.com/guide/keychain-access/add-certificates-to-a-keychain-kyca2431/mac(新しいウィンドウでリンクが開く) に移動します。
  2. 証明書を ("システム ルート" ではなく) "システム" キーチェーン にインポートします。
  3. 信頼を次のように有効にします。
    1. キーチェーンのプリケーションで、新しい証明書を右クリックします。
    2. [Get Info (情報の取得)] を選択します。
    3. ダイアログで [信頼] セクションを開き、[When using this certificate always trust (この証明書を使用する場合は常に信頼する)] を選択します。

注: 2020.2 より前の Tableau バージョンでの SAP HANA 接続では、Mac ではなく JRE に証明書を追加します。詳細については、SAP HANA コネクタのヘルプ トピックで「Mac に信頼された SSL 証明書をインストールする」セクションを参照してください。

Linux の場合:

多くの Linux ディストリビューションでは、システム証明書から Java 形式のトラスト ストアが生成されます。このファイルを作成するには、パッケージ マネージャから Java をインストールする必要があります。

これにより、JRE はオペレーティング システムと同じ証明書を使用できます。

注: Tableau Server は、このファイルを次の標準の場所で検索します。
/etc/ssl/certs/java/cacerts
/etc/pki/java/cacerts

別の場所を設定するには、次のコマンドを実行します。

tsm configuration set -k native_api.ConnectivityTrustStore -v <path-to-cacerts> --force-keys

このファイルでは、次を実行する必要があります。

  • 信頼できるすべての CA 証明書と自己署名証明書を含める。
  • 公開キーのみを含める。
  • JKS 形式にする。
  • Tableau の特権のないユーザー (「実行ユーザー」) が読み取れるようにする。
  • 既定の JKS パスワード "changeit" を使用する。

カスタム CA 証明書や自己署名証明書をインストールするには、ディストリビューションのドキュメントを参照してください。適切なコマンドを実行してキー ストアを生成します。例:

update-ca-certificates

カスタム ドライバー プロパティを使用する

プロパティ ファイルを使用して、JDBC 接続オプション (信頼ストアの場所など) をカスタマイズできます。このプロパティ ファイルは、各接続パラメーターのキーと値のペアを含むプレーンテキスト ファイルです。特定のプロパティ設定の詳細については、ドライバーのドキュメントを参照してください。

たとえば、このプロパティ ファイルの行は、信頼設定を構成するために使用されています。

javax.net.ssl.trustStore=C:\\My_Folder\\truststore.jks
javax.net.ssl.trustStoreType=JKS
javax.net.ssl.trustStorePassword=password

ファイルを作成して正しい場所に保存すると、ファイル内のプロパティが、同じデータ ソース タイプへのすべての JDBC 接続に適用されます。

汎用の "その他のデータベース (JDBC)" コネクタを使用する場合は、接続ダイアログでプロパティ ファイルを直接指定できます。

詳細については、「接続のカスタマイズと微調整」(新しいウィンドウでリンクが開く)を参照してください。

関連項目

ありがとうございます!