はじめに
本記事では、MicroStrategyにおけるアトリビュート/メトリックのACL(アクセスコントロールリスト)がレポート実行にどのような影響がでるのかを紹介します。
※データは検証用のダミーデータを使用
※MicroStrategyのバージョンは2021.Update4
検証
以下のようなレポートを用意しました。
今回使用する「テストユーザー」に対して
このレポート項目のACLをそれぞれ以下のように設定した場合、
テストユーザーでレポート実行をするとどのような挙動になるのか確認します。
①実績(メトリック)のACLのみ無効にする
②カテゴリー(アトリビュート)のACLのみ無効にする
※無効=アクセス制御を無しにする
検証①:メトリックのACLのみ無効にする
まず、実績メトリックに対して「テストユーザー」のアクセス制御を「すべて拒否」に設定します。
※カテゴリーアトリビュートのACLはそのまま有効にしています
次に先ほどのレポートを実行します。
すると、実績メトリックは表示されずカテゴリーアトリビュートのみが表示されます。
このようにメトリックのACLが無効の場合、
レポート実行はできてもレポートに対象メトリックが表示されません。
特定のユーザーにのみ見せたい項目がレポート上にある場合、
このACLを活用することで、同一レポートでもユーザーによって見せる項目を変えることが可能となります。
検証②:アトリビュートのACLのみ無効にする
検証①と同様に、まずはカテゴリーアトリビュートに対してのアクセス権限を「すべて拒否」に設定します。
※実績メトリックのACLは元のまま有効にしています
次に先ほどのレポートを実行します。
すると以下エラーが表示されレポート実行ができません。
メトリックの場合とは異なり、アトリビュートに対してのアクセス権限がないとレポートの実行自体が不可となります。
アトリビュートに対してACLを設定する場合は注意が必要です。
※ただし下記補足の通り、アトリビュートのACLが無効でもレポート実行できる場合があります
補足
検証②でアトリビュートのACLが無効だとレポート実行がエラーになりましたが、
エラーになるのは対象アトリビュートがレポートの初期表示項目(レポートビュー)に配置されている場合です。
対象アトリビュートをレポートの初期表示項目に含めず、
レポートオブジェクトに配置しているだけであればレポート実行は可能です。
その場合、以下のように対象アトリビュートは表示されません。
※同レポートを権限のある別ユーザーで実行すればレポートオブジェクトに対象アトリビュートが表示されます
おわりに
今回はACLが無効のメトリック/アトリビュートを含むレポートの実行可否の違いについて紹介しました。
メトリック→ACLがなくてもレポート実行可(項目が表示されないだけ)
アトリビュート→ACLがないとレポート実行自体が不可(※補足のケースを除く)
レポート作成時など、本記事の内容が参考になれば幸いです。
最後までご覧いただきありがとうございました。