asp.net 3.5 Авторизация работает на локальном хосте, на тесте (IIS6) Часть местоположения авторизации игнорируется - PullRequest
1 голос
/ 23 декабря 2010

В моем веб-приложении я создал подпапку с именем «Система».В корне веб-приложения авторизация настроена так:

<authentication mode="Forms">
  <forms cookieless="UseCookies" loginUrl="~/Login.aspx" timeout="43200" path="/" protection="All" />
</authentication>
<authorization>
  <allow users="*"/>
</authorization>

В папке «Система» я добавил файл web.config со следующим:

  <system.web>
    <authorization>
      <allow roles="administrator" />
      <deny users="*" />
    </authorization>
  </system.web>


  <location path="Default.aspx">
    <system.web>
      <authorization>
        <allow roles="partner" />
      </authorization>
    </system.web>
  </location>

При локальном запуске этого веб-приложения (win7 x64, VS2010) эти правила доступа соблюдаются.Это означает, что роль партнера может иметь доступ к папке «Система», доступ только к Default.aspx.

Когда я публикую свой веб-сайт на компьютере win2k3 с IIS 6.0, роль партнера перенаправляетсястраница входа.Когда я просматриваю параметры конфигурации .NET в IIS6 в «System / Default.aspx», роль «Партнер» разрешена, но почему-то игнорируется.

У кого-нибудь есть подсказка?

...