Страница входа на основе ролей и перенаправление страницы без доступа - PullRequest
0 голосов
/ 24 января 2019

У меня есть простая аутентификация на основе форм, где определены роли. Некоторые роли определены, как показано ниже в web.config.

<location path="/Employees">
<system.web>
  <authorization>
    <allow roles="ClientAdmin,Administrator,Employee"/>
    <deny users="*"/>
  </authorization>
</system.web>

Когда обычный пользователь пытается получить доступ к странице в папке «Сотрудники», он перенаправляется на страницу входа. Однако наша страница входа предназначена для того, чтобы, если пользователь уже вошел в систему, он будет перенаправлен обратно на запрошенную страницу. Поэтому, когда пользователь, не являющийся сотрудником, администратор или клиент, пытается получить доступ к странице внутри папки сотрудников, он перенаправляется на страницу /login.aspx?ReturnUrl=%Employee%2fdefault.aspx, а страница входа перенаправляется обратно на страницу Employees / default.aspx. и затем эта страница сотрудников снова перенаправляется на страницу входа (поскольку текущий пользователь не имеет достаточной роли), и это приводит к бесконечному циклу, и страница в конечном итоге умирает со слишком большим количеством перенаправлений.

Мой вопрос здесь: если у пользователя недостаточно доступных ролей, я бы хотел перенаправить его на определенную страницу, сказав, что у него нет прав доступа к этой странице, и оттуда он может выйти из системы, чтобы повторно -логинитесь с другими учетными данными или перейдите куда-нибудь еще.

Возможно ли это с помощью аутентификации по форме?

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...