Ролевое управление доступом. Критерий безопасности ролевой модели.

Ролевая модель управления доступом содержит ряд особенностей, которые не позволяют отнести её ни к категории дискреционных, ни к категории мандатных моделей. Основная идея реализуемого в данной модели подхода состоит в том, что понятие «субъект» заменяется двумя новыми понятиями:

пользователь – человек, работающий в системе;

роль – активно действующая в системе абстрактная сущность, с которой связан ограниченный и логически непротиворечивый набор полномочий, необходимых для осуществления тех или иных действий в системе. Классическим примером роли является root в Unix-подобных системах – суперпользователь, обладающий неограниченными полномочиями. Данная роль по мере необходимости может быть задействована различными администраторами. Основным достоинством ролевой модели является близость к реальной жизни: роли, действующие в АС, могут быть выстроены в полном соответствии с корпоративной иерархией и при этом привязаны не к конкретным пользователям, а к должностям – что, в частности, упрощает администрирование в условиях большой текучки кадров. Управление доступом при использовании ролевой модели осуществляется следующим образом:

1. Для каждой роли указывается набор полномочий, представляющий собой набор прав доступа к объектам АС.

2. Каждому пользователю назначается список доступных ему ролей.

Отметим, что пользователь может быть ассоциирован с несколькими ролями – данная возможность также значительно упрощает администрирование сложных корпоративных АС.

Перейдём к формальному описанию системы. Введём следующие обозначения:

U – множество пользователей;

R – множество ролей;

P – совокупность полномочий на доступ к объектам (реализованная, например, в виде матрицы доступа);

S – множество сеансов работы пользователей с системой

Управление доступом реализуется с использованием следующих отображений:

PA P × R - отображение _______множества полномочий на множество ролей, задающее для каждой роли установленный набор полномочий;

UA U × R - отображение множества пользователей на множество ролей, определяющее набор ролей, доступных данному пользователю;

user : S U - функция, определяющая для сеанса s S текущего пользователя u U :

user(s) = u ;

roles : S →{R} - функция, определяющая для сеанса s S набор ролей из множества R , доступных в данном сеансе:

  

Критерий безопасности системы при использовании ролевой модели звучит следующим образом: система считается безопасной, если любой пользователь в системе, работающий в сеансе sS , может осуществлять действия, требующие полномочий pP , только в том случае, если ppermissions(s) . На практике управление доступом в АС при использовании ролевой модели осуществляется главным образом не с помощью назначения новых полномочий ролям, а путём задания отношения UA – т.е. путём определения ролей, доступных данному пользователю. Подходы к распределению ролей могут быть различными и определяются спецификой организации, однако в большинстве случаев реализуется один из двух вариантов:

1. Создание иерархических ролей, полностью копирующих корпоративную иерархию и сохраняющих отношения между ролями, существующие в реальном мире.

2. Использование взаимоисключающих ролей, позволяющих эффективно реализовать разделение обязанностей.

Во всех случаях использование ролевой модели позволяет значительно повысить эффективность администрирования сложных автоматизированных систем, поэтому данный подход чрезвычайно популярен.

 

© sha-danis

Сделать бесплатный сайт с uCoz