2022/06/21

アドバンスド

Row Level Security機能(1)

このコンテンツでは、SpotfreのRow Level Security機能について説明していきます。
なお、本コンテンツで利用したバージョンはSpotfire10.10/11.4となります。ご利用環境によって、一部画面構成が異なる可能性があります。ご了承ください。

探索的分析/原因分析の領域で
高い評価と実績
TIBCO Spotfire

TIBCO Spotfire®は分析に必要な機能を単一製品でカバーするビジュアルアナリティクスツールです。

Row Level Security機能とは

Row Level Security機能とは、ログインしているSpotfireユーザーによって見れるデータを制限できる機能です。
下図のように1つのデータに2つの事業所の顧客データが存在している場合、ユーザーの所属に応じて見れるデータを制限できます。

  • 事業所Aに属するユーザー → 事業所Aの顧客のみをダッシュボードで可視化
  • 事業所Bに属するユーザー → 事業所Bの顧客のみをダッシュボードで可視化

Row Level Security機能を実現するためには下記2つの前提事項があります。

  • データソースに該当ユーザー(ユーザー名、グループ、ドメイン名のいずれか)を示すカラムが存在している。
  • 該当ユーザー名やグループ名をSpotfire Serverの管理画面で作成されている。

上記前提事項を踏まえたうえで、Row Level Security機能を2通りの方法で実現します。
(1)データ接続
(2)インフォメーションリンク
本コンテンツでは(1)データ接続 について説明します。(2)インフォメーションリンクについてはこちらの記事を参照してください。

今回は例として、下記のようなデータ(testtable)を利用して、自分が属しているグループのレコードだけをSpotfre側に渡します。
本コンテンツの仮想Spotfireユーザーは事業所グループ「groupB」に所属しているため、「groupB」のレコードだけをSpotfireに表示させるようにします。

データベースへの接続

データが格納されているデータベースに接続します。

データベースとの接続方法はこちらをご参照ください。

接続ができたら「接続内のビュー」ダイアログが表示されます。

カスタムクエリの作成

カスタムクエリを作成し、ユーザーに権限のあるデータのみを取得します。
「接続内のビュー」ダイアログにおいて、カスタム クエリ > 新規カスタム クエリ をクリックすると「カスタム クエリ」ダイアログが表示されます。

下図のように設定していきます。

  • クエリ名:RowLevelSecurity_test
  • クエリ:以下のスクリプトを設定します。

    SELECT * FROM testtable
    WHERE testtable.事業所グループ in (?current_groups)
  • パラメータタブ:「パーソナライズされたクエリにパラメーターを使用(ユーザーとグループ)」にチェックを入れます。
    上記の項目にチェックを入れると、以下のパラメータを使用できるようになります。
    ※パラメータをSQL内で使用する場合は先頭に「?」をつけます。
  • ?current_user : 現在のSpotfireユーザー名
  • ?current_groups : 現在のSpotfireユーザーの所属グループ名(複数可能)
  • ?current_user_domain : 現在のSotfireユーザーの所属ドメイン名

設定できたら「OK」を押します。

すると「接続内のビュー」に先ほど作成したカスタムクエリが表示されるので、このまま「OK」を押します。

今回はインメモリ処理で行うため、「データを分析に追加」画面で「インポート」を選択します。インDB処理にしたい場合は「外部」を選択します。

データを取り込めたら可視化をします。試しにデータテーブルを出して確認します。
今回のSpotfireユーザーは「groupB」に所属しているため、「groupB」のレコードだけが表示されます。

実際に確認してみると、下図のように事業所グループが「groupB」のレコードのみが表示されています。
このように、データ接続からユーザーごとに閲覧できるデータを制限することが可能です。

探索的分析/原因分析の領域で
高い評価と実績
TIBCO Spotfire

TIBCO Spotfire®は分析に必要な機能を単一製品でカバーするビジュアルアナリティクスツールです。

【アドバンスド】記事一覧に戻る
全記事一覧に戻る