RBACとABACの比較
This article summarize the content of Pega Academy LSA course in Japanese. Please refer the below link for original article in English.
https://academy.pega.com/topic/configuring-authorization/v1/in/20031/20681/20691
この記事ではRBACとABACの概要と使用例について、一覧に整理します。
大区分 | 小区分 | 概要 | 使用例 |
---|---|---|---|
RBAC | Access When |
・レコード単位で特定の条件下のみアクセス可能とする ・Access Whenの条件がtrueの場合、実行可能となる |
例:リクエストが承認ステージの場合のみアクセス可能 例:給与が$50,000以上の従業員のアクセス可能 |
RBAC | Access Deny |
・レコード単位で特定の条件下のみアクセス不可とする ・Access Denyの条件がfalseの場合、実行不可となる |
Access Deny は政府や企業内の規制に応じ明示的にアクセスを不可にする際に使用することが多い 例:規制により患者の担当者以外は患者の情報にアクセス不可 |
RBAC | Privilege |
・Ruleに対して実行権限を設定する ・Access Whenと合わせて利用可能 |
例:マネージャー権限のみ承認を可能とする |
ABAC | N/A |
・Roleとは別要素(例えば勤続年数など)により権限を制御する ・レコード単位のみではなくProperty 単位のより細かい制御を可能とする (RBACでは画面を表示に権限を付与し、権限がないアカウントにはアクセス不可とするようなおおざっぱな設定しかできないが、ABACでは画面上の1部の項目のみ非表示にすることが可能) ・レポート定義を実行時に条件に合わないレコードはレコード単位、もしくは項目単位で非表示にすることが可能 |
シナリオ: セキュリティクリアランスがAAAの従業員のみお客様の5年以上古い履歴とマイナンバーが閲覧可能とする ・ステファンはセキュリティクリアランスがAAAであり、お客様の5年以上古い履歴とソーシャルセキュリティナンバーが閲覧可能であるが、RBACのPrivilegeの設定によりVIPのお客様の口座変更を行う権限がない ・レベッカはセキュリティクリアランスがBのため、お客様の5年以上古い履歴とソーシャルセキュリティナンバーが閲覧不可であるが、RBACのPrivilegeの設定によりVIPのお客様の口座変更を行う権限を保持している |