Контроль доступа на основе отношений
В безопасности компьютерных систем контроль доступа на основе отношений (ReBAC) определяет парадигму авторизации , при которой разрешение субъекта на доступ к ресурсу определяется наличием связей между этими субъектами и ресурсами.
В общем случае авторизация в ReBAC осуществляется путем обхода направленного графа связей. Узлы и ребра этого графа очень похожи на тройки в формате данных Resource Description Framework (RDF) . [1] Системы ReBAC допускают иерархию отношений, а некоторые допускают более сложные определения, включающие алгебраические операторы для отношений, таких как объединение, пересечение и различие. [2]
ReBAC приобрел популярность с появлением веб-приложений социальных сетей, в которых пользователям необходимо контролировать свою личную информацию на основе их отношений с получателем данных, а не роли получателя. [3] Использование ReBAC позволило коллективно определять разрешения для команд и групп, устраняя тем самым необходимость устанавливать разрешения индивидуально для каждого ресурса. [4]
В отличие от управления доступом на основе ролей (RBAC) , которое определяет роли, которые несут определенный набор связанных с ними привилегий и которым назначаются субъекты, [5] ReBAC (например, ABAC [6] ), позволяет определить более детальные разрешения. [5] Например, если система ReBAC определяет ресурсы типа document , которые могут разрешить одно действие редактора , если система содержит отношения («алиса», «редактор», «документ:бюджет») , то субъект Алиса может редактировать конкретный ресурс. документ: бюджет . Недостатком ReBAC является то, что, хотя он обеспечивает более детальный доступ, это означает, что приложению может потребоваться выполнить больше проверок авторизации.
Системы ReBAC по умолчанию запрещают доступ и позволяют создавать поверх них системы RBAC. [2]
История
[ редактировать ]Термин ReBAC был придуман Кэрри Э. Гейтс в 2006 году. [3]
В 2019 году Google опубликовал статью «Занзибар: согласованная глобальная система авторизации Google». [2] В документе определяется система, состоящая из конфигурации пространства имен и данных отношений, выраженных в виде троек.
С момента публикации этого документа несколько компаний создали коммерческие предложения систем ReBAC и системы ReBAC с открытым исходным кодом.
Реализации
[ редактировать ]См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ «Букварь по RDF 1.1: тройки» . www.w3.org . Проверено 7 июля 2022 г.
- ^ Jump up to: а б с д Панг, Руомин; Касерес, Рамон; Берроуз, Майк; Чен, Чжифэн; Дэйв, Пратик; Гермер, Натан; Голинский, Александр; Грейни, Кевин; Канг, Нина; Кисснер, Леа; Корн, Джеффри Л. (2019). «Занзибар: Единая глобальная система авторизации Google» . Ежегодная техническая конференция USENIX 2019 (USENIX ATC '19) . Рентон, Вашингтон.
- ^ Jump up to: а б Гейтс, Кэрри (2007). «Требования к контролю доступа для обеспечения безопасности и конфиденциальности Web 2.0» . Интернет IEEE . 2 : 12–15.
- ^ «Что такое контроль доступа на основе отношений» . www.permit.io/блог/ .
- ^ Jump up to: а б «Авторизация — серия шпаргалок OWASP» . cheatsheetseries.owasp.org . Проверено 21 июня 2022 г.
- ^ Ху, Винсент С.; Феррайоло, Дэвид; Кун, Рик; Шнитцер, Адам; Сэндлин, Кеннет; Миллер, Роберт; Скарфоне, Карен (январь 2014 г.). «Руководство по определению и соображениям управления доступом на основе атрибутов (ABAC)» . НИСТ . дои : 10.6028/nist.sp.800-162 . Проверено 7 июля 2022 г.
- ^ «SpiceDB GitHub» . Гитхаб . 24 ноября 2021 г. Проверено 16 ноября 2023 г.
- ^ «Репозиторий Topaz GitHub» . Гитхаб . 24 октября 2022 г.
Внешние ссылки
[ редактировать ]- Введение в авторизацию и OpenFGA
- Контроль доступа на основе отношений (ReBAC)
- AuthZ: масштабируемая система разрешений Carta
- SpiceDB — это база данных с открытым исходным кодом, вдохновленная Занзибаром, которая хранит, вычисляет и проверяет детальные разрешения.
- 3Edges: настоящая платформа авторизации ReBAC и основанная на знаниях .
- Моделирование разрешений, подобных Google Диску, с использованием ReBAC