メインコンテンツまでスキップ

認可設定の種類と仕様

認可設定には複数の種類があり、それぞれ評価される箇所や挙動(仕様)が異なります。同じ「権限」であっても、ログイン前後や画面・データ(API)など、どこで評価されるかによって動作が変わる点に注意が必要です。

実際の認可設定は、「ロール設定と認可設定」で説明します。ここでは補足として、認可設定の種類と仕様について整理し、理解を深めていきましょう。

認可設定の概要

テナント管理者は、ユーザがシステムを適切に利用できるよう、認可設定を行う必要があります。認可では、「誰が(サブジェクト)」「何を(リソース)」「どうする(アクション)」という組み合わせでアクセス権限を定義し、機能ごとに利用範囲を制御します。

認可設定を行う上で重要なのが、「ロール」です。ロールは作成しただけでは権限は付与されず、ユーザへのロールの割り当てと、ロールに対する権限設定を行うことで、アクセス制御が実現されます。

参考

ロールと認可の関係や認可設定の仕組み(「誰が」「何を」「どうする」といったアクセス権限)について確認したい場合は、「セキュリティ対策と権限管理 > intra-martの権限管理」を参照してください。

認可設定の種類

認可設定は、評価される箇所の違いにより、運用の観点で3つに分類できます。

  • システムを利用するための認可設定:プラットフォームの利用可否を制御する
  • 処理を実行するための認可設定:画面の表示や各種処理の実行可否を制御する
  • マスタを参照・編集するための認可設定:IM-共通マスタや各アプリケーションごとのマスタに対する参照・編集権限を制御する

ここでは、それぞれの種類と特徴について説明します。

システムを利用するための認可設定

システムへのログインやポータル表示、基本メニューや共通機能など、プラットフォームの利用可否を制御する認可設定です。ログイン後に表示されるメニューや、参照可能なポータル・ポートレット、特定のグループポータルへのアクセス可否など、UI上で「見えるか/アクセスできるか」を制御する、画面の入口レベルの認可にあたります。

主な設定対象(システム利用)

リソースの種類内容制御できること
「ポータル設定」  グループポータルグループポータルの表示権限
「ポートレット編集モード設定」「ポートレット設定」  ポートレットポートレットの表示可否、編集モードに対する操作権限
「メニュー設定」メニューグループ、メニューアイテムメニューの表示可否
「画面・処理」メニューに対応する画面リソース  画面へのアクセス可否(URL単位での制御)
※ 同一URLの場合は、画面リソース側でも制御可能  
コラム

ポータルとは、ログイン後に表示されるホーム画面のことで、複数のポートレット(機能画面)を組み合わせて構成されます。ポータルには、管理者が作成し、ユーザに割り当てて利用させる「グループポータル」と、ユーザ自身が作成し、利用する「ユーザポータル」の2種類があります。グループポータルにはアクセス権を設定できるため、「部長用ポータル」「営業部用ポータル」など、ユーザやロールに応じたポータルを提供できます。

設定方法(システム利用)

システムを利用するための認可設定は、「認可設定」画面から行います。

  1. ]をクリックします。
    └ 「サイトマップ」画面が表示されます。
  2. テナント管理」メニューを表示し、[認可]をクリックします。
    └ 「認可設定(リソースの種類名)」画面が表示されます。
  1. リソースの種類」にある[]をクリックします。
    └ 上記「主な設定対象(システム利用)」を参照してください。

  1. 権限設定を開始する]をクリックします。
    └ 権限設定が編集モードに切り替わります。
  2. 設定したいサブジェクトの認可を設定します。
    (許可):権限が付与されている状態です。
    (禁止):権限がはく奪されている状態です。
  1. 権限設定を終了する]をクリックします。
    └ 権限設定が閲覧モードに切り替わります。
コラム

たとえば、システムを利用するための認可設定には、以下のような設定例があります。

  • 人事メニューを人事部のみ表示する場合
    「人事担当者」ロールを作成し、認可設定の対象者に追加します。リソースの種類で[メニュー設定]を選択し、リソースで「メニューグループ」の配下にあるアイテムの認可を、「人事担当者」ロールにのみ「許可」に設定します。
  • グループポータルを編集できるユーザをポータル管理者のみに限定する場合
    リソースの種類で[ポートレット編集モード設定]を選択し、リソースで「ポートレット編集モード」に対する認可を設定します。具体的には、「テナント管理者」ロールにのみ「許可」を設定し、その他のロールは「禁止」に設定します。
  • 開発中の画面をメニューから非表示にする場合
    リソースの種類で[メニュー設定]を選択し、リソースで「メニューグループ」の配下にあるアイテムの認可を「開発者」ロール以外は「禁止」に設定します。ただし、メニューを非表示にしても、該当リソースへのアクセス権限が「許可」に設定されている場合は、URLを直接入力することで画面に遷移できます。これは、メニューの表示制御と画面へのアクセス制御が別の仕組みであるためです。開発中の機能や公開前の画面を確実に制限するには、リソースの種類で[画面・処理]を選択し、該当リソースに対する認可も、利用させないロールには「禁止」に設定する必要があります。

