はじめに
23年2月からTableau案件に参画し、5月で丸3か月経過しました。
頭と手を動かして、Vizを作る中で、よく分かってないことをそのままにしてきたので、この場を用いて、深堀り→理解をしたいと思います。
第1回目は、「権限」についてです。
Tableau Cloudと権限
「権限」の壁に当たったはなし
現在の案件では、CreatorライセンスでVizの開発していて、Vizやそれに係るデータソースをTableau Cloudにパブリッシュしています。
具体的には、、、
- Tableau Cloudにダッシュボードをパブリッシュし、グループ内で閲覧する。
- Tableau Cloudにデータソースをパブリッシュし、データソースを参照しているダッシュボードを更新する。
など、ごくごく基本的な使い方をしています。
先日、Tableau Prepからデータソースのパブリッシュしようとしたとき、次のようなエラーが発生しました。
これまで問題無くパブリッシュできていたので、おかしいな?と思い、システム管理者に問合せしたところ、「新しいCreatorライセンスを払出したので、私が使っているライセンスのサイトロールをViewerにした」と回答をもらいました。
これまで何となくの知識でやってきたので、「ライセンスとサイトロールは違うの?」、「エラーで示しているパーミッションって何?」と立ち止まってしまいました。
データソースのパブリッシュが出来ないと、案件を進められないという状況に差し迫ったので、しっかり理解しようと思ったのがきっかけです。
Tableau Cloudの構造
まずはTableau Cloduの構造について触れておきます。
Tableau Cloudの世界では、Tableau Serverのサイト(Tableau Serverの管理単位のこと)を1つ間借りして、その中にプロジェクト(ダッシュボードやワークブックをまとめた単位のこと)を作って管理します。
つまり、、、
サイト ┯ プロジェクトA ┯ ワークブックとデータソースA ─ 複数のダッシュボード
┃ ┗ ワークブックとデータソースB
┗ プロジェクトB ─ ワークブックとデータソースC ─ 複数のダッシュボード
┃
といった構造で、オブジェクトが管理されます。
つまり、この構造に対し、ライセンス・サイトロール・パーミッションの3段階で、権限(出来ること・出来ないこと)を設定していくということです。
ライセンスとサイトロールとパーミッション
①ライセンス
Tableauを使用するためには、ミッションに応じた「ライセンス」を購入する必要があります。それぞれ、、、
- Creator :データを加工、新しいデータソース作成など、Tableau機能全ての使い手
- Explorer:Creatorがパブリッシュしたデータを元に、ダッシュボード作成や修正が可能
- Viewer :いわゆる「読み取り専用」の状態で、ダッシュボードの操作が可能
という区分けになります。
②サイトロール
その名の通り、サイトレベルのロール(役割)を与えます。ちなみに、サイトロール設定のタイミングは、ユーザーの登録時です。
サイトロールのポイントは、同じライセンスであっても、サイトロールを変えることで、「権限の範囲を狭めることが可能」ということです。
先の図で、Creatorライセンスには、2つのサイトロール「サイト管理者Creator」と「Creator」が存在していました。
サイト管理者Creatorは、ユーザーの管理(作成・削除)やサイトの管理(フォルダ構成の変更等)が可能ですが、Creatorはそれらが出来ません。
また、Explorerライセンスであっても、サイト管理者権限を与えれば、管理者になることも可能です。
③パーミッション
「出来ることと出来ないこと」の観点でいうと、前述の「ライセンス」は、購入時点でライセンス単位で決まっていますし、「サイトロール」もパッケージされたロールを選ぶので予め決まっていますが、「パーミッション」は、Aというワークブックのパブリッシュに対して、出来る・出来ないを設定できます。
ただし、サイトロールの制約で出来ないことは、パーミッションで許可しても利用できません。例えば、「サイト管理者ではない通常のCreator」というサイトロールを与えられたとして、パーミッションで「フォルダの削除」を許可したとしても、出来ないということです。
一方で下図のように、何でもできる「サイト管理者Creator」サイトロールを与えられていても、パーミッションで「拒否」されていたら、何もできません。
まとめ
今回、権限について考えるきっかけとなった、下図のエラーについては、システム管理者に「新しく払出したライセンスに対し、プロジェクト・ワークブック・データソースそれぞれにパブリッシュができるパーミッションを設定してください」と依頼することで、無事解決できました。
Vizを作るだけでなく、システムを運用する目線も持ちながら、案件に取り組んでいてたらと思います。