Согласно моей книге, если управление ролями включено, то RoleManagerModule
создает контекст безопасности пользователя, назначая объект RolePrincipal
для HttpRequest.User
. Но разве контекст безопасности уже не создан (таким образом, основной объект присваивается HttpContext.User
) с помощью FormsAuthenticationModule
, который вызывается до вызова RoleManagerModule
?
Я спрашиваю об этом, потому что в следующем коде главный объект, назначенный HttpRequest.User
, уже существует, хотя RoleManagerModule
еще не был вызван:
protected void Application_AuthenticateRequest(Object sender, EventArgs e)
{
if (User.Identity.IsAuthenticated && Roles.Enabled)
{
//here we subscribe user to a role via Roles.AddUserToRole()
}
}
Итак, является ли главный объект, созданный FormsAuthenticationModule
и назначенный на HttpRequest.User
, позднее замененным RolePrincipal
объектом (созданным RoleManagerModule
)?