Этот проект, над которым я работаю, требует, чтобы я поддерживал локальный db пользователей admin и использовал внешний db для обычных пользователей. Каждому, кто передает аутентификацию в admin db, должна быть назначена роль "admin", а любому, прошедшему аутентификацию через другой db, всегда будет назначена роль пользователя.
Могу ли я вручную назначить эти роли? Мне не нужна сложность провайдера ролей или чего-то еще, поскольку я использую только эти две роли, которые будут ВСЕГДА основываться на том, с каким db они аутентифицируются.
Это была бы ОГРОМНАЯ помощь, если бы вы могли предоставить пример кода или ссылку на какую-либо документацию. Спасибо!
EDIT:
В настоящее время я не использую поставщика роли, и создание похожее на проблему. Я знаю, что это не "лучшая практика", но мне нужно только назначить 1 из 2 ролей во время входа в систему (это никогда не изменится). Также не имеет смысла хранить информацию о роли в базе данных, поскольку пользователи уже разделены на две части по своей роли.
Вот некоторый псевдокод:
if (AdminDB.ValidateUser(username,password)==true) {
SetAuthCookie(username);
AssociateUserWithRole(username, 'admin');
} elseif (UserDB.ValidateUser(username,password)==true) {
SetAuthCookie(username);
AssociateUserWithRole(username, 'user');
} else {
// Login failed.
}
Его часть "ThisSession.AssociateUserWithRole" я не знаю. В принципе, один пользователь аутентифицирован, мне нужно указать .NET, к какой роли принадлежит пользователь.