방법: ASP.NET 구성 설정 잠금
업데이트: 2007년 11월
기본적으로, 하위 디렉터리에 있는 ASP.NET 구성 파일은 부모 구성 파일에 선언된 구성 설정을 재정의하고 확장합니다. 응용 프로그램 호스팅 시나리오에서 ASP.NET 응용 프로그램의 일부 설정을 잠궈 하위 수준에서 수정하지 못하게 할 수 있습니다. 예를 들어, 호스팅되는 응용 프로그램의 보안 설정을 잠궈 관리자가 해당 보안 설정을 실수로 변경하지 못하게 할 수 있습니다.
location 요소에 allowOverride 특성을 추가하고 allowOverride 특성을 false로 설정하여 ASP.NET 구성 파일(Web.config 파일)의 구성 설정을 잠글 수 있습니다. 그런 다음 location 요소에서 잠글 구성 섹션을 정의할 수 있습니다. 다른 구성 파일이 잠겨 있는 이 location 요소 내에 정의된 구성 섹션을 재정의하려고 시도하면 ASP.NET은 예외를 throw합니다.
allowOverride=false 특성과 함께 location 요소를 사용하면 전체 구성 섹션을 잠글 수 있습니다. lockItem, lockElements, lockAttributes, lockAllAttributesExcept 및 lockAllElementsExcept를 사용하여 개별 구성 요소 및 특성을 잠글 수도 있습니다. 자세한 내용은 section 요소에서 상속된 일반 특성을 참조하십시오.
예제
다음 코드 예제에서는 서로 다른 ASP.NET 응용 프로그램인 application1과 application2의 신뢰 수준을 잠그는 Web.config 파일의 일부를 보여 줍니다. trust 구성 섹션의 구성 설정을 재정의하려고 시도하면 구성 시스템 오류가 발생합니다.
<configuration>
<location path="application1" allowOverride="false">
<system.web>
<trust level="High" />
</system.web>
</location>
<location path="application2" allowOverride="false">
<system.web>
<trust level="Medium" />
</system.web>
</location>
</configuration>