Tableau Server コアユーザーライセンスでのみ利用可能な『ゲストユーザーオプション』機能(サーバへサインインせずに埋め込みコンテンツを表示可能)を試してみた #tableau
今回、Tableau Serverの『コアユーザーライセンス』を使ったとある検証・動作確認を行う機会がありましたので、その内容をブログにまとめておこうと思います。紹介する内容は『コアユーザーライセンス』環境でのみ実践可能な『ゲストユーザーオプション』の機能です。
目次
『コアユーザーライセンス』とは
通常、多くの場合Tableau Serverを導入する際はある程度の少人数から始める事になるかと思います。その際のライセンス体系としては『XX人分』といった形でライセンスを購入する事になるかと思いますが、こちらの体系はユーザーベースのライセンスとなり、『ネームドユーザーライセンス』等と呼ばれる事もあります。
一方『コアユーザーライセンス』については実行出来る環境下でのコア数に応じた費用が掛かる形となり、ユーザーアカウント数については制限がありません。 状況が許せば無制限にユーザーを追加する事が出来るのです(その分実運用に足る必要な環境スペックとコアユーザーライセンスでの費用は掛かりますが)。詳細については以下公式ヘルプなどをご参照ください。
『ゲストユーザーオプション』とは
『ゲストユーザーオプション』とは、上記ライセンス体系のうちコアユーザーライセンス環境下でのみ利用可能な機能で、ざっくり言えば『Tableau Serverへのログインを実行せずに、直接Tableau Serevrの埋め込みコンテンツを表示させる事が出来る』というものです。
利用に際しては幾つかの制限があったり、またログイン認証無しにアクセス可能となるということは想定数以上のユーザーアクセスも考えられるという事で以下注意書き等もあったりしますが、使い方によっては非常に便利且つ有効な機能となることでしょう。
検証作業実践
ではここから『コアユーザーライセンス』環境下で『ゲストユーザーオプション』を試してみた手順を、順を追って紹介して行きます。
検証環境の準備
まずは検証に必要な環境の準備です。コアユーザーライセンスは事前に購入を済ませ、手元にライセンス情報が既にあるという状況を想定しています。
Tableau Serverのインストーラを公式サイトから入手。公式トップページ若しくは以下のサイトから任意のバージョンのものをダウンロードします。今回は現時点での最新安定版となる10.2.1のものを使いました。
基本的には導入手順は通常と何ら変わりはありません。プロダクトキーを登録する際に、事前に準備しておいたコアユーザーライセンスの情報を設定します。
ライセンスキーの登録を含めたインストール作業の諸々が終わった後のライセンスに関する情報を確認してみます。前情報にあるように、『コア数』に応じた記載となっている事が確認出来ます。
ちなみにこちらは従来のネームドユーザーライセンスで立ち上げているTableau Server環境での表示内容です。利用するユーザーの人数に応じた内容となっています。
ゲストユーザーオプション設定
ゲストユーザーの機能を使う場合の手順としては、管理機能メニューの『全般』タブに記載されている『ゲストアクセス』の『ゲストアクセスを許可』にチェックを入れておきます(※インストール直後の内容を確認した限りだと既にチェック済の状態となっていたのでデフォルト"許可する"という形なのでしょう)
ちなみにネームドユーザーライセンスの場合はこの部分はグレーアウトされて使えないようになっています。
サイト全体で設定を行う場合は上記の形で一括設定が可能ですが、サイト個別でこの設定を切り替えたい場合はサイトの新規作成時又は編集時に『ゲストアクセスを許可』するチェックボックスの設定を変更します。ここでは検証用に『ゲストアクセスを許可するサイト(cm-guest-user-site)』を用意。
また、比較検証用に『ゲストアクセスを許可しないサイト(cm-normal-site)』も併せて用意しておきます。
コンテンツのパブリッシュとサイト毎の動作確認
環境の準備が出来たのでここからは実際にTableau Serverにコンテンツをパブリッシュし、そのコンテンツを埋め込み表示させてみてどういう挙動を示すのか確認してみたいと思います。
動作確認:ゲストアクセスを許可するサイトでのコンテンツ表示
Amazon Redshiftにアクセス設定を行った状態で任意のVizを作成後、Tableau Serverへのサインインを実施します。
サインイン実施後のサイト選択では『ゲストアクセスを許可するサイト(cm-guest-user-site)』を選択します。
メニューからもサイトへのサインインが出来ている事が確認出来ました。
この状態でコンテンツをパブリッシュします。データソースについては都度アクセス情報の入力を問われない様に、ワークブック内に認証情報を保存する形とします。
パブリッシュ完了後、Tableau Serverの該当コンテンツにアクセス。[共有]メニューから『埋め込みコード』欄に表示されているスクリプトタグ情報をコピー。
検証の為、一旦ここでサインイン状態を解除しておきます。
まずはローカル端末(Mac)上で、HTML上でのWeb埋め込みにおける挙動確認をしてみたいと思います。以下の形で簡易的にHTMLファイルを用意し、上記でコピーしたスクリプトタグを展開。
<html> <body> <b>CORE USER View Test(Guest User):START</b><br/> <script type='text/javascript' src='http://52.22.xxx.xxx/javascripts/api/viz_v1.js'>(中略)</object></div> <b>CORE USER View Test(Guest User):END</b><br/> </body> </html>
HTMLファイルを開いて表示させてみます。しばしのロード時間を経てコンテンツがサインインを行う事無く表示出来ました!
実稼働しているWebサイトでもどのように表示されるか確認してみます。今回用に稼働環境を用意するのが面倒臭かったので、Developers.IOのとあるブログエントリ末尾に上記スクリプトタグを貼り付けて表示されるかどうかを確認してみました。サインインせずにちゃんと表示出来ていますね!
動作確認:ゲストアクセスを許可しないサイトでのコンテンツ表示
続いて『ゲストアクセスを許可しないサイト』にコンテンツをパブリッシュするとどうなるかを確認してみたいと思います。先程同様、検証用のVizを作成し、今度は『ゲストアクセスを許可しないサイト(cm-normal-site)』へのサインインを済ませておきます。
コンテンツのパブリッシュも先程と同様の手順で実施。
パブリッシュ後の埋め込みコードの取得も同様。
下記はゲストアクセスを許可するサイト、許可しないサイトそれぞれで得られたスクリプトタグの内容です。赤枠線内のサイト情報がそれぞれ異なっているのが確認出来ます。
『許可するサイト』と同じ形でこちらも挙動を確認してみます。まずはローカルファイルにて。
<html> <body> <b>CORE USER View Test(Normal):START</b><br/> <script type='text/javascript' src='http://52.22.xxx.xxx/javascripts/api/viz_v1.js'>(中略)</object></div> <b>CORE USER View Test(Normal):END</b><br/> </body> </html>
ファイルを開いてみます。ロードを行うところまでは先程と同じですが...
直後にTableau Serverのログイン画面が埋め込みコードを記載した箇所に表示されてしまいました。これはこれで正しい挙動(ゲストユーザーアクセスを許可していないサイトのため、一旦サインイン処理を行わせる)であると言えます。
ブログエントリ上での表示確認でも同様の挙動を確認する事が出来ました。上のVizがゲストアクセスを許可したもの、下のVizが許可していないものの表示となります。
まとめ
という訳で、コアユーザーライセンス環境下における『ゲストユーザーオプション』の機能について試してみた内容のご紹介でした。環境を用意するにはかなりのコスト(費用)が掛かる形となりますが、状況が許せばかなり強力な機能となりますので上手く活用して行きたいところですね。