Как применить авторизацию asp.net в двух разных папках? - PullRequest
2 голосов
/ 18 февраля 2011

enter image description here

У меня есть две папки на моем сайте asp.net, а именно VENDORS и ADMIN

Я хочу, когда любой пользователь получает доступ к любой странице в папке ADMIN, которую он перенаправляет на Admin/login.aspx до тех пор, пока они не войдут в систему ....

Я хочу, чтобы любой пользователь получал доступ к любой странице внутри папки VENDORS, которую он перенаправляет в Vendors / login.aspx, пока не войдет в систему ....

Как это сделать, используя авторизацию web.config ....

Ответы [ 2 ]

5 голосов
/ 18 февраля 2011

Вам необходимо иметь файлы web.config в папке admin и vendors отдельно.Внутри этих файлов web.config вы бы объявили свои элементы <formsauthentication> независимо.Глобальный файл web.config не должен содержать элемент <formsauthentication>.

Редактировать: Ниже я приведу фрагмент кода xml, но реализация FormsAuthentication - это не та задача, которую я бы порекомендовал для начинающих.Сначала вы должны прочитать и понять процесс, связанный с реализацией как минимум базовой модели FormsAuthentication .При этом это будет соответствующая запись web.config в разделе <system.web>:

<authentication mode="Forms">
    <forms loginUrl="~/vendors/login.aspx" 
           protection="All" 
           timeout="30" 
           name=".ASPXAUTH" 
           requireSSL="false" 
           slidingExpiration="false" 
           defaultUrl="~/vendors/default.aspx" 
           cookieless="UseDeviceProfile"/>
</authentication>
2 голосов
/ 18 февраля 2011

Если поставщик и сайт администратора полностью не связаны, я бы рекомендовал использовать единую архитектуру аутентификации. Создайте страницу входа на корневом уровне, затем используйте элементы <location> для определения авторизации роли (или отдельные файлы web.config в каждой подпапке). Обязательно ли, чтобы администраторы входили в систему /admin/login.aspx, а поставщики входили в систему /vendors/login.aspx?

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