なお、補足として、ログイン画面は認証前の画面であるため、認可によってログイン画面への遷移自体を制御することはできません。

処理を実行するための認可設定

具体的な画面の表示や各種処理の実行可否を制御する認可設定です。データの登録・更新・削除、ジョブの実行、ワークフロー定義・実行、各種処理(Webサービス関数やREST API実行)など、アプリケーションにおける操作や処理の実行可否を制御します。各操作は、対応するURL(ルーティング)単位で認可を設定することで制御されます。

主な設定対象(処理実行)

リソースの種類内容制御できること
「(モジュール名など) REST API」各モジュールが提供するREST APIに対応するリソース各モジュールが提供する処理の実行可否
「Webサービス」Webサービスリソースグループの親グループおよび関数ごとのリソースWebサービス(関数単位)の実行可否
「画面・処理」個々の画面や処理に対応するリソース(URI)画面の表示可否、処理の実行可否
設定方法(処理実行)

処理を実行するための認可設定は、「認可設定」画面から設定できるほか、Accel Studioの「アプリケーション管理」画面からも設定できます。「アプリケーション管理」画面では、対象アプリケーションに関連するリソースのみが表示されるため、必要な認可を探しやすく、効率的に設定できます。

  1. ]をクリックします。
    └ 「サイトマップ」画面が表示されます。
  2. Accel Studio」メニューを表示し、[アプリケーション一覧]をクリックします。
    └ 「アプリケーション一覧」画面が表示されます。
  1. 設定したいアプリケーションが格納されているカテゴリをクリックします。
    └ 設定メニューが表示されます。
  2. 該当のアプリケーションをクリックします。
    └ 「アプリケーション管理」画面が表示されます。

  1. 権限設定]をクリックします。
    └ 権限設定メニューが表示されます。
  2. 認可設定]をクリックします。
    └ 「認可設定(リソースの種類名)」画面が表示されます。
  1. 権限を変更したいセルをクリックします。
    (許可):権限が付与されている状態です。
    (禁止):権限がはく奪されている状態です。
  2. 更新]をクリックします。
    └ 「アプリケーション認可変更確認」ダイアログで[更新]をクリックします。
コラム

たとえば、処理を実行するための認可設定には、以下のような設定例があります。

  • 案件の承認・差し戻しなどの操作を特定のユーザに限定する場合
    承認や差し戻し処理に対応する画面URL(ルーティング)を選択し、認可を設定します。具体的には、承認者のロールにのみ「許可」を設定し、それ以外のロールには「禁止」を設定します。
  • 案件の参照や履歴表示を特定のユーザのみに許可する場合
    参照画面や履歴表示に対応する画面URL(ルーティング)を選択し、認可を設定します。具体的には、参照のみ許可するロールに「許可」を設定し、それ以外のロールには「禁止」を設定します。
  • 特定のAPI(HTTPサービス)の実行を制限する場合
    対象のAPIに対応するURL(ルーティング)を選択し、認可を設定します。実行を許可するロールにのみ「許可」を設定し、それ以外のロールには「禁止」を設定します。
  • IM-LogicDesignerのルーティング実行権限を制御する場合
    対象のロジックルーティングに対応するURLを選択し、認可を設定します。実行を許可するロールにのみ「許可」を設定し、それ以外のロールには「禁止」を設定します。

なお、認可設定はURL単位で制御されますが、処理の内容によっては、アプリケーション内のスクリプトやフロー定義側でも追加の認可チェックが必要となる場合があります。

注意

処理を実行するための認可設定では、以下の点に注意してください。

  • 多くの機能(例:IM-Workflowの共通機能)では、画面単位ではなく処理単位での認可設定が必要となる場合があります。
  • リソースが細かく定義されているため、どの操作にどのリソースが対応しているかを把握した上で、ロールを設計してください。
  • 一部の画面(ポートレットなど)では、URL(ルーティング)を直接指定したアクセスに対する制御が必要となる場合があります。
  • ジョブやスクリプトでAPIを呼び出す場合は、そのAPIに対応する認可リソースの設定も確認してください。

マスタを参照・編集するための認可設定

IM-共通マスタ(ユーザ、会社、組織、パブリックグループ、法人・取引先など)や、アプリケーションごとに独自に作成したマスタに対する参照・編集権限を制御する認可設定です。各マスタに用意された管理画面のアクセス制御や、IM-Authzのリソース(画面・処理)に対するポリシーによって権限を管理します。また、API経由でマスタを参照・編集する処理に対しても、認可設定(サービスリソースなど)を行います。

