セキュリティ〜Tableau Serverの各要素別のセキュリティ構成を説明する(Tableau Serverの権限管理について) #tableau
はじめに
お早うございます。大阪オフィス唯一のDI部メンバー、tamaでございます。
本エントリは、Tableau Server Qualified Associateの試験ガイド「評価するスキル」に関連する内容となります。
- ※2018年4月にバージョン2018.1がリリースされましたが、2018年5月現在のTableau Server Qualified Associateはバージョン10.5が対象のため、当エントリ内容もバージョン10.5を対象にしています。
- ※バージョン2018.1は、アクセス管理まわりに変更が入っているため、2018.1に情報については別エントリをご覧ください。
本エントリの概要
今回は試験ガイドの「セキュリティ〜以下のセキュリティ構成を説明する」の部分を見ていきたいと思います。正直、試験ガイドのこの部分については、かなりザックリした記述で、結構読み手側によって受取り方が変わりそうな部分であると感じていますが、Tableau Serverのヘルプページ等を確認するかぎり、Tableau Serverは各要素毎に、アクセス管理や操作権限を細かく設定できますので、各レベルに応じたセキュリティ設定について見ていく、という風にしたいと思います。
なお、今回はTableau Serverのアクセス許可に関する考え方全体について見ていきます。(各要素別に掘り下げるのは別エントリにて…)
Tableauはあらゆるデータを可視化できるツールである以上、誰がどういったデータ(の可視化)を閲覧・操作できる/できない…といった管理は、非常に重要な事です。試験ガイドに記載されている項目ではありますが。純粋にTableau Serverを運用する上でも、大事な項目だと思います。
Tableau Server内のそれぞれの要素について
まず、Tableau Serverの各リソースに対するセキュリティ設定を見ていく前に、Tableau Serverの各要素について見ておきます。というのも、Tableau Serverのアクセス管理は、これらの要素別に細かく設定することができるので、まずはTableau Serverを構成する要素について把握しておく必要があります。
Tableau Serverは、下記のように、複数の要素から成り立っています。
上記画像を見れば把握できることではありますが、Tableau Serverは一番大きい単位として「サイト」があり、その下にはコンテンツ関係の要素とユーザー関係の要素が存在します。
ユーザー関係とは、文字そのままの意味で、Tableau Serverのユーザーに関する要素です。グループ>ユーザーという階層構造になっています。
サイト
※複数サイトに所属しているユーザーはサイトを切り替えることができます。
サイトは、Tableau Serverにおける各要素の最上位にあたります。サイトは独立したコンテンツとユーザー(グループ)を持っています。つまり、サイトが異なれば存在するユーザーやパブリッシュされているコンテンツも異なります。(サイト間でこれらの共有はされません。)
ただ、Tableau Server管理者や、複数のサイトにそれぞれ登録されている同一ユーザーの場合は、ログイン時に、どのサイトにログインするか聞かれます。
コンテンツ
コンテンツとは、Tableauのメインの部分でもある、Vizに関するリソースのことで、プロジェクト>ワークブック、データソース>ビューという階層になっています。
プロジェクト
Tableauで作成した各ワークブックをまとめている要素です。フォルダみたいなものと考えてよいと思います。組織別(営業部、マーケティング部…)に分けたり、機能別(本番用、テスト用…)に分けたりする方法が一般的かと思われます。(プロジェクトを入れ子にして階層構造にすることもできるので、前者と後者を合体した分け方もできるかと思います。)
ワークブック
Tableauで作成されたVizにあたる要素です。Tableau Desktopでいう.twbファイルと同じようなものです。
ビュー
ワークブック内に格納されているシート単位の要素です。
データソース
Tableau Serverからデータソースへの接続情報の要素です。Tableau Desktopと同じく、抽出とライブ接続があります。
ユーザー
Tableau Serverを利用するユーザーです。上位要素としてグループがあり、グループに複数のユーザーを入れることで、複数ユーザーに対して、一括の設定を行うことができます。(ちなみに、「すべてのユーザー」というグループが必ずデフォルトで作成されます。全ユーザーが属しているグループで、これは削除できません。)
Tableau Serverのアクセス管理について
あるユーザーが、Tableau Server内のあるコンテンツに対してアクセスできるかどうかは、ユーザーに対して設定されるサイトロールと、コンテンツに対して設定されるパーミッション、この2つの兼ね合いで決定されます。
サイトロール
ユーザーに「役割」のようなものを与える設定がサイトロールです。サイトロールは、そのユーザーの権限の上限を決めます。つまり、後述するコンテンツのパーミッション設定で、コンテンツに対する編集が許可されていても、サイトロールに編集権限が無い場合、そのユーザーは編集することはできません。サイトロールに編集権限が無い場合、原則そのユーザーは各コンテンツに対して編集操作を行うことはできません。Tableau Server管理者は、自組織の運用計画に沿って、各ユーザーに適切なサイトロールを設定する必要があります。
サイトロールに、どのような種類があるのかについては、下記Tableau Serverヘルプをご覧ください。
パーミッション
ユーザーが各コンテンツに対する権限を設定するのがパーミッションです。パーミッションは各コンテンツ毎に設定します。どういうことなのか、下記に超ザックリした例を記します。
- 年別の売上グラフ(ワークブック)
- グループAは編集可
- グループBは閲覧のみ
- ユーザーCはアクセス不可
- …
このように、プロジェクト、ワークブック(ビュー)、データソース毎に対して、各ユーザーやグループがどれだけの操作権限を持っているかを設定できます。(パーミッションの細かい内容はこちらで説明します。)
繰り返しになりますが、パーミッションでそのコンテンツの編集が許可されていても、そのユーザーのサイトロールに編集権限がない場合は、そのユーザーはコンテンツを編集することはできません。
コンテンツの所有権
Tableau Serverの各コンテンツには所有権(所有者)という概念があります。プロジェクトだったらそれを作成したユーザー、ワークブックやデータソースだったら、それらをパブリッシュしたユーザーが、そのコンテンツの所有者となります。
コンテンツ所有者はそのコンテンツの管理者権限を持ちます。前述した通り、ユーザーは基本的にサイトロール以上の操作はできないのですが、コンテンツの所有権を持っている場合は、例外的にそのコンテンツのみ管理者権限(パブリッシュや編集、閲覧など)を持ちます。
ちなみに、コンテンツ所有者は(権限を持っているユーザー、管理者などは)変更することができます。ベストプラクティスとしては、コンテンツ所有者はそのままにせずロック(Tableau Server管理者預かりのような形)した方がよいとされています。これは、サイトロールやパーミッションで適切に権限管理をしていても、所有者権限がそのままの場合、所有しているコンテンツに関しては、全権限を持ってしまうためです。(権限に関するベストプラクティスについては、別エントリで触れたいと思います。)
おわりに
今回はTableau Serverにおけるセキュリティ(アクセス管理)について見てきました。Tableau Serverの権限は、細かく設定できる一方、多少ややこしいところがあるので、じっくり理解していきたいところです。引き続きパーミッションの詳細について見ていきたいと思います。