本記事では、Tableau Viz Lightning Web Component for Salesforceを使って、Tableau Online とSSO(シングルサインオン)で連携する手順について説明します。
前回の記事では、Tableau Viz Lightning Web Component for Salesforceを使ってTableau Onlineのコンポーネントを表示する方法を説明しましたが、実際にプロジェクトで利用する場合には、セキュリティ上Tableau側への連携は認証が必要になると思います。
-
参考Tableau Viz Lightning Web Component for Salesforceを使ってみよう
SalesforceのデータをTableauを使って分析するといえば、Tableau CRMを想像される方も多いのではないでしょうか。 しかし既にTableauをお使いの場合には、蓄積したデータや作成 ...
続きを見る
※Tableau Onlineのトライアル環境を利用したい場合は、上記記事を参考にセットアップしておいてください。
SalesforceからTableauのコンポーネントを利用する場合に、都度IDとパスワードを入力して認証してから利用することも可能ですが、毎回ログインするのは面倒です。
今回ご紹介する手順でSSO設定することで、Salesforceへログイン後は自動的にTableauも認証されるようになります。
Tableau OnlineのSAML認証設定
Tableau Onlineにシステム管理者としてログインしておきます。
手順①左サイドバーのメニューから設定を実行して、設定画面を表示します。
手順②以下の警告メッセージが表示されます。問題なければ続行します。
手順③認証タブをクリックして、認証タイプで追加の認証方法を有効にするを選択後、SAMLをクリックします。
手順④SAMLの中に表示されている、「>接続の編集...」をクリックします。
上記の中からTableau OnlineエンティティIDとアサーションコンシューマーサービスURLをそれぞれコピーして、テキストに保存しておきます。
※あとでSalesforce側の設定時にペーストして利用します。
SAML ID プロバイダとしての Salesforce の有効化
まず、Salesforce側の設定を実施します。
Tableau Viz Lightning Web Component for Salesforceを利用するSalesforce 組織を外部サービスプロバイダに対するシングルサインオン (SSO) SAML ID プロバイダとすることができます。
手順①Salesforceへシステム管理者としてログイン後、設定->IDプロバイダを実行し、以下の画面からIDプロバイダを有効化するを実行します。
手順②IDプロバイダの設定画面で、証明書を選択します。※自動的に作成されるものがデフォルトで選択されるのでそのまま保存します。
手順③以下の警告メッセージが表示される場合があります。問題なければOKをクリックします。※すでに別のサービスのSSOを使っている場合は注意してください。
警告メッセージ「IdP証明書を変更しようとしています。証明書を変更すると、既存のサービスプロバイダが機能しなくなる可能性があります。継続してよろしいですか?
手順④IDプロバイダの情報が表示されます。ここでは、「証明書のダウンロード」、「メタデータのダウンロード」をそれぞれ実行してファイルをダウンロードしてください。
手順⑤以下ダウンロードしたファイルはあとで利用するため、保管用のフォルダへ配置しておいてください。
手順⑥設定->アプリケーションマネージャを実行します。
手順⑦新規接続アプリケーションを実行します。
接続アプリケーション名は、サービスの内容がわかるような名前を指定してください。
手順⑧続いてWebアプリケーションの設定項目で以下の内容を指定します。
開始URL:Tableau Onlineのログイン後のホーム画面のURLを指定します。
SAMLの有効化にチェックを入れます。
手順⑨SAML有効化すると以下の項目が表示されるため、最初にTableau Onlineの認証画面で取得した以下のエンティティIDとアサーションコンシューマーサービスURL(ACS)を使って、値を設定します。
※Tableau Onlineで取得した情報
エンティティIDとACS URLをコピー&ペーストで間違いないように入力します。
手順⑩件名種別では、今回は統合IDを指定します。
※Salesforceのユーザ名は全世界で一意の値にする必要があり、Sandboxなどで検証したり、本番移行の際にユーザ名をTableau Online側と一致させるのが難しい場合が多いため、ユーザオブジェクトの統合ID項目を利用してSAML認証を行います。
手順⑪nameidのフォーマはメールアドレスを選択します。
手順⑫IdP証明書を選択します。※手順②で作成した証明書を選択します。
手順⑬SAMLメッセージの署名アルゴリズムでSHA256を選択します。
手順⑭これまで設定した内容を保存します。
②接続アプリケーションの権限セット作成
Tableau Onlineへの接続アプリケーションをユーザが利用できるように権限セットを作成して、ユーザへ付与します。
手順①設定->権限セットの画面を表示します。「新規」のボタンをクリックします。
手順②権限セット作成画面にて、ラベル名とAPI参照名を指定して保存します。
※ライセンスを指定する場合は、ライセンスの選択リストで適切なライセンスを選択してください。
手順③権限セット概要から、割り当てられた接続アプリケーションをクリックします。
手順④割り当てられた接続アプリケーションの「編集」ボタンをクリックします。
手順⑤接続アプリケーションインストール済から作成したTableau Onlineの接続アプリケーションを有効化の方へ追加して保存する。
手順⑥保存後の画面で、「割り当ての管理」ボタンをクリックします。
手順⑦「割り当てを追加」ボタンをクリックします。
手順⑧権限セットを追加したいユーザ(Tableau OnlineのSSO接続対象のユーザ)を選択して「割り当て」ボタンをクリックします。
※Salesforceの設定->IDプロバイダイベントログにて、SSOの状況が確認できますが、権限セットを付与していない場合、以下のエラーが表示されます。
「エラー: ユーザにこのサービスプロバイダへのアクセス権がありません 」
※ ユーザは SAML 対応接続アプリケーションの使用を許可されていません。たとえば、適切な権限セットまたはプロファイルがありません。
Salesforceユーザの統合IDを指定する
手順①設定->ユーザからTableau OnlineとSSO接続するユーザを選択し、統合IDを編集する
今回はテスト用ユーザ1名について、統合IDにメールアドレスを設定する。※Tableau Onlineのユーザ名と一致させること。
つづいて、Tableau Online側の作業を行います。
Tableau OnlineのSAML認証設定
Tableau Onlineにシステム管理者としてログインしておきます。
手順①左サイドバーのメニューから設定を実行して、設定画面を表示します。
手順②SAMLの中に表示されている、「>接続の編集...」をクリックします。
手順⑤Tableau Onlinにメタデータファイルをインポートで、IdPメタデータファイルにSalesforceからダウンロードしておいたメタデータファイルをインポートします。
手順⑥ダウンロードしておいたメタデータファイルを指定します。
手順⑦ファイルがインポートされたら適用を実行します。
手順⑧埋め込みオプションをONに設定します。
インラインフレームを使用する認証(低いセキュリティ、すべてのIdPでサポートされていない)
手順⑨ユーザの管理から、ユーザの追加を実行する。
※Salesforceのユーザ項目の統合IDに指定したメールアドレスと一致するユーザを作成する。
例:sfdc.tableau.sso@email.com
手順⑩上記手順で追加したメールアドレスに以下のメールが届いていることを確認する。
メール内リンクから「Start Exploring」を実行する。
手順⑪Salesforceにリダイレクトされるため、統合IDを設定したユーザでログインする。
手順⑫Salesforceへログイン後、SSO認証後Tabelauのホーム画面へ遷移する。
※ログインできずにエラーになっている場合は、ここまでの設定がうまくいっていない可能性があるため、本記の「SSO接続エラーの対処方法」を参照して、原因の特定をしてください。
最後に、Salesforceへログインして、Tableau viz componentの画面がSSOで認証され正常に表示されることを確認します。
設定->IDプロバイダイベントログで、状況が成功になっている確認します。
Tableau viz componentが表示されることを確認する。
※ワークブックが正しく表示されない場合は、Tableau OnlineでSSOユーザにアクセス権限が付与されている確認してください。
SSO接続エラーの対処方法
Salesforce側で調査
・設定->IDプロバイダイベントログを確認する。
※SSO対象ユーザのイベントログが確認できる。エラー内容を確認して対処する。
エラーメッセージの詳細な内容は、Salesforce公式のHelpページにて確認することができます。
Salesforce 公式Help「ID プロバイダイベントログの使用」
補足
Tableau の公式HPより参考になる手順が書かれているページがあるのでこちらも参考にしてください。
まとめ
Tableau viz componentをSSOで接続する手順について説明しました。