Spotfire® Web クライアント ユーザー ガイド

コネクタ用の ID プロバイダ (OAuth2) を使用したシングル サインオン

この記事では、コネクタを使用してデータにアクセスするときに ID プロバイダを使用してログインできるように Spotfire 環境を構成する方法について説明します。

一部のデータ コネクタは、認証での Okta、Keycloak、Google などの独自の ID プロバイダの使用をサポートしています。このようなコネクタを使用すると、ユーザーがデータ接続または外部ライブラリを使用するとき、データベースの資格情報を個別に覚えておく必要はなく、快適にログインできます。Spotfire 環境で認証に同じ ID プロバイダを使用する場合、完全なシングル サインオン エクスペリエンスを有効にすることもできます。

前提条件

  • 次のコネクタは、ID プロバイダーを使用したシングル サインオンをサポートしています。
    • TIBCO® Data Virtualization
    • Microsoft SQL Server
  • ID プロバイダは、次のいずれかのプロトコルを使用する必要があります。
    • OAuth2
    • OpenID Connect
  • ID プロバイダを認証に使用するためにデータにアクセスする外部システムを構成しました。
  • ID プロバイダに Spotfire のクライアント アプリケーションを登録しました。1 つは機密、もう 1 つは公開用です。Spotfire によってインストールされたクライアントにはパブリック クライアント アプリケーションが必要で、Spotfire Server および Spotfire Web クライアントには機密クライアントが必要です。

ID プロバイダはサポートされていますか?

ID プロバイダを使用した認証に対する Spotfire のサポートは、汎用性のあるものとして構築されており、特定の ID プロバイダ ソリューションに合わせて調整されたものではありません。重要な前提条件は、ID プロバイダが外部データ ソースによってサポートされていることです。

以下は、Spotfire の実装に関する詳細であり、ID プロバイダの要件と制限を理解するのに役立ちます

  • ID プロバイダは OAuth2 または OpenID Connect 認証サーバーを公開する必要があり、Spotfire は認証コード付与フローを使用して認証サーバーからアクセス トークンを取得します。
  • Spotfire は、認証要求でのカスタム ヘッダーの追加をサポートしていません。
  • Spotfire は、認証要求でのカスタム クエリ パラメータの追加をサポートしていません。

コネクタに ID プロバイダを使用するように Spotfire を構成する

ID プロバイダを使用して Spotfire から外部システムにログインできるようにするには、ID プロバイダに関する詳細を追加する必要があります。

Spotfire 構成には、ID プロバイダ情報を追加する必要がある場所が 2 つあります。1 つは Spotfire Server の OpenID Connect 設定で、ここでは機密クライアント アプリケーションの詳細を使用します。もう 1 つは管理マネージャの設定 OAuth2IdenitityProviders で、ここではパブリック クライアント アプリケーションの詳細を使用します。データ コネクタで使用するには、両方を構成し、Spotfire Web クライアントと Spotfire がインストールされたクライアントの両方で、ログインしてデータにアクセスできるようにすることが重要です。

大まかに言えば、構成を完了するには、次の手順を実行する必要があります。
  1. ID プロバイダ、および Spotfire の両方のクライアント アプリケーションに関する情報を収集します。
  2. 機密クライアント アプリケーションの詳細を使用して、Spotfire Server に ID プロバイダを追加します。
  3. ID プロバイダを OAuth2IdentityProviders 設定に追加し、パブリック クライアント アプリケーションの詳細を指定します。
  4. データ接続や外部ライブラリーでの認証に ID プロバイダを使用します。

ID プロバイダに関する情報の収集

開始する前に、ID プロバイダに関する次の情報を収集します。

  • 使用するプロトコル: OpenID Connect または OAuth2
  • 発行者 ID の URL
  • ID プロバイダで Spotfire 用に登録したクライアント アプリケーションの詳細 (client IDclient secret (該当する場合))
  • 外部システムのデータにアクセスするために必要な権限のスコープ

ID プロバイダによっては、追加の詳細が必要になる場合があります。使用可能なすべての設定の詳細については、『管理マネージャ ユーザー ガイド』の OAuth2IdentityProviders 設定に関するリファレンス ドキュメントを参照してください。

Spotfire Server に ID プロバイダを追加する

シングル サインオンを使用できるようにし、Spotfire Web クライアントでデータ接続を使用できるようにするには、ID プロバイダと機密クライアント アプリケーションの詳細を Spotfire サーバーに追加する必要があります。ユースケースに応じて、次の 2 つのオプションがあります。
  • Spotfire Server での認証、およびコネクタを使用したデータ アクセスに ID プロバイダを使用するには、ID プロバイダを Spotfire Server の OpenID Connect 設定に追加します。「OpenID Connect の構成」を参照してください。
  • コネクタを使用したデータ アクセスの認証にのみ ID プロバイダを使用するには、config-oauth-client コマンドを使用して Spotfire Server に ID プロバイダを追加します。

ID プロバイダを Oauth2IdentityProviders 設定に追加する

  1. Spotfire Analyst を起動し、管理者権限を持つユーザーとしてログインします。
  2. メニュー バーで、[ツール] > [管理マネージャ…] の順に選択します。
  3. [管理マネージャ] ダイアログの [設定] タブで、設定を編集するユーザー グループをクリックして選択します。
  4. [設定] タブで、[編集] をクリックします。
  5. [設定の編集] ダイアログで、設定 [アプリケーション] > [OAuth2Preferences] > [OAuth2IdentityProviders] に移動します。
  6. OAuth2IdentityProviders 設定を編集するには、設定を選択して編集ボタン [...] をクリックします。
  7. [文字列コレクション エディタ] ダイアログで、ID プロバイダおよびパブリック クライアントの詳細を JSON オブジェクトとして追加します。
    重要: 機密クライアント アプリケーションではなく、必ず ID プロバイダのパブリック クライアント アプリケーションを使用してください。
    一般的に使用される設定が含まれる以下のサンプルに詳細を追加できます。
    [ { type: "[OAuth2 or OpenId]", displayName: "[My Identity Provider]", issuer: "[https:\\issuer1.example.com]", publicClient: { id: "[Client name or ID]", redirectUrl: "[redirect-port]", redirectPorts: "[port-number]" }, defaultScope: "myScope" } ]
  8. 変更を保存するには、[OK] をクリックします。
注: 有効なすべての設定の詳細については、『管理マネージャ ユーザー ガイド』の OAuth2IdentityProviders 設定に関するリファレンス ドキュメントを参照してください。

データ接続や外部ライブラリに ID プロバイダを使用する

認証用の ID プロバイダとのデータ接続の作成
データ接続での認証に ID プロバイダを使用するには、新しいデータ接続または接続データ ソースを作成し、認証方法として [ID プロバイダ (OAuth2)] を選択します。[ID プロバイダ] ドロップダウン メニューで、ID プロバイダ (OAuth2IdentityProviders 設定の表示名でリストされている) を選択できます。
外部ライブラリでの認証に ID プロバイダを使用する
一部のコネクタは、ID プロバイダによる認証と外部ライブラリの構成の両方をサポートしています。このような場合、Spotfire に追加した ID プロバイダを使用して、外部ライブラリにログインできます。
外部ライブラリー構成で外部ライブラリを設定するときは、次の設定を追加します。
authenticationMethod = "OAuth2" issuer = "[Issuer URL of your Identity Provider]"

詳細については、「TIBCO Data Virtualization 統合の構成」を参照してください。