IIS7 & проверка подлинности форм - PullRequest
0 голосов
/ 14 февраля 2012

Я боролся с этим весь день.Я пытаюсь добавить проверку подлинности с помощью форм на свой веб-сайт asp.net.

Я отключил анонимную работу, олицетворение Windows, ASP.NET и включил проверку подлинности с помощью форм.

Я создал Login.aspxстраница и есть страница Default.aspx.Default.aspx является документом по умолчанию.

Я добавил в web.config:

<authentication mode="Forms"/>

Это поведение, которое я испытываю:

1) При тестировании сhttp: \ localhost \ Я получаю ошибку 401.2 в корне приложения.

2) При тестировании с http: \ localhost \ Default.aspx я получаю ошибку 401.2 на Login.aspx, поэтому происходит перенаправление, ноLogin.aspx выдает ошибку.

Так что, похоже, у меня нет доступа к каким-либо страницам на сайте, даже Default.aspx & Login.aspx.

Но я не могу найти решение, яЯ даже пытался:

  <location path="Default.aspx">
    <system.web>
      <authorization>
        <allow users="*"/>
      </authorization>
    </system.web>
  </location>

  <location path="Login.aspx">
    <system.web>
      <authorization>
        <allow users="*"/>
      </authorization>
    </system.web>
  </location>

Но это, похоже, ничего не меняет.

Я также пытался

<authentication mode="Forms">
  <forms loginUrl="Login.aspx" />
</authentication>

Но это не делает ничего другоголибо.

Также, если я вернусь к анонимной аутентификации или аутентификации Windows, перенаправление документов по умолчанию будет работать.

Я использую asp.net 3.5 на IIS7 в Vista Business.

Пожалуйстапомощь!

Ответы [ 2 ]

2 голосов
/ 14 февраля 2012

отключение аутентификации Windows, анонимного пользователя и т. Д. В вашем приложении в IIS изменит настройки идентификации веб-сайта, а не настройки членства пользователя!

Если вы хотите включить аутентификацию на своем веб-сайте для своих пользователей, вы можетедаже оставить аутентификацию анонимного пользователя и Windows включенной, поэтому IIS будет принимать все запросы, поступающие на веб-сервер.Затем вы можете использовать аутентификацию формы (реализованную методом SignIn на странице входа в систему), чтобы предоставить вашим посетителям доступ только к определенным частям веб-сайта, использующим членство asp.net. Посмотрите эту статью об аутентификации по формам и эту о проблемах авторизации в IIS.

0 голосов
/ 13 января 2014

Разрешите анонимный доступ к папке в IIS и кодируйте нижеприведенные операторы в web.config:

<authorization>
  <deny users="?" />
</authorization>

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

На странице входа в систему вам потребуется сгенерировать билет аутентификации только после успешного входа в систему, чтобы перемещаться по аутентифицированным страницам.

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