主な設定対象(マスタ参照・編集)

リソースの種類内容制御できること
「テーブルのアクセス権設定」
「テーブルのアクセス権設定(参照/更新)」    
TableMaintenanceで管理されるテーブルごとのアクセス権設定テーブル単位での参照・更新・削除などの操作可否
「プロファイル参照範囲設定」
「会社一覧」「個人プロファイル設定」
各モジュールのマスタ管理画面に対応するリソースマスタ管理画面へのアクセス可否、参照・編集操作の可否
「画面・処理」マスタの登録・更新などの処理に対応するリソース(URL単位)画面や処理の実行可否(URL単位での制御)
設定方法(マスタ参照・編集)

マスタを参照・編集するための認可設定は、「認可設定」画面から行います。

  1. ]をクリックします。
    └ 「サイトマップ」画面が表示されます。
  2. テナント管理」メニューを表示し、[認可]をクリックします。
    └ 「認可設定(リソースの種類名)」画面が表示されます。
  1. リソースの種類」にある[]をクリックします。
    └ 上記「主な設定対象(マスタ参照・編集)」を参照してください。

  1. 権限設定を開始する]をクリックします。
    └ 権限設定が編集モードに切り替わります。
  2. 設定したいサブジェクトの認可を設定します。
    (許可):権限が付与されている状態です。
    (禁止):権限がはく奪されている状態です。
  1. 権限設定を終了する]をクリックします。
    └ 権限設定が閲覧モードに切り替わります。
コラム

たとえば、マスタを参照・編集するための認可設定には、以下のような設定例があります。

  • 一般ユーザが他部署の社員の個人情報を参照できないようにする場合
    リソースの種類で[プロファイルの参照範囲設定]を選択し、参照可能なユーザ範囲を制限します。特定のユーザや組織への認可を「禁止」に設定します。
  • 特定のマスタを総務課に所属するユーザのみに編集させる場合
    「総務担当者」ロールを作成し、認可設定の対象者に追加します。リソースの種類で[画面・処理]を選択し、対象の画面や処理に対する認可を、「総務担当者」ロールのみ「許可」に設定します。また、リソースの種類で「テーブルのアクセス権設定」を選択し、対象のテーブルに対する閲覧・編集権限を、「総務担当者」ロールのみ「許可」に設定します。

なお、マスタの参照制御は、メニュー表示制御とは別に、データ単位(行レベル)で参照範囲を制御できる場合があります。(例:「プロファイル参照範囲設定」)

注意

マスタを参照・編集するための認可設定では、マスタ権限の変更が業務に大きな影響を与えるため、事前に影響範囲を確認し、十分なテストを実施してから認可設定を行ってください。

認可設定の一括設定

リソースにおける親子関係

認可設定のリソースには、親子関係が存在します。リソースの親子関係とは、リソースグループの階層構造に基づき、親リソースの認可設定を子リソースに一括で反映できる仕組みです。

一括設定を行う場合

たとえば、リソースの種類で[画面・処理]を選択し、リソースの「IM-BloomMaker」に関する認可設定をまとめて行う場合について説明します。

親リソースである「IM-BloomMaker」の認可を「許可」に変更すると、その子リソースにある「IM-BloomMaker 共通定数」から「IM-BloomMaker 管理ツール」までの各項目が自動的に「許可」に変更されます。

設定と同時に、親リソースは許可状態を示す「」に切り替わり、子リソースも同様に許可状態の「」に切り替わります。親リソースの認可設定が継承されている場合、子リソースは薄い緑色で表示されます。

通常は、親リソースのみにチェックを設定し、リソースグループ単位で認可を設定します。

個別設定を行う場合

たとえば、親リソースの「IM-BloomMaker」配下にある子リソースを個別に認可設定を行う場合について説明します。

親リソースである「IM-BloomMaker」の認可を「禁止」に設定すると、その子リソースである「IM-BloomMaker 共通定数」から「IM-BloomMaker 管理ツール」までの各項目も自動的に「禁止」に設定されます。

その上で、「IM-BloomMaker デザイナ」や「IM-BloomMaker エレメントセット管理」など、特定の機能に対して個別に権限を付与したい場合は、対象リソースごとに「許可」を設定します。

このように、必要な機能のみを選択的に許可することで、利用者の役割に応じた適切な権限管理を行うことができます。

認可設定は、業務アプリケーションの開発時にも都度見直しが必要となる設定です。「4. アプリケーション開発の準備」を参照し、必要に応じて、ロールの追加や認可設定を行ってください。