Я разрабатываю приложение, в котором пользователь может зарегистрироваться. Во время регистрации пользователь становится владельцем аккаунта. Пользователь также добавляется в рабочую область по умолчанию. После этого он может добавить дополнительные рабочие пространства, если захочет.
Он также может добавить дополнительных пользователей (участников) и назначить их рабочему пространству.
Пользователь (участник) может принадлежать нескольким рабочим пространствам. В каждом рабочем пространстве могут быть свои проекты, задачи. Внутри рабочей области пользователь может добавлять проекты, задачи, если у него есть необходимые права.
Важно, что у каждой рабочей области может быть свой администратор. Администратор рабочей области имеет все разрешения в этой рабочей области. Пользователь также может быть администратором нескольких рабочих областей.
У приложения есть разрешения и роли. Роль — это, по сути, набор разрешений. Роли назначаются пользователям. Пользователи получают разрешения через свои роли. Разрешения не назначаются пользователям напрямую.
Сейчас я борюсь с тем, как идентифицировать пользователя как администратора рабочей области.
Должен ли я создать роль, например, с именем «Администратор рабочей области» и назначить ее пользователю, и в любое время, когда я хочу узнать, является ли пользователь администратором рабочей области, я проверю, есть ли у него роль под названием «Администратор рабочей области».
Из некоторых сообщений в блоге, которые я прочитал, предлагается создавать администраторов группу и также назначьте пользователей в эту группу. Таким образом, по сути, если пользователь принадлежит к этой группе, то он является администратором.
В реальной производственной среде как они идентифицируют администраторов рабочей области?
Подробнее здесь: https://stackoverflow.com/questions/798 ... -they-have