はじめに
情報漏洩への対策として、ユーザーごとに情報の表示を制御することも重要です。
今回は、以前Yokoが紹介した記事「特定のユーザにしか見えないヒミツのQlikのシートを作ってみる」で使用した GetUserAttr を応用し、ログインユーザーに応じてセンシティブな情報の表示・非表示を切り替える方法をご紹介します。
現状
良くある顧客の売上情報と個人情報を組み合わせたシートがあるとします。
誰でも見れる状態でこの情報は危険です。
例えばマネージャ以上であれば個人情報が見れるといった条件設定が出来たら便利だと思いませんか?
今回はログインに使用するEMAILアドレスによって表示・非表示を切り替えてセンシティブな情報を守る方法をご紹介します。

手順①許可リスト作成
閲覧を許可するEMAILをExcelでリスト化します。

手順②Qlikスクリプト追加
スクリプトにアイランドテーブルで先ほど作成した許可リストを読みこむスクリプトを追加します。
その後リロードしてください。

手順③重要情報は非表示に
今回は顧客氏名、住所、電話番号を決まったユーザーにしか表示しない様に設定します。
シートの編集からチャートを選択し、対象項目をクリックし、プレゼンテーションの条件に応じて列を表示の
「fx」をクリックしGetUserAttrを設定します。

条件に応じて列を表示へ下記を設定します。
許可リストのEMAILアドレスとログインしたEMAILアドレスを比較する数式は以下の通りです。

=Match(GetUserAttr('userEmail'), '$(=Concat(distinct EMAIL, chr(39) & ',' & chr(39)))')
同じ設定を、住所、電話番号にも設定します。
動作確認
完成です!
許可リストに記載のあるblog1.@liner-notes.co.jpでログインしてみます。

全項目表示されています。
次に許可リストにリストに無いblog3.@liner-notes.co.jpでログインしてみます。

顧客氏名、住所、電話番号は表示されません。
意図した通りに非表示になっています。
まとめ
今回は、QlikのGetUserAttrを活用して、ユーザーごとに顧客の個人情報を表示・非表示にする方法をご紹介しました。許可リストと表示条件を設定することで、許可されたユーザーには顧客氏名・住所・電話番号を表示し、それ以外のユーザーには非表示にできます。
個人情報やその他の重要な情報を含むシートを作成する際は、閲覧できるユーザーを適切に制限することが大切です。ぜひ、Qlikアプリでの情報管理にお役立てください!


