概要
本記事では、Spotfire からSharePoint Onlineに格納されたファイルへの接続方法について説明します。
Spotfire においてSharePoint に接続可能なデータソース接続方式は、データ接続のみとなっております。
また、SharePointの利用はオンプレミスからオンラインへのシフトすることが想定されるため、今後Spotfire からSharePoint On-premiseへのコネクタの開発は行われません。
動作確認環境
本記事は以下の環境で動作確認したうえで作成しています。
- Spotfire Analyst 14.0 LTS
- Spotfire Web Player 14.0 LTS
Microsoft Entra IDに対する認証の設定
SharePoint Onlineにアクセスするには、Entra ID上での認証が必要です。
この認証設定は、接続する際に利用するSpotfire のコンポーネントにより異なります。
・Spotfire Analyst
・Spotfire Web Player
Spotfire Analyst
標準機能のコネクタまたはカスタムコネクタのデフォルト設定で、SharePoint Onlineに接続する場合、Azure上にCSG社が既に作成している「Spotfire®」を利用してSSO認証を実施します。
上記エンタープライズアプリケーションのSpotfire に対しては、以下の権限が必要です。
Spotfire ユーザーに上記権限の付与に関する権限がない場合には、一度、Azure管理者による上記アプリケーションへの権限付与を実施いただく必要があります。
Spotfire Web Player
Spotfire Web PlayerがSharePoint Onlineにアクセスするためには、Microsoft Entra IDに対してSpotfire 用のアプリケーションの登録作業が必要です。
Entra ID側の設定作業
「アプリの登録」から、「新規登録」を選択します。
名前および各種設定を選択し、登録を行います。
また、このとき、リダイレクトURIとして以下を入力します。
リダイレクトURI:https://<spotfire_serverのFQDN>/spotfire/wp/oauth2/code
クライアントシークレットを新規発行し、クライアントシークレットの値を控えます。
同様に、以下のアプリケーションに関連する情報を控えます。
・アプリケーション(クライアント)ID
・テナントID(シングルテナント認証を利用している場合)
「APIのアクセス許可」より、登録したアプリケーションに対して、以下のアクセス許可を付与します。
Sites.Read.All
後述するカスタムコネクタをSpotfire Web Player上で利用する際には、上記アプリケーションの「認証」で設定できる「プラットフォームを追加」から「モバイル アプリケーションとデスクトップ アプリケーション」を選択し、http://localhost を入力してください。
Spotfire Server側の設定作業
Spotfire Web Playerに上記で作成したアプリケーションの情報を反映させます。
まず、Spotfire Serverが構築されているサーバにログインし、コマンドプロンプトを管理者権限で起動します。
そして、以下のパスに移動します。
<Spotfire Serverインストールディレクトリ>\tomcat\spotfire-bin
以下のコマンドを実行し、Spotfire Web Playerに関する設定ファイルを出力します。
config export-service-config --capability=WEB_PLAYER --deployment-area=Production
コマンドの実行結果として出力されているパスに、以下のファイルが出力されていることを確認します。
Spotfire.Dxp.Worker.Host.exe.config
上記ファイルを管理者権限で開き、以下の箇所に先ほど控えた情報を入力します。
<Spotfire.Dxp.Data.Adapters.MicrosoftCommon.Properties.Settings>
<setting name="ClientSecret" serializeAs="String">
<value>クライアントシークレットの値</value>
</setting>
<setting name="ClientId" serializeAs="String">
<value>アプリケーション(クライアント)ID</value>
</setting>
</Spotfire.Dxp.Data.Adapters.MicrosoftCommon.Properties.Settings>
シングルテナントを利用する場合には、上記の<Spotfire.Dxp.Data.Adapters.MicrosoftCommon.Properties.Settings>に、先ほど控えた情報を入力して、以下の設定を加えます。
<setting name="TenantId" serializeAs="String">
<value>テナントID</value>
</setting>
以下のコマンドを実行し、変更した設定ファイルをSpotfire Serverにインポートします。
config import-service-config --config-name=<任意の設定名>設定名
Spotfire Server管理コンソールに管理者権限でログインし、Node & Servicesページに遷移します。
そして、Web Playerを選択し、「edit」を選択します。
以下の画面が表示されたら、先ほどインポートした設定を選択し、保存します。
自動で開始する再起動が完了したら、動作確認をします。
Spotfire Web Player上で、SharePoint Onlineと紐づけられたダッシュボードを開きます。
以下のようなログイン画面が表示されることを確認し、Microsoft Entra IDによる認証作業を行います。
認証が完了し、選択したダッシュボードが起動されたら、動作確認は完了です。
接続方法
SharePoint Onlineではテーブルデータを以下の機能で保存することができます。
・リスト機能
・ドキュメントライブラリ
Spotfireから上記にアクセスする際には、利用するコネクタが異なります。
リスト機能
リスト機能で格納されている場合には、Spotfire Analystの標準で搭載されているコネクタを利用することでアクセスすることができます。
ただし、デフォルトで表示されているサイト以外へアクセスする際には、「追加…」を選択し、サイトアドレスURLを入力することで、選択可能となります。
対象のサイトを選択したら、「選択した最上位レベルのサイト」欄より、データが格納されているサイトを選択します。
以上の操作により、リスト機能で格納されているデータが表示されますので、通常のデータ接続と同様に、テーブルやカラムの選択を行います。
以下の「データの準備ができました。」が表示されていること、またテーブルアイコンを選択して抽出対象のデータのカラム名が表示されていることが確認できたら、SharePoint Onlineからのデータ取得が完了です。
ドキュメントライブラリ
ドキュメントライブラリに格納されているcsvファイルまたはExcelファイルに対してアクセスする際には、カスタムコネクタをSpotfire Serverにデプロイする必要があります。
カスタムコネクタは、Spotfire Communityサイトの以下のページよりダウンロード可能です。
※ カスタムコネクタに関する問い合わせやトラブルシューティングは、Spotfire Communityサイトにて実施いただくこと、ご承知おきください。
※ 以降の設定方法は、ダウンロードファイルの中にあるドキュメントに記載されておりますので、詳細はそちらをご覧ください。
上記サイトよりダウンロードしたzipファイルを解凍します。
※解凍後、sdnファイルが格納されていることを確認します。
Spotfire Server管理コンソールにログインし、Deployments & Packages/Deployment areaページに遷移します。そして、適切なDeployment Area(例:Production)に対して先ほどのsdnファイルをアップロード・保存します。
※アップロードするsdnファイルのバージョンの選定は、カスタムコネクタの説明書をご確認ください。
Spotfire Analystに対する動作確認をします。
Spotfire Analystに反映させるため、Spotfire Analystにログインします。
以下のような画面が表示されたら、「今すぐインストール」を選択します。
再度、Spotfire Analyst にログインし、データ接続のリストに、Microsoft SharePoint Online File (Custom)の表示がされていること確認します。
Microsoft SharePoint Online File (Custom)を選択したら表示され以下の画面から、Microsoft Entra IDの認証を実施します。
認証完了後はSharePoint Onlineのサイトの選択等を行い、以下の「データの準備ができました。」が表示されていること、またテーブルアイコンを選択して抽出対象のデータのカラム名が表示されていることが確認できたら、SharePoint Onlineからのデータ取得が完了です。
Spotfire Web Playerの動作を確認するため、ダッシュボードをライブラリに保存します。
次に、Spotfire Web Playerがカスタムコネクタを利用できるように設定を行います。
※この場合、Spotfire Analystに関連した設定変更作業がございます。
Spotfire Analystが利用するリダイレクトURI(http://localhost)を、アプリの登録で作成したアプリケーションに「モバイル アプリケーションとデスクトップ アプリケーション」として登録します。
Spotfire Web Playerにカスタムコネクタに関する設定を反映させるため、管理コンソールのWeb Playerサービス画面から「Update service」を選択し、アップデートを実施します。
Spotfire Web Playerの更新が完了したら、Spotfire Analystに管理者権限でログインし、上部タブ「ツール」から「SharePoint Online File (Custom) Config Tool」を選択します。
Entra ID上で作成したエンタープライズアプリケーションの情報を入力します。
そして、下部のボタンより暗号またはプレーンテキストを選択し、JSON形式にした入力情報をクリップボードにコピーします。
上部タブ「ツール」/「管理マネージャー」を選択します。
設定タブを選択し、SharePoint Onlineのドキュメントライブラリにアクセスさせたいユーザーが所属しているグループを、「選択したグループ」欄から選択します(本手順では、Everyoneを選択します)。
右欄に表示される設定欄の「Connectors」/「Azure AD Authentication(File Custom)」をクリックし、編集ボタンをおします。
「Configuration」の右欄を選択し、クリップボードに保存したEntra IDの設定情報をペーストします。その後、OKを押して保存します。
上記の設定を反映させるため、Spotfire Analyst、Spotfire Web Playerいずれの場合でも、一度ログアウトを行います。
Spotfire Analystの動作確認をします。
Spotfire Analyst にログインし、データ接続のリストに、Microsoft SharePoint Online File (Custom)の表示がされていること確認します。そして、上記を選択し、最終的にSharePoint Online上のデータを抽出することができたら、Spotfire Analystに対するカスタムコネクタの設定は完了です。
Spotfire Web Playerの動作確認をします。
Web管理コンソール上でSpotfire を起動し、先ほどライブラリに保存したダッシュボードを開きます。
以下の画面が表示されたら、Microsoft Entra IDによる認証作業を行います。
Microsoft Entra IDによる認証が完了したら、ダッシュボードが起動します。
上記を確認できたら、Spotfire Web Playerに対するカスタムコネクタの設定は完了です。
参考資料
Accessing Data from Microsoft SharePoint Online
Allowing Access for the Spotfire App in Microsoft Azure
Enabling the Microsoft SharePoint Online Connector in Spotfire Web Clients