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

ロールの設定

ここでは、各ユーザの権限を管理するため、ロール(役割)を設定します。ロールは「人(組織)」の役割を表し、認可は「どのロール(ユーザ・組織)にどのリソース権限を与えるか」を制御します。
運用の基本的な流れは「ロールの作成/設定」から「認可設定」へ進みます。たとえば、ワークフローを利用するユーザを用意したい場合は、作成、設定したロールに「ワークフローの申請」権限を認可として設定します。

参考

ロールごとの関連ユーザやサブロールを確認したい場合は、「サイトマップ > テナント管理 > ロール」の「ロール一覧」から表示できます。 「サブロール」は 「ロールの包含(親子関係)を定義する仕組み」 です。親ロールに対して子ロール(サブロール)を設定すると、「親ロールを持つユーザが、サブロールに属する権限や対象を参照できる」ようになります。

ロールの利用例

  • メニューの閲覧制御:例/このメニューは「管理者ロール」の人だけが見える
  • ワークフローの申請・承認可否:例/この申請は「経理担当ロール」の人しか承認できない
  • APIやWebサービスの利用制限:例/特定APIは「開発者ロール」保有者のみ許可 など

ロールで設定できる内容

画面設定項目設定できる内容必須
ロール情報ロールIDロールを一意に識別するためのキー
ロール名ロールの名称を設定
カテゴリロールがどの機能で利用されているかなどをまとめて管理するための分類を既存のものから選択、または新規に入力
表示名表示名を入力。日本語欄は必須だが、英語および中国語(中国)欄は任意
サブロールロールにサブロールを追加したい場合に「サブロールを検索して追加」をクリックして追加
備考備考があれば入力

ロールを設定する

新規作成画面

  1. 「サイトマップ > テナント管理 > ロール」の「ロール一覧」を開く
  2. 「新規登録」をクリックして、「ロール編集」画面を表示し、必要事項を入力してロールを作成する

開発者用ロールの作成

既存の複数のロールをそのままユーザに割り当てる運用は、管理が煩雑になりやすく、手間やコストが増大する可能性があります。業務に応じた「◯◯ロール」を作成し、必要な権限(ポリシー)だけを集約して割り当てる方法は、運用しやすくセキュリティの面でも安全です。
ここでは、既存のロールを組み合わせて、開発者が必要とする権限だけをまとめた「開発者用ロール」を作成してみましょう。
まずは方針を決め、その後にロールの新規作成および認可設定を行い、対象ユーザへの割り当て、最後に動作確認を実施するという流れで進めます。

メモ

ユーザへのロール付与は、IM-LogicDesignerやAPIを利用して自動化・プログラムで実行する方法もありますが、このガイドでは管理画面からの操作で付与する方法を説明します。

  1. 操作権限および利用するアプリケーションの整理整頓

まずは、開発者が「必要な操作/許可する操作」と「禁止する操作」を整理整頓をし、作成前の準備をします。
「禁止する操作」を確認するのは、セキュリティにおける最小権限の原則として、不要な権限の付与を防ぐためです。このようなポリシーは、あらかじめ明確にしておくことが重要です。

  • 開発者に必要な操作
    • 開発用メニューを閲覧できる(menu.view: dev_menu)
    • 開発用コンソールを使用できる(service.execute: dev_console)
    • ビルドジョブを実行できる(job.run: dev_build)
    • 開発用データベース設定は参照のみ(table.read) など
  • 与えない権限(禁止する操作)
    • 本番デプロイ、テナント管理、ユーザ管理、システム管理権限 など

操作と共に、開発に使用するアプリケーションもリストアップします。
ここでは、IM-LogicDesigner、IM-Workflow、ViewCreator、IM-BloomMakerを利用する開発者を想定した例を解説します。

  1. ロールの新規作成

「サイトマップ > テナント管理 > ロール」からロール一覧画面を表示し、「新規登録」をクリックしてロール登録画面を開きます。
ロールID、ロール名、表示名などを入力します。

次に、認可設定画面で作成した新規ロールを「対象者条件(サブジェクト)」に追加します。

