Share via


ASP.NET 디버깅: 시스템 요구 사항

이 항목에서는 다음과 같은 ASP.NET 디버깅 시나리오에 대한 소프트웨어 및 보안 요구 사항을 설명합니다.

  • 로컬 디버깅: Visual Studio와 웹 애플리케이션이 동일한 컴퓨터에서 실행됩니다. 이 시나리오에는 다음 두 가지 경우가 있습니다.

    • ASP.NET 코드가 파일 시스템에 상주하는 경우.

    • ASP.NET 코드가 IIS 웹 사이트에 상주하는 경우.

  • 원격 디버깅: Visual Studio가 클라이언트 컴퓨터에서 실행되며 원격 서버 컴퓨터에서 실행되는 웹 애플리케이션을 디버그합니다.

보안 요구 사항

원격 디버깅을 수행하려면 로컬 및 원격 컴퓨터가 도메인 설정 또는 작업 그룹 설정에 있어야 하며,

ASP.NET 작업자 프로세스(애플리케이션 풀에서 호스트함)를 디버그하려면 해당 프로세스를 디버그할 수 있는 권한이 있어야 합니다. 기본적으로 IIS 6.0 이전의 ASP.NET 애플리케이션은 ASPNET 사용자로 실행됩니다. IIS 6.0 및 IIS 7.0에서는 NETWORK SERVICE 계정이 기본값입니다. 작업자 프로세스가 ASPNET또는 NETWORK SERVICE로 실행되는 경우 이 프로세스를 디버깅하려면 관리자 권한이 필요합니다.

Important

Windows Server 2008 R2부터는 각 애플리케이션 풀의 ID로 ApplicationPoolIdentity를 사용하는 것이 좋습니다.

ASP.NET 작업자 프로세스의 이름은 디버깅 시나리오와 IIS 버전에 따라 다릅니다. 자세한 내용은 방법: ASP.NET 프로세스의 이름 찾기을 참조하세요.

IIS를 실행 중인 서버의 machine.config 파일을 편집하여 ASP.NET 작업자 프로세스를 실행하는 사용자 계정을 변경할 수 있습니다. IIS(인터넷 정보 서비스) 관리자를 사용하여 이 작업을 수행하는 것이 가장 좋습니다. 자세한 내용은 방법: 사용자 계정으로 작업자 프로세스 실행을 참조하십시오.

ASP.NET 작업자 프로세스가 고유한 사용자 계정에서 실행되도록 변경하는 경우에는 IIS를 실행하는 서버의 관리자가 아니어도 됩니다.

주의

ASP.NET 작업자 프로세스가 다른 계정에서 실행되도록 변경하기 전에 해당 계정에서 실행되는 동안 ASP.NET 작업자 프로세스가 해킹될 경우의 가능한 결과를 고려하세요. ASPNET 및 NETWORK SERVICE 사용자 계정은 최소 권한으로 실행되므로 프로세스가 해킹되는 경우 가능한 손실을 줄일 수 있습니다. ASP.NET 작업자 프로세스가 보다 많은 권한을 가진 계정에서 실행되도록 변경해야 하는 경우에는 더 큰 손실이 발생할 수 있습니다.