Платформа 3V/Права доступа: различия между версиями

Материал из 3v-wiki
Перейти к навигации Перейти к поиску
Строка 28: Строка 28:
 
Пользователи - это сущности, которые могут войти в систему. У пользователей есть определенный набор атрибутов, например, имя и фамилия пользователя, адрес электронной почты, номер телефона и день рождения. Пользователей можно добавлять в различные группы и назначать им определенные роли.
 
Пользователи - это сущности, которые могут войти в систему. У пользователей есть определенный набор атрибутов, например, имя и фамилия пользователя, адрес электронной почты, номер телефона и день рождения. Пользователей можно добавлять в различные группы и назначать им определенные роли.
 
=== Роли ===
 
=== Роли ===
Роли определяют тип или категорию пользователя. Admin, user, manager - все это типичные роли, которые могут быть в проекте. В приложениях чаще назначают доступ конкретным ролям, а не отдельным пользователям, поскольку работа с пользователями может быть сложной для управления. '''Пользовательские атрибуты задаются только для пользователей или для групп пользователей.'''
+
Роли определяют тип или категорию пользователя. Admin, user, manager - все это типичные роли, которые могут быть в проекте. В приложениях чаще назначают доступ конкретным ролям, а не отдельным пользователям, поскольку работа с пользователями может быть сложной для управления. '''Значение пользовательских атрибутов передаются в токене только для пользователей или для групп пользователей.'''
  
 
=== Группы ===
 
=== Группы ===

Версия 07:32, 23 ноября 2021

Права доступа Права доступа - настройки доступности объектов.

Пользователи

Пользователи - это сущности, которые могут войти в систему. У пользователей есть определенный набор атрибутов, например, имя и фамилия пользователя, адрес электронной почты, номер телефона и день рождения. Пользователей можно добавлять в различные группы и назначать им определенные роли.

Роли

Роли определяют тип или категорию пользователя. Admin, user, manager - все это типичные роли, которые могут быть в проекте. В приложениях чаще назначают доступ конкретным ролям, а не отдельным пользователям, поскольку работа с пользователями может быть сложной для управления. Значение пользовательских атрибутов передаются в токене только для пользователей или для групп пользователей.

Группы

Группы объединяют пользователей. Для группы можно определить атрибуты или настроить маппинг ролей. Пользователи, которые добавлены в группы наследуют атрибуты и маппинг ролей, определенные группой.

Понятия группы и роли часто размыты и взаимозаменяемы. В Keycloak группы - это просто набор пользователей, к которым можно применять роли и атрибуты. Роли определяют тип пользователя, а приложения назначают права доступа к ролям.

С точки зрения логики они обеспечивают те же точные функции, но разница концептуальная. Чтобы назначать права для работы с приложением следует использовать роли. Группы больше подойдут для создания коллекции пользователей, их следует использовать для управления пользователями. Роли же используются для управления службами и доступом.