<NetFx40_LegacySecurityPolicy> 요소

런타임이 레거시 CAS(코드 액세스 보안) 정책을 사용할지를 지정합니다.

<configuration>
  <runtime>
    <NetFx40_LegacySecurityPolicy>

참고

CAS(코드 액세스 보안)는 .NET Framework 및 .NET의 모든 버전에서 더 이상 사용되지 않습니다. 최신 버전의 .NET은 CAS 주석을 준수하지 않으며 CAS 관련 API를 사용하는 경우 오류가 발생합니다. 개발자는 보안 작업을 수행하는 대체 수단을 찾아야 합니다.

구문

<NetFx40_LegacySecurityPolicy
   enabled="true|false"/>

특성 및 요소

다음 섹션에서는 특성, 자식 요소 및 부모 요소에 대해 설명합니다.

특성

특성 설명
enabled 필수 특성입니다.

런타임이 레거시 CAS 정책을 사용하는지 여부를 지정합니다.

enabled 특성

Description
false 런타임이 레거시 CAS 정책을 사용하지 않습니다. 기본값입니다.
true 런타임이 레거시 CAS 정책을 사용합니다.

자식 요소

없음

부모 요소

요소 Description
configuration 공용 언어 런타임 및 .NET Framework 애플리케이션에서 사용하는 모든 구성 파일의 루트 요소입니다.
runtime 런타임 초기화 옵션에 대한 정보를 포함합니다.

설명

.NET Framework 버전 3.5 및 이전 버전에서는 CAS 정책이 항상 적용됩니다. .NET Framework 4에서는 CAS 정책을 사용하도록 설정해야 합니다.

CAS 정책은 버전별로 다릅니다. 이전 버전의 .NET Framework에 있는 사용자 지정 CAS 정책은 .NET Framework 4에서 다시 지정해야 합니다.

.NET Framework 4 어셈블리에 <NetFx40_LegacySecurityPolicy> 요소를 적용해도 보안 투명코드에는 영향을 주지않습니다. 투명성 규칙은 여전히 적용됩니다.

중요

<NetFx40_LegacySecurityPolicy> 요소를 적용하면 전역 어셈블리 캐시에 설치되지 않은 네이티브 이미지 생성기(Ngen.exe)에 의해 만들어진 네이티브 이미지 어셈블리의 성능이 크게 저하될 수 있습니다. 성능 저하는 특성이 적용될 때 런타임이 어셈블리를 네이티브 이미지로 로드할 수 없기 때문에 발생하며 이로 인해 Just-In-Time 어셈블리로 로드됩니다.

참고

Visual Studio 프로젝트의 프로젝트 설정에서 .NET Framework 4 이전의 대상 .NET Framework 버전을 지정하면 해당 버전에 대해 지정한 사용자 지정 CAS 정책을 포함하여 CAS 정책이 사용하도록 설정됩니다. 그러나 새로운 .NET Framework 4 형식 및 멤버는 사용할 수 없습니다. .NET Framework의 이전 버전은 애플리케이션 구성 파일에 있는 시작 설정 스키마에서 <supportedRuntime> 요소를 사용하여 지정할 수도 있습니다.

참고

구성 파일 구문은 대/소문자를 구분합니다. 구문 및 예 섹션에 제공된 구문을 사용해야 합니다.

구성 파일

이 요소는 애플리케이션 구성 파일에서만 사용할 수 있습니다.

예제

다음 예에서는 애플리케이션에 대해 레거시 CAS 정책을 사용하도록 설정하는 방법을 보여 줍니다.

<configuration>
   <runtime>
      <NetFx40_LegacySecurityPolicy enabled="true"/>
   </runtime>
</configuration>

참고 항목