1 / 47

Ролевое Разграничение Прав Доступа

Ролевое Разграничение Прав Доступа. (RBAC = Role Based Access Control). Обзор. Статическое Разрешение Конфликтов. (RH) Иерархия Ролей. (UA) Соответствие пользователи – –роли. (PA) Соответствие права доступа – –роли. USERS пользователи. ROLES роли. OPS операции. OBS объекты.

tan
Download Presentation

Ролевое Разграничение Прав Доступа

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Ролевое Разграничение Прав Доступа (RBAC = Role Based Access Control) Обзор СтатическоеРазрешение Конфликтов (RH) Иерархия Ролей (UA) Соответствиепользователи– –роли (PA) Соответствиеправа доступа– –роли USERSпользователи ROLESроли OPSоперации OBSобъекты PRMS(permissions)права доступа user_sessionsприсвоениесессии пользователю session_rolesприсвоениеролей сессии SESSIONSсессии ДинамическоеРазрешение Конфликтов

  2. Цель доклада • Установить общие понятия для ролевого разграничения доступа • Представить возможности применения RBAC в реальных и виртуальных доменах • Обсудить различные модели разграничения доступа и понять почему нам нужен RBAC!!!

  3. Виды Контроля Доступа • Дискреционный Контроль Доступа • Мандатный Контроль Доступа • Ролевой Контроль Доступа

  4. Дискреционный контроль доступа • Ограничения доступа к объектам только на основе идентификации пользователей, имеющих такой доступ. Пользователи Ресурсы Список Доступак приложениями Доступныеприложения Сервер 1 Имя Доступ ПетрДа ИванНет ДарьяДа Сервер 2 Серверr 3

  5. Мандатныйконтроль доступа • Механизм MAC присваивает уровни секретности всей информации, уровни допуска для каждого пользователя и разрешает доступ пользователя только к тем данным, к которым они имеют их допуск. Принципы: Чтение Снизу равная или меньшая секретность Запись Вверх равная или большая секретность Лучшая секретность, чем в DAC

  6. Мандатныйконтроль доступа (продолжение) SIPRNET LegacyApps Пользователи Ресурсы Сервер 1 “Совершенно секретно” Сервер 2 “Секретно” Сервер 3 “ДСП”

  7. Ролевойконтроль доступа • Пользователь имеет доступ к объекту на основе присвоенных ему ролей. • Роли определяются на основе исполняемых сотрудниками функций. • Права доступа определяются на основе авторизации в соответствии с исполняемыми функциями. • Операции над объектом выполняются в соответствии с правами доступа. • Объект взаимодействует с ролью пользователя, а не с самим пользователем. “Ideally, the [RBAC] system is clearly defined and agile, making the addition of new applications, roles, and employees as efficient as possible”

  8. Роль 1 Роль 2 Роль 3 Ролевойконтроль доступа Пользователи Роли Ресурсы Сервер 1 Сервер 2 Сервер 3 Пользователи меняются часто, роли – редко

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

  10. Концепция ролевогоконтроля доступа • Базовые компоненты • Расширения RBAC • Иерархический RBAC • Иерархия общего вида • Ограниченная иерархия • Разрешение конфликтов • Статическое • Динамическое

  11. Базовые компоненты • Определения: • ПОЛЬЗОВАТЕЛИ (USERS) • РОЛИ (ROLES) • Операции (ops) • Объекты (obs) • User Assignments (ua) • assigned_users

  12. Базовые компоненты(продолжение) • Права доступа (prms) • Assigned Permissions • Object Permissions • Operation Permissions • Сессии • User Sessions • Available Session Permissions • Session Roles

  13. Расширениябазовых компонент • Иерархия ролей (rh) • Иерархия общего вида • Ограниченная иерархия • Разрешение конфликтов • Статическое • Динамическое

  14. Развитие RBAC Разграничение обязанностей с минимумом привилегий Самаясложная RBAC3 Успех Модель RBAC

  15. Система RBAC иее функциональные спецификации • Административные операции • создать, удалить, задать элементы и связи • Просмотр информации • запрос (операция query) • Системные функции • создание сессии для пользователя • активация/дезактивация роли • установление ограничений • принятие решения о доступе

  16. (UA) Соответствиепользователи– –роли (PA) Соответствиеправа доступа– –роли USERSпользователи ROLESроли OPSоперации OBSобъекты PRMS(permissions)права доступа user_sessionsприсвоениесессии пользователю session_rolesприсвоениеролей сессии SESSIONSсессии Базовый RBAC

  17. ПОЛЬЗОВАТЕЛИ Процессы Автоматическиеагенты Пользователи

  18. РОЛИ Исполняемые функции с ясным определением присущей им власти и ответственности (правами). Директор Разработчик Финансовыйменеджер Секретарь Отношение многие-ко-многиммеждуПользователями и Правами

  19. ОПЕРАЦИИ (ops) Определенные действия, выполняемые программами, по команде пользователя. • Базы данных – Обновить, Вставить, Удалить • Блокировки– Открыть, Закрыть • Отчеты – Создать, Показать, Печатать • Приложения – Читать, Писать, Исполнять SQL

  20. ОБЪЕКТЫ (obs) Любая сущность содержащая или аккумулирующая информацию, или ограниченный системный ресурс. • Файлы и директории ОС • Строки, колонки, таблицы и отчеты БД • Принтеры • Дисковое пространство • Механизмы блокировки RBAC имеет дело со всеми объектами, права на доступ к которым включены хотя бы в одну из ролей.

  21. Соответствие пользователь ― роль(user assignment) Множество Пользователей Множество РОЛЕЙ Пользователю может быть присвоена одна или несколько ролей Разработчик Роль может бытьприсвоена одному или нескольким пользователям Секретарь

  22. Соответствие пользователь ― роль(user assignment) Отображение ролиrна множество пользователей МножествоРОЛЕЙ МножествоПользователей User.F1 User.F2 User.F3 • User.DB1 • Просмотр • Изменение • Добавление User.DB1 права доступа объекты User.DB1

  23. User.DB1 • Просмотр • Изменение • Добавление • User.F1 • Чтение • Запись • Исполнение правадоступа правадоступа объект объект ПРАВА ДОСТУПА(PRMS=permissions) Множество прав доступа каждый элемент которого дает разрешение на проведение некоторой операции над защищенным объектом.

  24. Присвоение прав доступа(PA=prms assignment) множество ПРАВДОСТУПА множествоРОЛЕЙ Права доступа могут быть присвоены одной или нескольким ролям создать удалить очистить Admin.DB1 просмотреть обновить добавить Роль может быть связанас одним или несколькими правами доступа User.DB1

  25. Присвоение прав доступа(PA=prms assignment) Отображение ролиrна множество пользователей множествоРОЛЕЙ множествоПРАВ ДОСТУПА User.F1 User.F2 User.F3 Admin.DB1 • Чтение • Запись • Исполнение • Просмотр • Обновление • Добавление • Создание • Очистка SQL

  26. Присвоение прав доступа(PA=prms assignment) Отображение операций на права доступа множествоОПЕРАЦИЙ множествоПРАВ ДОСТУПА • public int read(byteBuffer dst) • throws IOException • Inherited methods from java.nio.channls • close() • isOpen() • Чтение Заданное множество операций связывается с определенным правом доступа

  27. Присвоение прав доступа(PA=prms assignment) Отображение прав доступа на объекты множествоПРАВ ДОСТУПА Объекты • Открытие • Закрытие • Просмотр • Обновление • Добавление • Создание • Очистка Заданное множество объектов связывается с определенными правами доступа BLD1.door2 SQL DB1.table1

  28. guest admin запускает user СЕССИИ Множество сессий, которые запускает каждый пользователь ПОЛЬЗОВАТЕЛЬ СЕССИИ FIN1.report1 SQL DB1.table1 APP1.desktop

  29. guest admin запускает user СЕССИИ Отображение пользователя u на множество сессий ПОЛЬЗОВАТЕЛИ СЕССИИ User2.FIN1.report1.session USER1 SQL User2.DB1.table1.session USER2 User2.APP1.desktop.session

  30. СЕССИИ Отображение сессии s на множество ролей СЕССИЯ РОЛИ SQL • Администратор (Admin) • Пользователь (User) • Гость (Guest) DB1.table1.session

  31. SQL DB1.table1.session СЕССИИ Права, доступные пользователю в данной сессии РОЛЬ ПРАВАДОСТУПА СЕССИЯ • Просмотр • Обновление • Добавление • Создание • Очистка DB1.ADMINАдминистратор.DB1

  32. (RH) Иерархия Ролей (UA) Соответствиепользователи– –роли (PA) Соответствиеправа доступа– –роли USERSпользователи ROLESроли OPSоперации OBSобъекты PRMS(permissions)права доступа user_sessionsприсвоениесессии пользователю session_rolesприсвоениеролей сессии SESSIONSсессии Иерархический RBAC

  33. Директор Зав. лаб. 1 Зав. лаб. 2 Инженер- Технолог 1 Инженер- Технолог 2 Инженер- Конструктор 1 Инженер- Конструктор 2 Деревья Иерархий Инженер-Технолог 1 Инженер- Конструктор 1 Инженер- Технолог 2 Инженер- Конструктор 2 Инженерная группа 1 Инженерная группа 2 Дерево Инженерный департамент Обратное дерево

  34. Решетка Иерархии Директор Зав. лаб. 1 Зав. лаб. 2 Инженер-Технолог 1 Инженер- Конструктор 1 Инженер-Технолог 2 Инженер- Конструктор 2 Инженерная группа 2 Инженерная группа 1 Инженерный департамент

  35. Иерархия Ролей(RH=Role Hierarchies) • Структура ролей должна отражать распределение прав и обязанностей организации • Иерархии: Ограниченная и общего вида • Определение наследственных связей между ролями т.е. r1наследует отr2 Пользователь user r-w-h Гость guest -r-

  36. Иерархия ролей общего вида Поддерживает Множественное Наследование Роль “Гость” Роль “Пользователь” Роль “Опытный Пользователь” Роль “Администратор” Только если все права r1являются также правами r2 т.е. r1 наследует от r2 Только если пользователи с ролью r1 являются также пользователямис ролью r2 Пользователь user r-w-h Гость guest -r-

  37. авторизованные пользователи Отображение роли на множество пользователей в присутствии иерархии ролей ПОЛЬЗОВАТЕЛИпервого поколения множество РОЛЕЙ Admin.DB1 User.DB2 User.DB3 • User.DB1 • Просмотр • Обновление • Добавление User.DB1 объект правадоступа User.DB1

  38. authorized permissions Mapping of a role onto a set of permissions in the presence of a role hierarchy ROLES set PRMS set User.DB1 User.DB2 User.DB3 Admin.DB1 • View • Update • Append • Create • Drop SQL

  39. Ограниченнаяиерархия ролей Ограничение на число непосредственных предшественников данной роли («предок» может быть только один) Роль2 Роль2 наследует от Рольи1 Роль3 Роль3 не наследует от Роли1 или Роли2 Роль1

  40. Ограниченнаяиерархия ролей(продолжение) Николай Сергей Федор Контролеркассы Контролербаланса Контролерсчетов Иван Инна Анна Тамара Семен Оформители счетов Баланс Аудиторы Кассиры Счетоводы Семейство Ролей Счетоводов Заметьте, чтоСеменимеет две роли: Кассира и Оформителя счетов. Это требует объединения двух различных ролей и не позволяет Семену получить роль Аудитора.

  41. СтатическоеРазрешение Конфликтов (RH) Иерархия Ролей (UA) Соответствиепользователи– –роли (PA) Соответствиеправа доступа– –роли USERSпользователи ROLESроли OPSоперации OBSобъекты PRMS(permissions)права доступа user_sessionsприсвоениесессии пользователю session_rolesприсвоениеролей сессии SESSIONSсессии ДинамическоеРазрешение Конфликтов RBACбез конфликтов

  42. Разрешение конфликтов • Одно из правил избежать конфликта интересов ― не давать пользователю полномочия превышающие уровень, соответствующий его должности. • Ошибки и упущения в работе организации в целом могут возникать из-за конфликта индивидуальных интересов работников. • Два типа разрешения конфликтов: • Статическое (SSD=Static Separation of Duties) • Динамическое (DSD=Dynamic Separation of Duties)

  43. Статическоеразрешение конфликтов • SSD накладывает ограничения на роли и на установление связей Роли – Пользователи. • Пользователю не могут быть присвоены конфликтующие друг с другом роли. Ему может быть присвоена либо одна из них, либо другая. • Например, субъект не должен посылать и сам же санкционировать свои запросы.

  44. SSD при иерархии ролей • A constraint on the authorized users of the roles that have an SSD relation. • Based on the authorized users rather than assigned users. • Ensures that inheritance does not undermine SSD policies. • Reduce the number of potential permissions that can be made available to a user by placing constraints on the users that can be assigned to a set of roles.

  45. Динамическое разрешение конфликтов • Накладываются ограничения на множества ролей, которые присваивается пользователям. Т.о. уменьшается набор прав доступа, которые могут быть доступны для пользователя. • Данные ограничения назначаются пользователю на одну сессию. • Пользователь не может активировать конфликтующие друг с другом роли в рамках одной сессии. • Временное Лишение Доверия: пользователь не обладает правами доступа (не активирует их) до момента их выполнения ответственного действия.

  46. Динамическое разрешение конфликтов(продолжение) Роли наследование Reduce COI Кассир Контролер Закрыть Сессию роли Кассира Закрыть ведомость кассы Начать сессию роли Контролера Открыть ведомость кассы Контролер Кассир Исправления Бухгалтерская Ошибка

  47. ВОПРОСЫ…комментарии??

More Related