
가장 간결하게 말하면, 제 질문은 IIS 7 통합 모드에서 실행되는 ASP.NET 4.0 앱이 Web.config 파일의 다음 부분을 적용할 수 있는지 여부입니다.
<location path="auth/windows">
<system.webServer>
<modules>
<remove name="FormsAuthentication"/>
</modules>
</system.webServer>
</location>
혼합 모드 인증(Windows 및 Forms)을 실험하고 있습니다. IIS 관리자를 사용하여 위의 위치 경로 내에 있는 auth/windows/winauth.aspx에 대한 익명 인증을 비활성화했습니다. 302를 포함하여 다양한 HTTP 상태 코드를 추적하도록 실패한 요청 추적을 설정했습니다.
winauth.aspx 페이지를 요청하면 302 HTTP 상태 코드가 반환됩니다. 요청 추적을 보면 원래 AnonymousAuthenticationModule에 의해 401(승인되지 않음)이 생성되었음을 알 수 있습니다. 그러나 FormsAuthenticationModule은 이를 브라우저에 표시되는 302로 변환합니다. 따라서 해당 경로의 페이지에 대한 파이프라인에서 해당 모듈을 제거하려는 시도가 작동하지 않는 것 같습니다. 그러나 잘못된 구성임을 나타내는 불만 사항(이벤트 뷰어, 죽음의 전화번호부 등)은 어디에도 없습니다. 나는 401이 브라우저에 반환되기를 원합니다. 아마도 적절한 WWW-Authenticate 헤더가 포함될 것입니다.
<authentication mode="Forms">
몇 가지 다른 사항: a) Web.config에 있고 302가 리디렉션되는 곳이 바로 이것입니다. b) inetserv\config\applicationHost.config 파일에서 제거하려는 모듈의 "이름"을 얻었습니다. c) Web.config 파일에 다음 요소가 있습니다: <modules runAllManagedModulesForAllRequests="false">
; d) 인증 모드를 "없음"으로 설정한 경로에 대한 요소를 시도했지만 <location>
해당 속성을 응용 프로그램 수준 아래로 설정할 수 없다는 노란색 예외 페이지가 표시되었습니다.
이런 방식으로 모듈을 제거한 사람이 있나요?