asp.net: можно ли иметь несколько форм входа для доступа к разным подпапкам? - PullRequest
0 голосов
/ 18 марта 2010

Можно ли иметь несколько страниц входа для разных папок в приложении asp.net? Скажем, у меня есть эта структура:

/admin    
/customer  
/login-admin.aspx  
/login-customer.aspx

У меня есть 2 разные формы входа. Один для администраторов и один для клиентов (формы отличаются, поскольку клиенты должны предоставить дополнительную информацию на своей странице входа в систему).

В разделе аутентификации файла webconfig (который находится в корне веб-приложения) я могу указать только одну страницу входа. Так как я могу убедиться, что если кто-то попытается получить доступ к веб-странице в /admin, он будет перенаправлен на /login-admin.aspx, а если он попытается получить доступ к веб-странице в / customer, он будет перенаправлен на /login-customer.aspx?

Спасибо

Anthony

1 Ответ

1 голос
/ 18 марта 2010

К сожалению, проверка подлинности с помощью форм позволяет указать только одну страницу входа.

Хотя это не самое элегантное решение в мире, страница входа может посмотреть на Request.QueryString["RedirectUrl"] и использовать его, чтобы определить, что показать пользователям:

if(Request.QueryString["RedirectUrl"].ToUpperInvariant().Contains("/ADMIN")) 
{
    // Show an admin user control or transfer to another page
}
else 
{
    // Do something else
}
...