コンピュータ システムのセキュリティでは、関係ベースのアクセス制御 (ReBAC) は、サブジェクトとリソース間の関係の存在によってサブジェクトのリソースへのアクセス権限が定義される 承認パラダイムを定義します。
一般的に、ReBAC における認可は、関係の有向グラフをトラバースすることによって実行されます。このグラフのノードとエッジは、リソース記述フレームワーク (RDF)データ形式のトリプルに非常に似ています。[1] ReBAC システムでは、関係の階層が許可されており、一部のシステムでは、和集合、積集合、差集合などの関係に対する代数演算子を含む、より複雑な定義が許可されています。[2]
ReBACは、ユーザーが受信者の役割ではなく、データ受信者との関係に基づいて個人情報を管理する必要があるソーシャルネットワークWebアプリケーションの台頭とともに人気を博しました。[3] ReBACを使用すると、チームやグループの権限をまとめて定義できるため、リソースごとに個別に権限を設定する必要がなくなります。
ロールベースのアクセス制御(RBAC)は、特定の権限セットが関連付けられ、サブジェクトが割り当てられるロールを定義しますが、[4] ReBAC(ABAC [5]など)では、よりきめ細かい権限を定義できます。[4]たとえば、ReBACシステムが、 editorという1つのアクションを許可できるdocumentタイプのリソースを定義している場合、システムに関係('alice', 'editor', 'document:budget')が含まれる場合、サブジェクトAlice は特定のリソースdocument:budgetを編集できます。ReBACの欠点は、よりきめ細かいアクセスが可能である一方で、アプリケーションがより多くの承認チェックを実行する必要があることです。
ReBACシステムはデフォルトで拒否されており、その上にRBACシステムを構築することを許可しています。[2]
歴史
ReBACという用語は、2006年にキャリー・E・ゲイツによって造られました。[3]
2019年にGoogleは「Zanzibar: Googleの一貫したグローバル認証システム」を紹介する論文を発表しました。[2]この論文では、名前空間構成とトリプルとして表現された関係データで構成されるシステムが定義されています。
この論文が発表されて以来、いくつかの企業が ReBAC システムの商用およびオープンソース製品を構築してきました。
参照
参考文献
- ^ 「RDF 1.1 入門: トリプル」。www.w3.org 。2022年 7 月 7 日閲覧。
- ^ abc Pang, Ruoming; Caceres, Ramon; Burrows, Mike; Chen, Zhifeng; Dave, Pratik; Germer, Nathan; Golynski, Alexander; Graney, Kevin; Kang, Nina; Kissner, Lea; Korn, Jeffrey L. (2019). 「Zanzibar: Google の一貫性のあるグローバル認証システム」。2019 USENIX 年次技術会議 (USENIX ATC '19)。ワシントン州レントン。
- ^ ab Gates, Carrie (2007). 「Web 2.0 のセキュリティとプライバシーのためのアクセス制御要件」. IEEE Web . 2 : 12–15.
- ^ ab 「Authorization - OWASP Cheat Sheet Series」. cheatsheetseries.owasp.org . 2022年6月21日閲覧。
- ^ Hu, Vincent C.; Ferraiolo, David; Kuhn, Rick; Schnitzer, Adam; Sandlin, Kenneth; Miller, Robert; Scarfone, Karen (2014 年 1 月)。「属性ベース アクセス制御 (ABAC) の定義と考慮事項に関するガイド」。NIST。doi : 10.6028 /nist.sp.800-162。2022年 7 月 7 日に閲覧。
