CookBook

データ参照表示時のページへのアクセス権を認可で制御する方法

投稿日:2021-11-25 更新日:

この CookBook では、ViewCreator の「データ参照」表示時のアクセス権を認可で制御する方法について紹介しています。

データ参照の参照権では、その定義を利用してデータを見ることができるかどうかを設定可能ですが、データ参照表示画面のURLに対する制御ではありません。
参考: ViewCreator 管理者操作ガイド - 参照権の設定

そのため、たとえばデータ参照のURLをサイトマップに登録して利用しようとしたとき、参照権を持たないユーザがサイトマップを表示した場合であってもサイトマップにリンクが表示されてしまいます。
※リンクを押下するとエラー画面に遷移します。

この CookBook では、個々のデータ参照(リスト集計またはサマリ集計)表示画面の新しいURL1つに対して認可リソースを1つ作成することで、そのような問題に対処する方法をご紹介します。

レシピ

  1. ルーティング定義の作成
  2. 認可リソースの作成とアクセス権の設定
  3. サイトマップへの登録

ルーティング定義の作成

IM-Juggling のプロジェクト配下に conf/routing-jssp-config/im_cookbook_196411_viewcreator.xml を以下の内容で作成します。

参考: セットアップガイド - IM-Juggling とは
参考: 設定ファイルリファレンス - スクリプト開発モデルルーティング設定

war ファイルの作成とデプロイ

下記ガイドの手順に従って WARファイルを作成(出力)してください。
セットアップガイド - WARファイルの出力

下記ガイドの手順に従って WARファイルをデプロイしてください。
セットアップガイド - デプロイ

認可リソースの作成とアクセス権の設定

認可リソースの作成

テナント管理者でログインして認可設定画面を開き、下記ガイドの手順に従って認可リソースを追加してください。
テナント管理者操作ガイド - リソースを追加する

※データ参照定義1つに対して認可リソースを1つ作成するため、適宜リソースグループを作成して管理しやすいようにしてください。

「リソースURI」を im_cookbook_196411_viewcreator.xml の authz タグの uri の設定に従って「service://im_cookbook/196411/viewcreator/dataview/%データ参照コード%」としてください。
%データ参照コード% の部分は認可制御を行いたいデータ参照定義のデータ参照コードに置き換えてください。
例) service://im_cookbook/196411/viewcreator/dataview/5i7urzmesvqqip4

データ参照コードについては、下記ドキュメントを参照してください。
ViewCreator 管理者操作ガイド - リスト集計の作成

アクセス権の設定

作成した認可リソースに対してアクセス権を設定します。
ここでは例として、認証済みユーザに対して許可を行います。

注意点として、データ参照編集画面の「参照権」も認可の設定と同じになるように合わせておく必要があります。
ここでは、認可リソースを認証済みユーザに対して許可したため、参照権も同様に認証済みユーザに対して許可します。

参照を許可されたユーザ(認証済みユーザ)が %コンテキストパス%/im_cookbook/196411/viewcreator/dataview/new_list/5i7urzmesvqqip4 にブラウザからアクセスすると、データ参照コードが 5i7urzmesvqqip4 の集計画面を表示できます。
例) http://example.com/imart/im_cookbook/196411/viewcreator/dataview/new_list/5i7urzmesvqqip4

サイトマップへの登録

最後に、アクセス可能になったURLをサイトマップに登録します。

登録手順の詳細は下記ドキュメントを参照してください。
テナント管理者操作ガイド - メニューを設定する

作成したデータ参照の認可リソースが許可されている場合はサイトマップにメニューアイテムが表示されます。

リンクを押下すると、新しく定義したURLでデータ参照が表示されます。

許可されていない場合は、サイトマップでメニューアイテムが表示されていないことを確認できます。

他のデータ参照についても同様に認可制御を行いたい場合は、「認可リソースの作成とアクセス権の設定」の操作を繰り返します。
ルーティング定義の作成(修正)は不要です。

クロス集計やグラフ集計のデータ参照を認可制御したい場合

クロス集計やグラフ集計のデータ参照を認可制御したい場合は、ルーティング定義を以下のように設定してください。

-CookBook
-

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

no image

IM-BloomMaker 「リッチテーブル」エレメントのサンプル集

この CookBook では、intra-mart Accel Platform 2020 Spring から利用可能になった IM-BloomMaker のリッチテーブルエレメントの活用方法について …

no image

IM-BloomMaker グラフエレメントのツールチップのフォーマットを指定する方法

このCookBookでは、Accel Platform 2020 Winter でグラフエレメントに追加された「tooltipPointFormat」プロパティについて紹介しています。 「toolti …

【ViewCreator】LogicDesignerと連携してデータ参照の一覧を表示するデータ参照を作成する方法

ViewCreator において、標準の「データ参照一覧」画面では以下のような変更ができません。 「説明」を一覧に表示する。 「データ参照名」の(初期表示時の)列幅を変更する。 各データ参照の表示画面 …

IM-BloomMaker 時刻入力に設定した日付・時刻型変数の日付やタイムゾーンはどうなっているの?

はじめに 2022 Winter でリリースした「時刻入力」エレメントは、時刻の入力フォームを表示するエレメントです。 「時刻入力」エレメントの value プロパティには日付・時刻型変数を指定します …

IM-BloomMaker のカスタムスクリプト内で $im.resolve を使った一覧画面の作成

この CookBook では、ユーザー情報一覧画面からデータの詳細情報を表示する画面に遷移するために $im.resolve を使う方法を紹介します。 以下のレシピに従って作業を行うと、一覧に表示され …