Azure
Tableau
SAML
AzureActiveDirectory
AzureAD

Tableau Online で Azure AD と SAML 連携してみる

概要

Tableau Online とは

Tableau Online は Tableau Software 社が提供する SaaS 型の Business Intelligence プラットフォームです。
https://www.tableau.com/ja-jp/products/cloud-bi
Tableau Desktop で作成したコンテンツを Tableau Online にアップロードすることで企業内に広く分析結果を共有をすることができます。

Tableau Online の認証方法

Tableau Online はデフォルトでローカル認証で構成されますが、いくつかの認証連携方法をサポートしています。詳細は 公式ドキュメント を参照ください。今回はこれらのうちの SAML を使って Azure AD と SSO 連携してみます。

Tableau Online の無料トライアル

まだ Tableau Online のアカウントをお持ちでない場合は下記 URL から無料トライアルにサインアップしてください。
https://www.tableau.com/ja-jp/products/cloud-bi

Azure Active Directory (略称 Azure AD / AAD) とは

Office 365 の認証基盤として使われる ID 基盤です。詳細は Azure Active Directory の検証テナントを作成してみる を参照ください

設定手順

検証に必要なもの

・Tableau Online サイト
・Tableau Online サイト管理者アカウント
・Azure AD テナント
・Azure AD 全体管理者アカウント

Tableau Online 側設定 (1)

https://sso.online.tableau.com/public/idp/SSO にアクセスし、サイト管理者でログイン。
設定 -> 認証 -> 認証タイプ のところで以下を設定

・"追加の認証方法を有効にする" にチェック
・"SAML" を選択
・"接続の編集" をクリック
image.png
・"Tableau Online エンティティ ID" をコピーしていったんメモ帳などに張り付けしておきます。

Azure AD 側設定

https://portal.azure.com/ にアクセスし、全体管理者でログイン。

左側のメニューから "Azure Active Directory" -> "エンタープライズアプリケーション" を選択


"すべてのアプリケーション" -> "新しいアプリケーション" を選択


"tableau" で検索し、"Tableau Online" を選択して、"追加" をクリック
(ちなみに Tableau Server も Azure AD と SAML 連携可能です)

クイックスタートの画面が表示されます。

"テスト用のユーザーを割り当てる" をクリック


"ユーザーの追加" -> "ユーザー" -> 適当なユーザーを追加します。


"ロールの選択" で適当なロールを割り当てます。今回はサイト管理者を割り当ててみます。

クイックスタートメニューにもどります

"シングルサインオンを構成する" をクリックします。


・サインオン URL に https://sso.online.tableau.com/public/sp/login?alias=XXX を入力 (※)
・識別子 "Tableau Online 側設定 (1)" で取得したエンティティ ID を張り付けます。
https://sso.online.tableau.com/public/sp/metadata?alias=XXX
・"SAML 署名証明書" のところにある "メタデータ XML" をダウンロードして適当なところに保存しておきます。

(※) 上記スクリーンショット および 公式のドキュメント上の サインオン URL は https://sso.online.tableau.com/ となっていますが、https://sso.online.tableau.com/public/sp/login?alias=XXX にすることで Tableau Online 標準のサインオン画面をスキップすることができます。 (ドキュメントバグ?)

Tableau Online 側設定 (2)

Tableau Online の設定画面に戻ります
image.png
"4 Tableau Online にメタデータ ファイルをインポート" で 参照をクリックし、さきほどの xml ファイルをインポートします。

"5 属性の照合" で Azure AD から Tableau Online に渡す属性を設定します。

名称 アサーション名 (URI)
メール http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/givenname
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/surname

上記をそれぞれ入力し、適用をクリック
(詳細は Azure Active Directory のエンタープライズ アプリケーションの SAML トークンで発行された要求のカスタマイズ)

Tableau Online ユーザの登録


"ユーザーの追加" をクリック


"メールアドレスの入力" をクリック


"microsoftonline.com (SAML) 認証向けにユーザーを追加" を選択し、Azure AD ユーザを追加します。

動作の確認

別ブラウザ、もしくは別セッションでアクセス パネル http://myapps.microsoft.com にアクセス

サインイン画面が表示されるのでサインイン


Tableau Online をクリックして正常に Tableau Online にログインできることを確認します

追加の設定

Tableau Online を他のアプリケーション等に埋め込んで使用したい場合は以下 2 か所を設定することで、認証連携できます。 (参考) Embedded Dashboard Displays a Login Prompt Button with SAML (SSO) Authentication

・"6 埋め込みオプション" の "インライン フレームを使用する認証" を選択
・"埋め込まれたビューの既定の認証タイプ" の "microsoftonline.com (SAML)" を選択

まとめ

Tableau Online の認証を Azure AD と連携することができました。これにより既に Office 365 を利用しているユーザであればシングルサインオンが実現できます。また、 Azure AD の設定を追加で行えば、多要素認証や特定の IP アドレス、デバイス からのアクセスしか受け付けない、などといったエンタープライズに求められるセキュリティ要件を補完することが可能になります。

関連リソース

Microsoft 社ドキュメント チュートリアル: Azure Active Directory と Tableau Online の統合
Tableau 社 ドキュメント Azure Active Directory での SAML の構成