2009-04-20 3 views
0

У меня есть веб-приложение с использованием .Net 2.0 framework. Весь сайт ограничен аутентифицированными пользователями с использованием проверки подлинности Windows. Эти правила установлены в файле web.config следующим образом:Переписывание и аутентификация URL-адреса ASP.Net

<location path="/"> 
    <system.web> 
     <authorization> 
      <allow roles="CustomerAdministrator, Manager"/> 
      <deny users="*"/> 
     </authorization> 
    </system.web> 
</location> 
<location path="Path/To/Public/File.aspx"> 
    <system.web> 
     <authorization> 
      <allow users="*"/> 
     </authorization> 
    </system.web> 
</location> 
[...] 

Как было показано выше, у меня есть одна страница, которую я хочу быть публичным. До этого момента все работает нормально. Недавно мы добавили перезаписи URL для более хороших адресов, так что я установил правило перезаписи для публичной страницы:

<RewriterConfig> 
    <Rules> 
     <RewriterRule> 
      <LookFor>~/Public</LookFor> 
      <SendTo><![CDATA[~/Path/To/Public/File.aspx]]></SendTo> 
     </RewriterRule> 
    </Rules> 
</RewriterConfig> 

Теперь при обращении к общественности страницы по своему прямому URL, он работает, как ожидался (не требуется проверка подлинности), но когда я пытаюсь получить доступ к странице через свой переписанный URL-адрес, он запрашивает аутентификацию.

Кто-нибудь знает, откуда эта проблема?

+0

Что вы используете для повторной записи URL-адресов? –

ответ

0

Я действительно нашел проблему. Я использую проект URLRewriter, который нашел у моего коллеги в Интернете, и проблема возникла из-за того, что он регистрировался на мероприятии AuthorizeRequest. Хотя это работает с аутентификацией Forms, это связано не с аутентификацией Windows, которую я использую.

Чтобы решить эту проблему, я просто должен был ее изменить таким образом, чтобы она регистрировалась вместо события BeginRequest (как написано в комментариях ... RTFM ...).

0

Вы пытались изменить свой тег местоположения, чтобы использовать/общедоступный URL?

+0

Хорошая идея ... но я просто попробовал, ничего не меняет. – Wookai

 Смежные вопросы

  • Нет связанных вопросов^_^