Tableau Server コアユーザーライセンスでのみ利用可能な『ゲストユーザーオプション』機能(サーバへサインインせずに埋め込みコンテンツを表示可能)を試してみた #tableau

2017.05.08

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

今回、Tableau Serverの『コアユーザーライセンス』を使ったとある検証・動作確認を行う機会がありましたので、その内容をブログにまとめておこうと思います。紹介する内容は『コアユーザーライセンス』環境でのみ実践可能な『ゲストユーザーオプション』の機能です。

目次

『コアユーザーライセンス』とは

通常、多くの場合Tableau Serverを導入する際はある程度の少人数から始める事になるかと思います。その際のライセンス体系としては『XX人分』といった形でライセンスを購入する事になるかと思いますが、こちらの体系はユーザーベースのライセンスとなり、『ネームドユーザーライセンス』等と呼ばれる事もあります。

一方『コアユーザーライセンス』については実行出来る環境下でのコア数に応じた費用が掛かる形となり、ユーザーアカウント数については制限がありません。 状況が許せば無制限にユーザーを追加する事が出来るのです(その分実運用に足る必要な環境スペックとコアユーザーライセンスでの費用は掛かりますが)。詳細については以下公式ヘルプなどをご参照ください。

コア ベースのライセンス メトリックは、Tableau Server内のユーザー アカウントの数には制限を設けていません。代わりに、ライセンスは Tableau Server で実行できるコンピューター コアの最大数を指定します。このライセンスを使用することで、コンピューター内のコアの合計数が許容されているライセンスの合計数を超えない限り、1 台のコンピューターまたはマルチノード クラスターとして複数のコンピューターにTableau Serverをインストールできます。

『ゲストユーザーオプション』とは

『ゲストユーザーオプション』とは、上記ライセンス体系のうちコアユーザーライセンス環境下でのみ利用可能な機能で、ざっくり言えば『Tableau Serverへのログインを実行せずに、直接Tableau Serevrの埋め込みコンテンツを表示させる事が出来る』というものです。

利用に際しては幾つかの制限があったり、またログイン認証無しにアクセス可能となるということは想定数以上のユーザーアクセスも考えられるという事で以下注意書き等もあったりしますが、使い方によっては非常に便利且つ有効な機能となることでしょう。

注: サイトのゲスト ユーザーを有効にすると、潜在的な同時ビューアーの数が予期していたユーザー リストの数を超える可能性があります。管理ビューの [ステータス] > [ビューへのアクセス量] は、このアクティビティを判断する際に役立ちます。

検証作業実践

ではここから『コアユーザーライセンス』環境下で『ゲストユーザーオプション』を試してみた手順を、順を追って紹介して行きます。

検証環境の準備

まずは検証に必要な環境の準備です。コアユーザーライセンスは事前に購入を済ませ、手元にライセンス情報が既にあるという状況を想定しています。

Tableau Serverのインストーラを公式サイトから入手。公式トップページ若しくは以下のサイトから任意のバージョンのものをダウンロードします。今回は現時点での最新安定版となる10.2.1のものを使いました。

tableau-server-core-lisence-guest-user-option_01

基本的には導入手順は通常と何ら変わりはありません。プロダクトキーを登録する際に、事前に準備しておいたコアユーザーライセンスの情報を設定します。

tableau-server-core-lisence-guest-user-option_02

ライセンスキーの登録を含めたインストール作業の諸々が終わった後のライセンスに関する情報を確認してみます。前情報にあるように、『コア数』に応じた記載となっている事が確認出来ます。

tableau-server-core-lisence-guest-user-option_03

ちなみにこちらは従来のネームドユーザーライセンスで立ち上げているTableau Server環境での表示内容です。利用するユーザーの人数に応じた内容となっています。

tableau-server-core-lisence-guest-user-option_04

ゲストユーザーオプション設定

ゲストユーザーの機能を使う場合の手順としては、管理機能メニューの『全般』タブに記載されている『ゲストアクセス』の『ゲストアクセスを許可』にチェックを入れておきます(※インストール直後の内容を確認した限りだと既にチェック済の状態となっていたのでデフォルト"許可する"という形なのでしょう)

tableau-server-core-lisence-guest-user-option_05

ちなみにネームドユーザーライセンスの場合はこの部分はグレーアウトされて使えないようになっています。

tableau-server-core-lisence-guest-user-option_06

