내 웹 응용 프로그램에 ADO.NET Entity-Framework * .edmx 파일이 있습니다.ASP.NET에서 특정 확장명의 파일에 대한 액세스를 어떻게 제한합니까?
edmx 파일로 브라우저를 탐색 할 때 * .cs 또는 vb 파일을 탐색 할 때처럼 오류 페이지가 표시되지 않고 edmx가 열리고 내 모델이 표시됩니다 모든 사용자에게 계획!
어떻게 피할 수 있습니까?
내 웹 응용 프로그램에 ADO.NET Entity-Framework * .edmx 파일이 있습니다.ASP.NET에서 특정 확장명의 파일에 대한 액세스를 어떻게 제한합니까?
edmx 파일로 브라우저를 탐색 할 때 * .cs 또는 vb 파일을 탐색 할 때처럼 오류 페이지가 표시되지 않고 edmx가 열리고 내 모델이 표시됩니다 모든 사용자에게 계획!
어떻게 피할 수 있습니까?
당신은이 두 가지 방법으로 할 수 있습니다; 먼저 Web.config의 또는 둘째
<system.web>
<httpHandlers>
<add verb="*" path="*.edmx" type="System.Web.HttpForbiddenHandler" />
</httpHandlers>
</system.web>
IIS
에서 다음 웹 설정 및 IIS에 그것을 할 방법을 자세히 Microsoft 기술 지원 페이지에 대한 링크입니다.확장명을 클래스의 web.config
에 매핑해야합니다. IIS6을 사용하고 있다면이를 수행하기 전에 확장을 ASP.NET ISAPI 처리기에 매핑해야합니다.
IIS7 통합 모드 :
<system.webServer>
<handlers>
<add name="MyForbiddenExtensionHandler"
path="*.edmx"
verb="*"
type="System.Web.HttpForbiddenHandler"
preCondition="integratedMode" />
</handlers>
</system.webServer>
IIS7 클래식 모드. 뭔가 같은 : (IIS6 구성에서 aspnet_isapi.dll
에 처리기를 매핑 후)
<system.web>
<httpHandlers>
<add path="*.edmx"
verb="*"
type="System.Web.HttpForbiddenHandler, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
</httpHandlers>
</system.web>
<system.webServer>
<handlers>
<add name="MyExtensionISAPI"
path="*.edmx"
verb="*"
modules="IsapiModule"
scriptProcessor="C:\Windows\Microsoft.NET\Framework64\v2.0.50727\aspnet_isapi.dll" preCondition="classicMode,runtimeVersionv2.0,bitness64" />
</handlers>
</system.webServer>
IIS6 :
<system.web>
<httpHandlers>
<add path="*.edmx"
verb="*"
type="System.Web.HttpForbiddenHandler, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
</httpHandlers>
</system.web>
TYPE = "System.Web.HttpForbiddenHandler에, System.Web"끝 System.Web는 오류가 발생했습니다. 형식은 "System.Web.HttpForbiddenHandler"여야합니다. – Shimmy
응답을 System.Web 어셈블리의 전체 이름으로 업데이트하여 실수를 방지합니다. 같은 이름의 형식이 포함 된 어셈블리를 실수로 다른 어셈블리에서로드하지 못하도록 어셈블리의 이름을 지정하는 편을 선호합니다. –
이것은 루트 web.config에서만 작동한다는 점을 주목하십시오 - Mehrdad의 답변은 하위 폴더에서 작동합니다 –