2011-06-13 2 views
1

표준 AppPool ID는 어떻게 디버거 창을 팝업 할 수있는 권한을 가질 수 있습니까?

System.Diagnostics.Debugger.Launch(); 

를 IIS ASP.NET 웹 사이트 코드에 추가하려고했습니다. 응용 프로그램을 표준 AppPoolIdentity 사용자로 실행하고 VS2010을 연결하고 프로세스를 디버그하도록 선택할 수있는 디버그 창을 표시합니다. 내 질문은 무엇입니까 AppPoolIdentity (가상) 사용자 권한을 내 바탕 화면과 상호 작용할 수 있습니다? 일반적으로 허용되지 않습니다. 이것은 Windows 7 x64에서 테스트되었습니다.

고마워!

답변

1

같은 질문이었다.

32 비트 시스템 사용 : 마이크로 소프트 \ 윈도우 NT를 \ CurrentVersion \ AeDebug \ 디버거

\ KEY_LOCAL_MACHINE \ 소프트웨어 이것은 또한 보안 취약점의 원인이 될 수 있습니다 - 온 자세한 내용은 http://support.microsoft.com/kb/923827

참조 AEDebug 레지스트리 키 참조 : http://msdn.microsoft.com/en-us/library/5hs4b7a6.aspx

응용 프로그램 풀 ID가 바탕 화면과 상호 작용하지 않습니다. 디버거 요청은 다음과 같습니다. 디버깅을 선택하기 전까지는 아무 것도 '상호 작용'하지 않았으므로 디버거가 시작되고 그 프로세스에 연결됩니다.

+0

아주 좋은 정보입니다. 그러나 하나의 질문이 계속되며 "내"사용자 세션을 누가 찾으나요? 두 명의 사용자가 로그인 한 경우 JIT 디버거 프롬프트가 표시됩니다. – Haukman

+1

나는 "콘솔"세션이 항상이 (세션 0)을 얻을 것이라고 믿습니다. 사용자가 로그온하지 않은 경우 실패한 특정 메시지가 있습니다 (로그온 한 사용자가 없으므로 디버거를 시작할 수 없습니다). –

+0

그럴 수 있습니다. 고마워요, 그 대답은 당신 것입니다! – Haukman

0

해야 할 일은 VS 연결 프로세스에 IIS를 선택하는 것입니다. 앱에 중단 점을 설정할 수 있으며 중단 점에서 중지됩니다. 그것은 당신의 PC에있는 모든 웹 사이트를 역시 멈출 것입니다 !!!!

다른 방법으로 앱에서 디버깅 모드를 설정할 수 있습니다. 기본값은 내 코드입니다. 네이티브 코드도 디버그하도록하십시오. 여기

처리되지 않은 예외가 발생하면 나열되는 디버거를 확인하기 위해 레지스트리에 완료 체크가 당신 How to start aspnet_wp.exe without firing Application_Start event

+0

제 질문은 ASPNET 사용자가 내 바탕 화면에 액세스하지 못하도록 기대할 때, Windows가 허용하는 이유는 어떻게 작동하는지 (이미 수행 한 것)가 아니라 왜 작동하는지입니다. – Haukman

관련 문제