Я начинаю работу над веб-приложением, которое будет иметь несколько различных типов пользователей, например, зарегистрированный пользователь, администратор сайта, администратор пользователя и т. д. Пользователи могут иметь более 1 роли.
В предыдущих проектах мне удавалось управлять различными пользовательскими схемами с помощью трех таблиц: User, UserRole, User_UserRole. При таком подходе было относительно легко управлять отношением М-М между пользователем и ролью пользователя (в таблице User_UserRole).
Однако я не думаю, что этот подход будет так хорошо работать в этом проекте по следующей причине. Мне нужно иметь возможность отслеживать, кто (администратор сайта или администратор пользователя) утверждает каждого пользователя.
Я не смог придумать элегантного решения для этого и ищу некоторые предложения. Чем проще, тем лучше.