Я реализую пользовательскую авторизацию с OpenId.В базе данных у меня есть Имя пользователя (уникальное), OpenId (уникальное) и набор Ролей пользователя.
Пока пользователь авторизуется, я устанавливаю
//GetRolesFromTheDBAndAssignThemToTheUser(); how?
FormsAuthentication.SetAuthCookie(GetUserName(OpenId), false);
И используя пользовательский атрибутконтроллер:
public override void OnAuthorization(AuthorizationContext filterContext)
{
//..some code
var user = filterContext.HttpContext.User; //I can get user
var roles = Roles; //I can get roles
var isAlowed = roles.Split(',').Any(user.IsInRole); //validate if user is alowed to use the current page or do other stuff
}
Но как я могу установить определенные роли для пользователя, чтобы использовать метод HttpContext.User.IsInRole?