SpecialistOff.NET / Вопросы / Статьи / Фрагменты кода / Резюме / Метки / Помощь / Файлы

Назад

Построение архитектуры разграничения доступа в приложениях


Метки: архитектура программного обеспечения

Мандатное управление доступом

В общем виде разграничение доступа выглядит как запрос субъектом прав на операции с объектом.

Управление доступом на основе ролей

Таким образом создаётся матрица прав доступа. Матрица будет содержать большое количество строк. В таком случае применяется практика укрупнения и вводятся дополнительные матрицы для групп (группы объектов, группы пользователей, роли). Системы управления прав на основе ролей известны как RBAC (Role Based Access Control).

Разграничение доступа на основе атрибутов

Противоположностью укрупнения может стать дробление. У каждого субъекта, объекта, действия и т.д могут быть дополнительные атрибуты. Своеобразным способом организации прав доступа на атрибутах является ABAC (Attribute-based access control). ABAC позиционируют как решение для деловой сферы, т.к. можно добавить реализацию проверки условий для атрибутов.

В качестве самой глобальной политики управления прав (политика по умолчанию) используют одну из двух основных политик:

Нельзя жёстко прописывать правила в коде. Это является существенной ошибкой новичков при разработке системы.