방법: 부분 신뢰 응용 프로그램 디버깅
Windows 및 콘솔 응용 프로그램에 적용됩니다.
ClickOnce 보안 및 배포를 사용하면 코드 액세스 보안을 통해 컴퓨터의 리소스에 대한 액세스를 제한하는 부분 신뢰 응용 프로그램을 쉽게 배포할 수 있습니다.
부분 신뢰 응용 프로그램은 어떠한 경로를 통해 설치했는지에 따라 보안 권한 및 동작이 달라지므로 디버깅하기가 어려울 수 있습니다. 부분 신뢰 응용 프로그램을 인터넷을 통해 설치한 경우에는 응용 프로그램에 권한이 거의 없습니다. 로컬 인트라넷에서 설치한 경우에는 좀 더 많은 권한이 부여되고, 로컬 컴퓨터에서 설치하면 모든 권한이 부여됩니다. 사용자 지정 권한으로 사용자 지정 영역을 설정할 수도 있습니다. 부분 신뢰 응용 프로그램은 이러한 임의의 조건 아래에서 디버깅해야 할 수 있습니다. Visual Studio를 사용하면 이와 같은 복잡한 디버깅 작업도 쉽게 수행할 수 있습니다.
Visual Studio에서 디버그 세션을 시작하기 전에 응용 프로그램을 설치하는 데 사용할 영역을 선택하여 시뮬레이션할 수 있습니다. 디버깅을 시작할 때 응용 프로그램에는 해당 영역을 통해 설치된 부분 신뢰 응용 프로그램에 허용되는 적절한 권한이 부여됩니다. 이렇게 하면 해당 영역에서 응용 프로그램을 다운로드한 사용자에게 제공되는 것과 동일한 응용 프로그램 동작을 확인할 수 있습니다.
권한이 없는 작업을 응용 프로그램에서 수행하면 예외가 발생합니다. 이 경우 예외 도우미를 사용하면 필요한 권한을 추가할 수 있으므로 충분한 권한을 부여하여 문제 없이 디버깅 세션을 다시 시작할 수 있습니다.
나중에 디버깅 과정에서 추가했던 권한을 다시 검토할 수 있습니다. 디버깅하는 동안 권한을 추가해야 했다면 대개의 경우 이는 코드의 해당 지점에 사용자 동의 메시지를 추가해야 함을 의미합니다.
참고
디버거 시각화 도우미에는 부분 신뢰 응용 프로그램에 허용되는 것보다 많은 권한이 필요합니다.부분 신뢰 코드에서 중지하면 시각화 도우미가 로드되지 않습니다.시각화 도우미를 사용하여 디버깅하려면 완전 신뢰 코드를 실행해야 합니다.
부분 신뢰 응용 프로그램의 영역을 선택하려면
프로젝트 메뉴에서 Projectname 속성을 선택합니다.
Projectname 속성 페이지에서 보안 페이지를 클릭합니다.
ClickOnce 보안 설정 사용을 선택합니다.
설치할 응용 프로그램을 가져올 영역 아래에서 드롭다운 목록 상자를 클릭하고 설치할 응용 프로그램을 시뮬레이션할 영역을 선택합니다.
응용 프로그램에 필요한 권한 표에 사용 가능한 모든 권한이 표시됩니다. 확인 표시는 응용 프로그램에 해당 권한이 부여되어 있음을 나타냅니다.
선택한 영역이 **(사용자 지정)**인 경우 권한 표의 설정 열에서 올바른 사용자 지정 설정을 선택합니다.
확인을 클릭하여 속성 페이지를 닫습니다.
보안 예외가 발생한 경우 필요한 권한을 추가하려면
예외 도우미 대화 상자에 'SecurityException이(가) 처리되지 않았습니다.'라는 메시지가 나타납니다.
예외 도우미 대화 상자의 작업 아래에서 프로젝트에 권한 추가를 클릭합니다.
디버깅 다시 시작 대화 상자가 나타납니다.
새 권한을 적용하여 디버깅 세션을 다시 시작하려면 예를 클릭합니다.
아직 다시 시작하지 않으려면 아니요를 클릭합니다.
디버깅하는 동안 추가된 권한을 보려면
프로젝트 메뉴에서 Projectname 속성을 선택합니다.
Projectname 속성 페이지에서 보안 페이지를 클릭합니다.
응용 프로그램에 필요한 권한 표를 확인합니다. 추가된 권한의 포함 열에는 포함된 모든 권한에 적용되는 일반적인 확인 표시 이외에도 문자 "i"가 포함된 풍선 모양의 추가 아이콘이 있습니다.
전체 응용 프로그램에 필요한 권한 표를 보려면 세로 스크롤 막대를 사용합니다.