Ролевая модель безопасности представляет собой существенно усовершенствованную модель Харрисона–Руззо–Ульмана, однако ее нельзя отнести ни к дискреционным, ни к мандатным, потому что управление доступом в ней осуществляется как на основе матрицы прав доступа для ролей, так и с помощью правил, регламентирующих назначение ролей пользователям и их активацию во время сеансов. Поэтому ролевая модель представляет собой совершенно особый тип политики, которая основана на компромиссе между гибкостью управления доступом, характерной для дискреционных моделей, и жесткостью правил контроля доступа, присущей мандатным моделям.
В ролевой модели классическое понятие «субъект» замещается понятиями «пользователь» и «роль». Пользователь - это человек, работающий с системой и выполняющий определенные служебные обязанности. Роль - это активно действующая в системе абстрактная сущность, с которой связан набор полномочий, необходимых для осуществления определенной деятельности. Самым распространенным примером роли является присутствующий почти в каждой системе административный бюджет (например, root для UNIX и Administrator для Windows NT), который обладает специальными полномочиями и может использоваться несколькими пользователями.
Ролевая политика распространена очень широко, потому что она, в отличие от других более строгих и формальных политик, очень близка к реальной жизни. Ведь на самом деле работающие в системе пользователи действуют не от своего личного имени, они всегда осуществляют определенные служебные обязанности, т. е. выполняют некоторые роли, которые никак не связаны с их личностью.
Поэтому вполне логично осуществлять управление доступом и назначать полномочия не реальным пользователям, а абстрактным (неперсонифицированным) ролям, представляющим участников определенного процесса обработки информации. Такой подход к политике безопасности позволяет учесть разделение обязанностей и полномочий между участниками прикладного информационного процесса, т. к. с точки зрения ролевой политики имеет значение не личность пользователя, осуществляющего доступ к информации, а то, какие полномочия ему необходимы для выполнения его служебных обязанностей.
В такой ситуации ролевая политика позволяет распределить полномочия между этими ролями в соответствии с их служебными обязанностями: роли администратора назначаются специальные полномочия, позволяющие ему контролировать работу системы и управлять ее конфигурацией, роль менеджера баз данных позволяет осуществлять управление сервером баз данных, а права простых пользователей ограничиваются минимумом, необходимым для запуска прикладных программ. Кроме того, количество ролей в системе может не соответствовать количеству реальных пользователей: один пользователь, если на нем лежит множество обязанностей, требующих различных полномочий, может выполнять (одновременно или последовательно) несколько ролей, а несколько пользователей могут выполнять одну и ту же роль, если они производят одинаковую работу.
При использовании ролевой политики управление доступом осуществляется в две стадии: во-первых, для каждой роли указывается набор полномочий, представляющий набор прав доступа к объектам, во-вторых - каждому пользователю назначается список доступных ему ролей. Полномочия назначаются ролям в соответствии с принципом наименьших привилегий, из которого следует, что каждый пользователь должен обладать только минимально необходимым для выполнения своей работы набором полномочий.
В отличие от других политик, ролевая политика практически не гарантирует безопасность с помощью формального доказательства, а только определяет характер ограничений, соблюдение которых и служит критерием безопасности системы.
Такой подход позволяет получать простые и понятные правила контроля доступа, которые легко могут быть применены на практике, но лишает систему теоретической доказательной базы. В некоторых ситуациях это обстоятельство затрудняет использование ролевой политики, однако в любом случае оперировать ролями гораздо удобнее, чем субъектами, поскольку это более соответствует распространенным технологиям обработки информации, предусматривающим разделение обязанностей и сфер ответственности между пользователями. Кроме того, ролевая политика может использоваться одновременно с другими политиками безопасности, когда полномочия ролей, назначаемых пользователям, контролируются дискреционной или мандатной политикой, что позволяет строить многоуровневые схемы контроля доступа.
Определение политики безопасности и модели этой политики позволяют теоретически обосновать безопасность системы при корректном определении модели системы и ограничений в ее использовании. Обеспечение информационной безопасности предполагает повышение защищенности информации за счет разграничения доступа. В последнее десятилетие как в нашей стране, так и за рубежом активно проводятся исследования по развитию моделей разграничения доступа. Дальнейшими направлениями исследований в этой сфере могут быть поиски решений разграничения доступа в гипертекстовых информационно-поисковых системах, развитие концепции мультиролей в системах ролевого доступа, развитие моделей комплексной оценки защищенности системы.