Модель управления доступом на основе отношений
Модель управления доступом на основе отношений (англ. Relationship-based access control, ReBAC) — концепция в области безопасности компьютерных систем, определяющая парадигму авторизации, при которой разрешение субъекта на доступ к ресурсу зависит от наличия определённых отношений между этим субъектом и ресурсом.
Авторизация в модели ReBAC, как правило, осуществляется посредством обхода ориентированного графа отношений. Узлы и рёбра такого графа аналогичны триплетам в формате данных Resource Description Framework (RDF)[1]. Системы ReBAC позволяют создавать иерархии отношений, а некоторые из них поддерживают более сложные определения, включая использование алгебраических операций над отношениями, таких как объединение, пересечение и разность[2].
Популярность модель управления доступом на основе отношений приобрела с ростом социальных сетей, где пользователям необходимо управлять доступом к личной информации в зависимости от своих отношений с получателем, а не от роли получателя[3]. Благодаря ReBAC появилась возможность коллективно назначать разрешения группам и командам, что устраняет необходимость индивидуальной настройки доступа к каждому ресурсу.
В отличие от модели ролевого управления доступом (англ. role-based access control, RBAC), в которой определяются роли с закреплёнными за ними наборами привилегий и к которым назначаются субъекты[4], ReBAC, как и ABAC (англ. Attribute-based access control, ABAC)[5], позволяет задавать более тонкие настройки разрешений[4]. Например, если в системе ReBAC определён ресурс типа «документ», для которого возможна операция «редактор», и в системе содержится отношение «('alice', 'редактор', 'документ: budget')», то субъект «Alice» получает право редактировать конкретный ресурс «документ: budget». Недостатком ReBAC является то, что такая детализация требует большего числа проверок авторизации в приложениях.
Системы ReBAC по умолчанию реализуют запрет доступа, и на их основе возможно построение RBAC-систем[2].
История
Термин ReBAC был предложен Кэрри И. Гейтс в 2006 году[3].
В 2019 году компания Google опубликовала статью об архитектуре системы управления авторизацией «Zanzibar: Google’s Consistent, Global Authorization System»[2]. В этой работе система описывается как состоящая из конфигураций пространства имён и данных отношений, представленных в виде триплетов.
После публикации этой статьи ряд компаний разработали коммерческие и открытые реализации систем на основе модели ReBAC.


