注意事項
本情報は、2020年7月8日時点での情報です。
最新情報は、ドキュメントにて確認してください。
概要
tableauを利用するときに統合ユーザーでの認証(SSO)が利用できますが、クラウド利用時においては、データソースの現実的な選択肢がsnowflakeのみであることがわかりました。本記事では、Azure ADにて、Snowflake、および、Tableau Onlineに認証する方法をご紹介します。
必要となる手順については、Qiitaに個別の記事として投稿しております。
- Tableu Onlineに対してAzure ADアカウントによるシングルサインオンの設定
- Snowflakeに対してAzure ADアカウントによるシングルサインオンの設定
- Snowflakeに対してTableau Desktop・Tableau Online(Server)によるOAuth認証(Azure AD)の設定
統合IDの必要性について
データ活用を推進するためには、データベースへの接続をエンドユーザーに許可することが重要です。ただ、個人単位でのユーザー作成は管理が煩雑となることから、1つのユーザーアカウントを使い回している方も多いのではないでしょうか。Azure ADアカウントを利用すれば、ユーザー個人へのデータベース接続が可能となります。
Tableau Online(Server)におけるデータソースの制約
Tableauにおいて、ライブ接続する際のTableau Online(Server)がデータソースに対してKerberos認証が基本となってしまうことです。PaaS型データベースではkerberos認証をサポートしていないことが多く、ADサーバーの構築も面倒なことが多いです。
Viewer (ビューアー) 認証資格情報: ビューアーの認証資格情報は、SSO (通常は Kerberos) を使用してデータベースに渡されます。
引用元:パブリッシュされたデータにアクセスするための認証資格情報を設定する
Tableauにて統合IDを利用する方法
解決策の1つとしては、Tableau ServerのデータソースとしてOAuth認証が可能なSnowflakeを利用することです。
Google Big Queryも対応可能なようですが、ラムダアーキテクチャにおけるサービスレイヤーとしての同時実行性という観点で懸念があります。Tableauのデータ抽出機能利用時には、最適な選択肢の1つとなりますが、ライブ接続に利用するには難しいと考えてます。
導入後のイメージ
Tableau Desktopでの利用イメージ
Tableau Desktopにて、Snowflake接続する際にAzure ADアカウントを利用できるようになります。
Tableau Onlineでの利用イメージ
Tableasu Desktopからパブリッシュする場合、"認証"にて"ユーザーにメッセージを表示"を選択することで、
Tableau OnlineにてSnowflakeへの認証確認があり、
snowflakeでの利用イメージ
Snowflakeへブラウザにて接続する際には、"Log in using AzureAD"を選択すればログインできるようになります。
aginity proからの利用イメージ
"CONNECTIONS"を"SAML"にすることでログインできます
まとめ
Tableau Server利用時には、Snowflakeをデータソースとして利用することで、ユーザーIDを利用可能であると説明しました。
データ抽出時にはシングルサイオンにてデータアクセス制御を実施したい場面が多々あるため、他のサービスにも対応していただきたいです。