Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Henric Cronströmのブログの日本語訳をご紹介いたします。
オリジナルの英文ブログへのリンク
http://community.qlik.com/blogs/qlikviewdesignblog/2014/05/26/section-access
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
セクションアクセスは、アプリケーションのセキュリティをコントロールするために提供されている機能です。 基本的には、ロードスクリプトのなかで、Authorization(権限)を定義します。下記の図のように、Authorization(権限)テーブルを定義すると、
QlikViewは、このテーブルの情報を利用して、ユーザーがアプリケーションを開く際に、権限の定義に基づいて読み込むデータの範囲を限定します。
なお、この機能は、動的なデータ削減の手段のひとつとして、パブリッシャーのLoop-and-Reduce機能と比較されることがあります。
例えば、上のデータモデルのなかの、Authorization(権限)テーブルの中のCOUNTRY の項目をキーにして、権限制御を行う例を用いて、説明してみましょう。(なお、実際のアプリケーションでは、Authorizationテーブルはデータモデルを確認できるテーブルビューアー上には表示されませんが、今回は説明のために表示させた図を掲載しています。)この場合、ユーザーがアプリケーションを開いた際に、ユーザー名(NT NAME)からCOUNTRYを判断し、Customers(顧客)テーブルのCOUNTRY の項目と結びつき、さらに他のテーブルのデータとQlikViewの連想技術に基づいて、関連づけられていきます。 以下の例では、NTNAMEからCOUNTRY、Customer、CategoryNameの項目が関連しています。
セッションアクセスを含むスクリプトをデバックする場合には、一時的にSection Access statement の記載部分をコメントアウトして、デバックモードで実行し、NTNAMEを確認する方法が便利です。
Section Access statement には、少なくともACCESS,NTNAME及びAuthorization(権限)テーブルとリンクする項目の3つの項目が必要です。また、部門やユーザーロールなどの情報も追加されるケースが多いです。
セッションアクセスに関するポイントをいくつか記載しておきます。
最後に、
セッションアクセスは、一つのアプリケーションを利用して、フレキシブルにデータのアクセスを制御するために有効な機能です。そして、サーバー利用時にも、権限制御の方法のひとつとして利用できます。
HIC