認可設定(ポリシー画面)では「対象者(横軸)」に作成したロールを追加する必要があります。
「サイトマップ > テナント管理 > 認可」から、認可設定画面を開きます。「権限設定を開始する」をクリックしてください。
「条件の新規作成」をクリックして、「対象者の条件設定」モーダルを開きます。
「ロール検索」から、作成したロールを検索して追加します。

これで、作成した新規ロールが認可設定画面に表示されました。

新規ロールを対象者条件に追加する手順は、「テナント管理者操作ガイド - 認可を設定する - 対象者条件を追加する」も参照してください。

  1. ロールに認可を設定

手順1.でリストアップした既存ロールの認可設定と同様の認可を設定します。
同じリソースに対して同じ認可ポリシーを新規ロールに追加します。

確認する認可ポリシーが多い場合は、エクスポート機能を利用して出力したXMLファイル内の記述を参照する方法を推奨します。
エクスポート機能は、認可設定画面から実行可能です。エクスポートしたいセルを選択(Shiftキー+クリック、または上部の管理者名クリックで複数選択可)し、「エクスポート」をクリックすると確認ダイアログが表示されますので、任意の場所に出力してください。

権限設定のエクスポート画面

  1. 作成したロール対象ユーザに割り当てる

作成したロールをユーザに割り当てます。「サイトマップ > 共通マスタ > マスタメンテナンス > ユーザ」をクリックします。
ユーザ詳細画面の「ロール」タブから「追加」をクリックし、ロール検索画面で作成したロールを付与します。
ロールの有効期間を変更する場合は、この画面で設定可能です。
また、次の動作確認時に使用するテストユーザにも付与してください。

  1. 動作確認

権限付与後、テストユーザでログインし、実際に作業(定義作成/編集/配布など)ができるかを確認します。 必要に応じて、不要な管理権限を外すなどの権限の最小化を行ってください。

一般ユーザ用ロールの作成

次に、一般ユーザ用のロールを作成してみましょう。ここでは例として、ワークフローの登録・承認も行う経理担当者のロールを作成します。
手順は上記「開発者用ロールの作成」と同じように、操作権限を整理し、必要なロールと認可を設定します。

  • 経理担当者に必要な操作
    • 基本ログインや一般操作(「一般ユーザ」系ロール)
    • ワークフローの承認や案件参照(「IM-Workflow ユーザ」「処理対象者」「参照者」ロール)
    • 取引先一覧や会計データの一覧参照、既存のクエリ・ビューの利用(「ViewCreator 利用者」「View参照者」ロール)
    • 証憑や請求書の閲覧・ダウンロード、登録(「Accel Documents 閲覧者」「Accel Documents 編集者」ロール) など

組み合わせが少数であれば、「サブロール」欄で組み合わせたい既存ロールを選択し、作成した新規ロールに追加します。
ただし、ワークフローの管理グループではサブロールが考慮されない場合があります。この場合は、直接子ロール(参照されるロール)を割り当てる必要があります。
また、Accel Collaborationや古いバージョンのアプリケーションではサブロールが考慮されない機能がありますので、利用するアプリケーションの仕様を確認してください。

参考

サブロールを利用した新規ロールの作成
サブロールは「権限の複製」ではなく「参照(包含)」です。サブロールを割り当てられたロール自体に既存ロールのポリシーがコピーされるわけではなく、権限判定時にサブロールが含まれているかを参照して許可が与えられます。

そのため、一部のアプリケーションではサブロールを参照しない、または限定的にしか参照しない機能があります。この場合は、機能ごとにサブロール対応状況を確認する必要があります。
下記画像のように、サブロールを利用して既存のロールを組み合わせた新規ロールを作成することも可能ですが、サブロール設計が複雑になると、どのロールがどの権限を与えているか追いにくくなり、誤付与や権限過多の原因になります。
設定するサブロールが少数の場合は便利な方法ですが、期待した動作にならない/管理が複雑になるリスクがありますので、導入時は対象アプリケーションでの挙動確認と再展開ジョブの確認を必ず行ってください。