概要
本記事ではSpotfireのデータ接続を使用してTDVからデータを取得する方法について説明します。
OAuth2によるSSO(シングルサインオン)を利用して、Spotfireで認証したユーザーと同一のユーザーアカウントとしてTDVへの認証を行います。
本手順で設定を行う前にOpenID ConnectでSpotfireにログインができることを前提としています。
OpenID Connectによるログイン方法は以下の記事をご確認ください。
OpenID Connectを用いたSpotfire の認証設定
また、TDV側でのクレームの設定とIdPでのグループとユーザーの設定が完了していることを前提にしています。以下の記事をご確認ください。
検証環境
製品 | バージョン | 備考 |
---|---|---|
TDV Server |
8.7.0 |
RHEL8環境で実行 |
TIBCO Spotfire Server |
12.5.0 |
Windows Server 2019環境で実行 |
検証を行ったIdPはAzure ADとOktaです。
※注意
OAuth2を認証に用いたTDVへの接続はバージョン12.3以降の機能です。2023年9月8日時点でのLTS(Ver 12.0)では未対応です。
IdP側設定
データ接続ではSpotrfire Serverを経由しないため、IdP側のアプリケーションのタイプは以下の記事で作成した「Web」のタイプではなく、「ネイティブクライアント」のタイプのアプリケーションを作成する必要があります。
Azure ADの場合
Azure ADのコンソール画面から新規のアプリケーションを作成します。
「リダイレクトURI」の欄からアプリケーションのタイプを「パブリッククライアント/ネイティブ」で選択してリダイレクトURIを設定します。
本手順では
http://127.0.0.1
と設定します。
Oktaの場合
Oktaの管理コンソールからアプリケーションを作成します。
サインイン方法は「OIDC」を選択、アプリケーションタイプは「ネイティブ・アプリケーション」を選択します。
Spotrfire側の設定
Spotrfire Analystを開き、「ツール」タブの「管理マネージャ」を開きます。
OAuth2IdentityProviders の設定
「Application」を開き「OAuth2IdentityProviders 」を選択して、右下の「編集」をクリックします。
右上の「...」をクリックします。
以下のJSONオブジェクトを入力します。
本手順ではAzure ADとOktaの両方を記載しています。利用するIdPに合わせて設定してください。
[
{
"issuer": "https://login.microsoftonline.com/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/v2.0",
"displayName": "azure-public",
"type": "openID",
"publicClient": {
"id": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"redirectUrl": "http://127.0.0.1/auth/",
"redirectPorts": "55931"
},
"defaultScope": "api://xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/SESSION:ROLE-ANY"
},
{
"issuer": "https://xxxxxxxxxxxxxxxxxxxxxx.com/oauth2/default",
"displayName": "okta-public",
"type": "openID",
"publicClient": {
"id": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
redirectUrl: "http://127.0.0.1/auth/",
redirectPorts: "55931"
},
"defaultScope": "openid"
}
]
idはアプリケーション(クライアント)IDを、redirectUrlはIdP側で設定した値を使用してください。
ここまでの設定が完了したらSpotrfire Analystを一度閉じてください。
動作確認
IdPに登録されたアカウントでSpotrfire Analystにログインします。
「接続先」から「TIBCO Data Virtualization」をクリックします。
接続情報を入力して「接続」をクリックします。
認証方法は「IDプロバイダ(OAuth2)」
範囲は「既定値」
を選択します。
接続が成功するとデータベースがドロップダウンで選択できるようになるので選択して「OK」をクリックします。
取得するテーブルを選択して「OK」をクリックします。
データキャンバスを開き以下のようにデータが取得できていれば完了です。
参考資料
Single sign-on with an identity provider (OAuth2) for connectors