Share via


유효성 <검사 유효성 검사>

개요

요소는 <validation> IIS(인터넷 정보 서비스) 7을 구성하여 통합 모드에서 올바르게 작동하기 위해 클래식 .NET 모드에서 실행되도록 설정된 ASP.NET 애플리케이션을 변경해야 하는지 여부를 검색합니다.

validateIntegratedModeConfiguration 특성이 true로 설정되고 다음 중 하나가 true이면 IIS에서 마이그레이션 오류 메시지를 생성합니다.

  • 애플리케이션은 해당 Web.config 파일에서 섹션을 정의합니다 <httpModules> .

    IIS 7 통합 모드에서 ASP.NET 모듈은 system.webServer> 아래<의 통합 <모듈 섹션에서 네이티브 모듈>로 지정됩니다.

  • 애플리케이션은 해당 Web.config 파일에서 섹션을 정의합니다 <httpHandlers> .

    IIS 7 통합 모드에서 ASP.NET 처리기 매핑은 system.webServer> 내의 통합 처리기 섹션에< 지정됩니다.>< 처리기> 섹션은< ASP.NET <httpHandlers> 1.0 처리기 매핑을 설정하는 데 필요한 ASP.NET 및 IIS 스크립트 프로세서 매핑 구성을 모두 대체합니다.

  • 애플리케이션의 Web.config 파일은 를 지정합니다 <identity impersonate="true" />.

    IIS 7 통합 모드에서는 일부 초기 요청 처리 단계에서 클라이언트 가장을 사용할 수 없습니다. 따라서 IIS는 마이그레이션 오류 메시지를 생성합니다. ASP.NET 웹 애플리케이션이 클라이언트 자격 증명을 가장하는 경우(인트라넷 시나리오에서 가장 일반적) validateIntegratedModeConfiguration 특성을 false로 설정할 수 있습니다.

참고

구성을 수동으로 마이그레이션하거나 구성을 마이그레이션하지 않지만 IIS를 통합 모드로 유지하려는 경우(권장되지 않음) validateIntegratedModeConfiguration 특성을 false로 설정하여 마이그레이션 오류 메시지를 사용하지 않도록 설정할 수 있습니다. validateIntegratedModeConfigurationfalse이면 IIS에서 지원되지 않는 구성에 대한 경고를 더 이상 제공하지 않으므로 이 설정을 만들기 전에 애플리케이션이 통합 모드에서 올바르게 작동하는지 확인합니다.

호환성

버전 참고
IIS 10.0 <validation> 요소가 IIS 10.0에서 수정되지 않았습니다.
IIS 8.5 <validation> 요소가 IIS 8.5에서 수정되지 않았습니다.
IIS 8.0 <validation> 요소가 IIS 8.0에서 수정되지 않았습니다.
IIS 7.5 <validation> 요소가 IIS 7.5에서 수정되지 않았습니다.
IIS 7.0 요소는 <validation> IIS 7.0에서 도입되었습니다.
IIS 6.0 해당 없음

설치 프로그램

요소는 <validation> IIS 7의 기본 설치에 포함됩니다.

방법

IIS 7에 대한 유효성 검사를 추가하기 위한 사용자 인터페이스가 없습니다. 프로그래밍 방식으로 유효성 검사를 추가하는 방법에 대한 예제는 이 문서의 코드 샘플 섹션을 참조하세요.

구성

특성

attribute Description
validateIntegratedModeConfiguration 선택적 부울 특성입니다.

통합 모드에서 실행할 때 구성 유효성 검사를 사용할 수 있는지 여부를 지정합니다. 이 프로세스 중에 및 <system.Web/httpHandlers><system.Web/httpModules> 섹션과 가장이 확인됩니다.

기본값은 true입니다.

자식 요소

없음

구성 샘플

다음 구성 샘플에서는 유효성 검사를 사용하도록 설정합니다. > [! 참고]

이 발췌문은 Web.config 파일에서 발췌한 것이므로 이 구성 샘플은 웹 사이트 내의 모든 폴더 수준에서 사용할 수 있습니다.

<configuration>
   <system.webServer>
      <validation validateIntegratedModeConfiguration="true" />
   </system.webServer>
</configuration>

샘플 코드

다음 코드 샘플은 기본 웹 사이트에 대한 유효성 검사를 사용하도록 설정합니다.

AppCmd.exe

appcmd.exe set config "Default Web Site" -section:system.webServer/validation /validateIntegratedModeConfiguration:"True"

C#

using System;
using System.Text;
using Microsoft.Web.Administration;

internal static class Sample
{
   private static void Main()
   {
      using(ServerManager serverManager = new ServerManager())
      { 
         Configuration config = serverManager.GetWebConfiguration("Default Web Site");

         ConfigurationSection validationSection = config.GetSection("system.webServer/validation");
         validationSection["validateIntegratedModeConfiguration"] = true;

         serverManager.CommitChanges();
      }
   }
}

VB.NET

Imports System
Imports System.Text
Imports Microsoft.Web.Administration

Module Sample

   Sub Main()
      Dim serverManager As ServerManager = New ServerManager
      Dim config As Configuration = serverManager.GetWebConfiguration("Default Web Site")

      Dim validationSection As ConfigurationSection = config.GetSection("system.webServer/validation")
      validationSection("validateIntegratedModeConfiguration") = True

      serverManager.CommitChanges()
   End Sub

End Module

JavaScript

var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST/Default Web Site";

var validationSection = adminManager.GetAdminSection("system.webServer/validation", "MACHINE/WEBROOT/APPHOST/Default Web Site");
validationSection.Properties.Item("validateIntegratedModeConfiguration").Value = true;

adminManager.CommitChanges();

VBScript

Set adminManager = WScript.CreateObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST/Default Web Site"

Set validationSection = adminManager.GetAdminSection("system.webServer/validation", "MACHINE/WEBROOT/APPHOST/Default Web Site")
validationSection.Properties.Item("validateIntegratedModeConfiguration").Value = True

adminManager.CommitChanges()