権限管理の概要
最終更新日: 2020年12月18日
R8 | R9
ロールベースの権限管理では「利用者」と「データ」を直接、結びつけません。その間に「権限」という概念を導入します。
Wagbyはロールベースの権限管理機能を提供します。
権限の基本単位を「パーミッション」と呼びます。
各画面には「自分を処理するためには、このモデルについてのXXX権限が必要である」というチェック機能が備わっています。
「XXX」の部分はそれぞれ、「登録」「更新」「削除」「表示」「検索」といった基本的な権限が入ります。
複数のパーミッションをグループ化したものを「プリンシパル」と呼びます。たとえば、「登録」「更新」パーミッションをグループ化して「更新系プリンシパル」を用意することもできます。Wagbyの標準は「複数パーミッション = 1プリンシパル」となっています。
管理者は、利用者(アカウント)に対して「プリンシパル」を割り当てることができます。
この操作は運用中に行えるため、ある利用者に対して一時的に操作権限を付与したり、削除したりといった柔軟な対応を実現できます。
開発者がモデルを定義したとき、モデルごとに次のパーミッションが自動的に付与されます。標準では、これらすべてのパーミッションを有効とした「一般ユーザ」というプリンシパルもあわせて用意されます。
環境タブ内の「権限」でプリンシパルを管理しています。標準で次のプリンシパルを用意しています。
閲覧・検索・更新・登録・削除・ダウンロード・アップロード・メニュー・一覧更新・帳票出力という標準パーミッションを含んでいます。通常、ログオンアカウント(juser)には「一般ユーザ」プリンシパルを与えます。これによってすべてのモデルへの操作が可能になります。
アカウントごと、かつ、モデルごとに利用制限をかけたい場合は、一般ユーザプリンシパルを与えずに別途用意した(制限付きの)プリンシパルを与えるとよいでしょう。この方法は次ページ以降で説明します。
「一般ユーザ」はシステムの利用のために用意されたものです。
これらはDesignerの「環境 > 権限 > プリンシパル」で確認できます。
すべてのプリンシパルは、次に示すいずれかのカテゴリに属します。開発者は自身でカテゴリを追加することもできます。
開発者が新規に作成するプリンシパルのカテゴリは、標準では "アプリケーション" を指定するとよいでしょう。プリンシパルが増えた場合は新しいカテゴリを作成し、カテゴリごとに管理することで見通しをよくすることができます。
Wagbyのログオンアカウントは juser モデルとして定義されています。
ログオンアカウントの設定時に、どのプリンシパルを割り当てるかを指定することができます。
通常は次のプリンシパルを付与するとよいでしょう。
画面単位ではなく、モデル項目単位に「パーミッション」を設定することができます。
この詳細は、次ページ以降で説明します。
権限設定は「画面」「帳票」「CSV・Excelダウンロード/アップロード更新」に適用されます。
一般利用者が対象範囲となります。システム管理者 (admin) は、すべての権限が有効になります。
権限管理の動作テストでは、システム管理者を用いないようにしてください。
「システム管理者」プリンシパルは、次のように動作します。
インポートエクスポート画面で、システムモデルに「プリンシパル」は表示されません。これは特別なモデルで、アカウント(juser)のインポートエクスポートにあわせて処理されます。
ロール
パーミッションとプリンシパル
たとえば「顧客モデルの表示パーミッション」や「社員モデルの更新パーミッション」などがあります。
ワンポイント
標準のパーミッション
パーミッション
説明
メニューとの関係
内部の表記
閲覧
詳細表示画面へのアクセスを制御します。
なし。詳細表示画面のメニューは用意されません。
select
検索
検索・一覧表示ならびにサブウィンドウ検索のアクセスを制御します。
別途 "メニュー" パーミッションで設定します。(後述)
showlist
更新
更新画面へのアクセスを制御します。
なし。更新画面のメニューは用意されません。
update
登録
登録画面へのアクセスを制御します。
あり。このパーミッションをもたないアカウントは、登録画面のメニューは用意されません。
insert
削除
削除機能へのアクセスを制御します。
なし。削除機能のメニューは用意されません。
delete
ダウンロード
CSV・Excelダウンロード画面へのアクセスを制御します。
あり。このパーミッションをもたないアカウントは、ダウンロード画面のメニューは用意されません。
download
アップロード
CSV・Excelアップロード更新画面へのアクセスを制御します。
あり。このパーミッションをもたないアカウントは、アップロード更新画面のメニューは用意されません。
upload
メニュー
検索・一覧表示画面のメニューへの表示を制御します。
あり。このパーミッションをもたないアカウントは、検索・一覧表示画面のメニューは用意されません。
menu
一覧更新
一覧更新画面へのアクセスを制御します。
あり。このパーミッションをもたないアカウントは、一覧更新画面のメニューは用意されません。
uploadupdate
帳票出力
帳票出力画面へのアクセスを制御します。
あり。このパーミッションをもたないアカウントは、帳票出力画面のメニューは用意されません。
reportlist
標準のプリンシパル
一般ユーザ
それ以外の特別なプリンシパル
それ以外に、システム管理のためのプリンシパルが用意されています。
各プリンシパルの説明は下表の通りです。
カテゴリ
種類
内容
備考
アカウント
一般ユーザ
(説明済みのため割愛します。)
システム管理者
すべての権限をもちます。標準で用意されているアカウント "admin" に割り当てられています。
グループ管理者
各グループには、グループ内のデータに対して特別な権限を持つ「グループ管理者」を用意することができます。
グループ管理者(代理登録不可)
グループ管理者の権限でデータを操作できます。代理登録を行うことはできません。
ユーザ管理
ユーザアカウント(juser)の管理を行います。
R8.4.0
グループ管理
グループ(jgroup)の管理を行います。
R8.4.0
アカウント閲覧者
自分以外のアカウント情報を閲覧することができます。データ権限設定での代理登録機能。ワークフローの代理承認。
接続解除
ログオン済みの利用者を強制的に解除することだけが行える権限です。
マスタ更新者
選択肢モデルの操作を行う権限です。
お知らせ管理者
「お知らせ」の登録、更新操作を行うことができます。
休日設定更新者
システムが管理する「休日」を追加することができます。
共通処理
共通処理
プレファレンス(配色や、各パーツの表示制御)を指定することができます。
パスワード変更
パスワードの変更を行うことができます。
共通検索設定管理
検索設定を共通に管理できる権限です。
R8.3.2
プレファレンス共通設定管理
検索設定を共通に管理できる権限です。
テンプレート
メールテンプレート管理者
メールテンプレートの登録、更新操作を行うことができます。
帳票定義管理者
帳票テンプレートの登録、更新操作を行うことができます。
ジョブ
ジョブ管理者
Wagbyが提供する「ジョブマスタ」の登録、更新操作を行うことができます。
ジョブスケジュール管理者
Wagbyが提供する「ジョブ」の実行ルールを定義できます。指定した時間にジョブが起動します。
バッチジョブ管理
Spring Batch を用いたバッチ処理で、各バッチジョブの状態を操作するための権限です。初期設定では、更新機能を無効としているため、本権限を設定しても利用できません。(バッチジョブは原則として閲覧のみが許可されるようになっています。)
バッチジョブ閲覧
Spring Batch を用いたバッチ処理で、各バッチジョブの状態(インスタンス、実行結果、ステップ)を閲覧できます。
ジョブ専用アカウント
ジョブを実行することができる特別な権限です。このプリンシパルはジョブ実行専用のため、これを有効にすると、ログオン画面からのログオンが行えなくなります。
ワークフロー
フロー状態閲覧
承認すべきワークフローを確認できます。申請したワークフローの状態を確認できます。
ワークフロー管理者
フローパターン。フロー参加者設定。ワークフロー設定。
ワークフロー代理者設定
ワークフローの代理承認で用います。
システム
システムログ閲覧
システムログ閲覧機能を利用できます。
R8.4.0
統計情報閲覧
統計情報機能を利用できます。
R8.4.0
システム情報閲覧
このアプリケーションについての詳細情報を閲覧できます。
R8.4.0
インポートエクスポート
インポート・エクスポート機能を利用できます。
R8.4.0
メンテナンスモード切替
メンテナンスモード切り替え機能を利用できます。
R8.4.0
カテゴリ 8.4.0
ID カテゴリ名
1 アカウント 2 共通処理 3 テンプレート 4 ジョブ 5 ワークフロー 6 システム 7 アプリケーション ログオンアカウントにプリンシパルを割り当てる
モデル項目単位で権限を設定する
これにより、次のような複雑な設定も行うことができます。
権限管理の対象範囲
機能
アカウント
重要
システム管理者の扱い
技術情報