2014-02-23 5 views
3

ASP.NET Web Forms 프로젝트가 있습니다. 이 프로젝트에 Demo 폴더를 만들고이 폴더에 HelloWorld.html을 넣습니다. 모든 사용자에 대해 html (중요한 것은 ASP가 아닙니다) 페이지에 대한 액세스를 거부해야합니다. 어떻게해야합니까?HTML 페이지에 대한 액세스 거부

이 방법을 시도했지만 작동하지 않았습니다 (하지만 ASP 페이지에서 완벽하게 작동합니다).

<configuration> 
    <location path="Demo/HelloWorld.html"> 
     <system.web> 
      <authorization> 
       <deny users="*"/> 
      </authorization> 
     </system.web> 
    </location> 
</configuration> 
+0

당신은하지 HTML 페이지에 대한 액세스를 제한하는 방법을 알고 계십니까 , 또는 액세스를 전혀 제한하는 방법을 모르십니까? –

+2

그의 문제는 요소가 * .html 파일, * .aspx 파일 만 존중하고 * .html 파일을 구체적으로 제한하는 방법을 묻는 것입니다. –

답변

4

web.config이 올바른지 확인하십시오. 이 문제는 ASP.NET 파이프 라인을 통과하는 파일을 보호합니다. html 같은 특정 정적 파일은 IIS에서 직접 제공되므로 보안을 우회합니다. 당신은 당신의 Web.config의 <system.webServer> 섹션에서 그들에 대한 처리기를 추가하여 ASP.NET 파이프 라인을 통해 이동하는 정적 파일을 강제 할 수

:

<handlers> 
    <add name="HTMLHandler" type="System.Web.StaticFileHandler" path="*.html" verb="GET" /> 
</handlers> 
관련 문제