FormsAuthentication. RedirectFromLoginPage к пользовательской странице

Привет я использую FormsAuthentication. RedirectFromLoginPage для пользователя входят в систему и для перенаправления к default.aspx странице. Я хочу это, если пользователь звонил, администратор делают вход в систему перенаправляется к странице admin.aspx

Действительно ли это возможно?

9
задан Kiquenet 3 June 2016 в 12:12
поделиться

2 ответа

Поведение по умолчанию заключается в перенаправлении на первоначально запрошенный ресурс, поэтому если пользователь попытался получить доступ к 'admin.aspx' и не прошел аутентификацию, он будет отправлен на страницу входа. После успешной аутентификации пользователь отправляется на первоначально запрошенный url (admin.aspx).

user -> "admin.aspx" -> noauth -> login -> "admin.aspx"

Итак, вместо того, чтобы вручную пытаться отправить пользователей куда-то, не будет ли это поведение по умолчанию работать для вас? Поведение по умолчанию на самом деле "надежное" (это может быть "admin2.aspx", "admin3.aspx" и так далее... у вас может быть любое количество "защищенных ресурсов" и встроенный процесс обрабатывает все это....)

0
ответ дан 4 December 2019 в 11:40
поделиться

Если вы используете элемент управления входом ASP.NET MembershipProvider, вы можете написать свою логику в событии LoggedIn

<asp:Login id="Login1" runat="server" OnLoggedIn="OnLoggedIn"></asp:Login>


protecetd void OnLoggedIn(object sender, EventArgs e)
{

    if(Roles.IsUserInRole(User.Identity.Name, "Administrators"))
    {
       //Redirect to admin page
       Response.Redirect("~/Admin.aspx");
    }
}

Не забудьте также поставить защиту на страницу admin.aspx, на случай, если кто-то введет url напрямую

1
ответ дан 4 December 2019 в 11:40
поделиться
Другие вопросы по тегам:

Похожие вопросы: