MachineKeySection.CompatibilityMode 속성
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
.NET Framework 버전 2.0 서비스 팩 1 릴리스 후에 도입된 뷰 상태에 대해 업그레이드된 암호화 방법을 사용할지 여부를 지정하는 값을 가져오거나 설정합니다.
public:
property System::Web::Configuration::MachineKeyCompatibilityMode CompatibilityMode { System::Web::Configuration::MachineKeyCompatibilityMode get(); void set(System::Web::Configuration::MachineKeyCompatibilityMode value); };
[System.Configuration.ConfigurationProperty("compatibilityMode", DefaultValue=System.Web.Configuration.MachineKeyCompatibilityMode.Framework20SP1)]
public System.Web.Configuration.MachineKeyCompatibilityMode CompatibilityMode { get; set; }
[<System.Configuration.ConfigurationProperty("compatibilityMode", DefaultValue=System.Web.Configuration.MachineKeyCompatibilityMode.Framework20SP1)>]
member this.CompatibilityMode : System.Web.Configuration.MachineKeyCompatibilityMode with get, set
Public Property CompatibilityMode As MachineKeyCompatibilityMode
속성 값
.NET Framework 2.0 SP1 릴리스 후에 도입된 암호화 메서드가 사용되는지 여부를 나타내는 값입니다.
- 특성
설명
이후 버전의 .NET Framework에서 업그레이드된 암호화 방법을 사용하면 공격자가 값을 성공적으로 리버스 엔지니어링 DecryptionKey 할 수 있는 위험이 줄어듭니다. 이전 버전과의 호환성을 유지하기 위해 이전 암호화 방법을 사용할 수 있습니다.
웹 팜의 모든 서버에는 속성이 CompatibilityMode 동일한 값으로 설정되어야 합니다. 양식 인증 티켓을 읽는 서버의 설정이 티켓을 만든 서버와 다른 CompatibilityMode 경우 티켓이 인식되지 않습니다.
속성에 대해 CompatibilityMode 다음 값을 지정할 수 있습니다.
Framework20SP1; 이 값은 ASP.NET 2.0 SP2 이전 버전의 ASP.NET 사용할 수 있는 암호화 방법을 사용한다는 것을 지정합니다. 서버에 2.0 SP2 이전 버전의 .NET Framework가 있는 경우 웹 팜의 모든 서버에 이 값을 사용합니다. 애플리케이션 Web.config 파일에 요소의httpRuntime특성이targetFramework"4.5"로 설정되지 않는 한 기본값입니다.Framework20SP2; 이 값은 ASP.NET .NET Framework 2.0 SP2에 도입된 업그레이드된 암호화 방법을 사용한다는 것을 지정합니다. 모든 서버에 .NET Framework 2.0 SP2 이상이 있지만 하나 이상의 서버에 .NET Framework 4.5가 없는 경우 웹 팜의 모든 서버에 이 값을 사용합니다.Framework45; ASP.NET 4.5의 암호화 기능이 적용됩니다. 애플리케이션 Web.config 파일에 요소의httpRuntime특성이targetFramework"4.5"로 설정된 경우 기본값입니다.
이 속성을 설정 Framework45하면 다음과 같은 제한 사항이 적용됩니다.
속성에 DataProtectorType 값이 있는 경우 속성에도 ApplicationName 값이 있어야 합니다. 클래스는 DataProtector 비어있지 않은 애플리케이션 이름을 제공해야 합니다.
특성은 Validation 실제 유효성 검사 알고리즘(예: MD5, SHA1, HMACSHA256, HMACSHA384, HMACSHA512) 또는 형식을 서브클래싱 KeyedHashAlgorithm 하는 사용자 지정 알고리즘이어야 합니다. AES 및 3DES 값은 사용할 수 없습니다.
프레임워크는 서명된 전용 페이로드를 생성하지 않습니다. 양식 인증 티켓은 요소의
forms특성이 Web.config 파일에서 설정되는 방식에protection관계없이 항상 암호화되고 서명됩니다. 뷰 상태는 지정된 페이지에 대해 설정되거나 설정된 경우EnableViewStateMacRequireViewStateEncryption항상 암호화되고 서명됩니다.
Microsoft 보안 공지 MS10-070에 설명된 보안 업데이트의 결과로, 기본 암호화 동작은 설정과 Framework20SP2 동일합니다Framework20SP1. 기본 동작을 변경하는 것은 권장되지 않지만 이렇게 하려면 ASP.NET 레거시 암호화 모드를 구성하는 방법을 참조하세요.