サイト全体で設定を行う場合は上記の形で一括設定が可能ですが、サイト個別でこの設定を切り替えたい場合はサイトの新規作成時又は編集時に『ゲストアクセスを許可』するチェックボックスの設定を変更します。ここでは検証用に『ゲストアクセスを許可するサイト(cm-guest-user-site)』を用意。

tableau-server-core-lisence-guest-user-option_09

また、比較検証用に『ゲストアクセスを許可しないサイト(cm-normal-site)』も併せて用意しておきます。

tableau-server-core-lisence-guest-user-option_10

コンテンツのパブリッシュとサイト毎の動作確認

環境の準備が出来たのでここからは実際にTableau Serverにコンテンツをパブリッシュし、そのコンテンツを埋め込み表示させてみてどういう挙動を示すのか確認してみたいと思います。

動作確認:ゲストアクセスを許可するサイトでのコンテンツ表示

Amazon Redshiftにアクセス設定を行った状態で任意のVizを作成後、Tableau Serverへのサインインを実施します。

tableau-server-core-lisence-guest-user-option_11

サインイン実施後のサイト選択では『ゲストアクセスを許可するサイト(cm-guest-user-site)』を選択します。

tableau-server-core-lisence-guest-user-option_12

メニューからもサイトへのサインインが出来ている事が確認出来ました。

tableau-server-core-lisence-guest-user-option_13

この状態でコンテンツをパブリッシュします。データソースについては都度アクセス情報の入力を問われない様に、ワークブック内に認証情報を保存する形とします。

tableau-server-core-lisence-guest-user-option_14

パブリッシュ完了後、Tableau Serverの該当コンテンツにアクセス。[共有]メニューから『埋め込みコード』欄に表示されているスクリプトタグ情報をコピー。

tableau-server-core-lisence-guest-user-option_15

検証の為、一旦ここでサインイン状態を解除しておきます。

tableau-server-core-lisence-guest-user-option_25

まずはローカル端末(Mac)上で、HTML上でのWeb埋め込みにおける挙動確認をしてみたいと思います。以下の形で簡易的にHTMLファイルを用意し、上記でコピーしたスクリプトタグを展開。

core-user-test.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ファイルを開いて表示させてみます。しばしのロード時間を経てコンテンツがサインインを行う事無く表示出来ました!

tableau-server-core-lisence-guest-user-option_16

実稼働しているWebサイトでもどのように表示されるか確認してみます。今回用に稼働環境を用意するのが面倒臭かったので、Developers.IOのとあるブログエントリ末尾に上記スクリプトタグを貼り付けて表示されるかどうかを確認してみました。サインインせずにちゃんと表示出来ていますね!

tableau-server-core-lisence-guest-user-option_17

動作確認:ゲストアクセスを許可しないサイトでのコンテンツ表示

続いて『ゲストアクセスを許可しないサイト』にコンテンツをパブリッシュするとどうなるかを確認してみたいと思います。先程同様、検証用のVizを作成し、今度は『ゲストアクセスを許可しないサイト(cm-normal-site)』へのサインインを済ませておきます。

tableau-server-core-lisence-guest-user-option_18

コンテンツのパブリッシュも先程と同様の手順で実施。

tableau-server-core-lisence-guest-user-option_19

パブリッシュ後の埋め込みコードの取得も同様。

tableau-server-core-lisence-guest-user-option_20

下記はゲストアクセスを許可するサイト、許可しないサイトそれぞれで得られたスクリプトタグの内容です。赤枠線内のサイト情報がそれぞれ異なっているのが確認出来ます。

tableau-server-core-lisence-guest-user-option_21

『許可するサイト』と同じ形でこちらも挙動を確認してみます。まずはローカルファイルにて。

core-user-test-normal.html

<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-core-lisence-guest-user-option_22

直後にTableau Serverのログイン画面が埋め込みコードを記載した箇所に表示されてしまいました。これはこれで正しい挙動(ゲストユーザーアクセスを許可していないサイトのため、一旦サインイン処理を行わせる)であると言えます。

tableau-server-core-lisence-guest-user-option_23

ブログエントリ上での表示確認でも同様の挙動を確認する事が出来ました。上のVizがゲストアクセスを許可したもの、下のVizが許可していないものの表示となります。

tableau-server-core-lisence-guest-user-option_24

まとめ

という訳で、コアユーザーライセンス環境下における『ゲストユーザーオプション』の機能について試してみた内容のご紹介でした。環境を用意するにはかなりのコスト(費用)が掛かる形となりますが、状況が許せばかなり強力な機能となりますので上手く活用して行きたいところですね。