プロパティベースのアクセス制御
アクセス制御はプロパティベースで、プロパティはアクセス リクエストの関係者について説明するために使われます。この場合、関係者は以下の通りです。
- リクエストを行っているユーザー
- リクエストが行われる環境
- リクエストが適用されるリソース
各プロパティは、"group = Sales" や "resourcetype = App" などのいわゆるプロパティ値ペアの値によって定義されます。また、各リクエストには、要請者がリソースでの実行を求めているアクション (作成、更新、削除など) とともに、リクエストに関与しているユーザー、環境、リソースのプロパティ値ペアが含まれます。
ルールを使用したアクセスの評価
プロパティ値ペアに基づいてルールを作成することができます。これは、要請者のプロパティ値がリソースのセキュリティ ルールで定義されたプロパティ値の条件に一致する場合にのみ、当該リソースでのアクションのリクエストが受け入れられることを意味します。
通常、ルールは文章として読み取ることができます:
"[条件] の場合、要請者に [リソース] の [アクション] を許可する"
各ルールでは、アクションと、アクションを適用するリソースについて説明する必要があります。リソースのルールを定義しなければ、どのユーザーもそのリソースにアクセスできません。
リクエストを受け取ると、ルール エンジンは該当するすべてのルールに照らし合わせてリクエストを評価します。該当するルールとは、リクエストと同じタイプのリソースに適用されるルールを指します。各ルールにはリソース フィルタが付随しているため、ルール エンジンはすべてのリソースに対してリクエストを評価する必要がありません。最後に、条件にリソースのプロパティ条件を与えることにより、ルールがどのリソースに適用されるのか正確に指定することができます。
ルール評価のワークフロー
たとえば、あなたが会社の営業部に勤務しており、財務部が発表した四半期業績ストリームを読みたいとします。たとえば、あなたが会社の営業部に勤務しており、財務部が発表した四半期業績ストリームを読みたいとします。 この場合は、「財務」アクティブ ディレクトリ グループに属するユーザーのみがストリームを読み取れるというルールがこのストリームにはあります。
これをルールに置き換えると、以下のようになります:
「[グループ=財務] の場合、ユーザーに [四半期決算のストリーム] を [読み取る] ことを許可」
この例では、ルールの評価で「False」という結果が出ます。つまり、あなたのグループは「財務」でないため、読み取りアクセス権がありません。実際には、ストリームのアイコンさえ表示されません。
ルール評価のワークフローは次のとおりです。
- ユーザーによって送信された [Quarterly results stream (四半期業績ストリーム)] の [read (読み取り)] リクエスト
- ルール エンジンが、リクエストを評価するルールがどれであるか特定します
- ルール エンジンによってリクエストが評価されます
基準を満たしていない場合、アクセス権は与えられません
条件の複数のプロパティ値ペア:
ルール評価のワークフローの例は基本的なもので、1 つの条件を持つ 1 つのリソースに 1 つのアクションがあります。しかし、Qlik Sense セキュリティ ルールの長所は、1 つのルールで条件の異なる複数のリソースに対して複数のアクションを適用できるという点です。四半期業績の例を見ると、入力にアクティブ ディレクトリ グループを使用して、財務部と管理部の双方への読み取りおよび更新アクセス権を提供するようルールを拡張できます。
「グループ=財務 またはグループ=管理の場合、ユーザーに [四半期決算のストリーム] の読み出しおよび更新を許可」
Qlik Sense で事前に定義されたセキュリティ ルール
Qlik Sense には、[ReadOnly] および [Default] ルールと呼ばれる予め定義されたルールが含まれています。これらのルールは、QMC 管理者が Qlik Sense システムを管理し、セキュリティ ルールを作成、更新、管理できるようにするために提供されています。ReadOnly ルールはセキュリティにとって重要で、編集できません。既定のルールは、会社とシステムの要件に合わせて編集できます。