2008-09-23 5 views
3

반사판에서 수집 한 항목에서 RunWithElevatedPriveleges는 현재 스레드 ID를 기본 (가장하지 않은) ID로 되돌립니다. 이는 기본 서비스 계정이 수퍼 유저이기 때문에 WSS 응용 프로그램 풀 내에서 실행되는 코드의 경우에는 완벽합니다. 외부 (콘솔 또는 서비스) 응용 프로그램 (가장 (impersonation)이없는 경우)에서 실행 중일 때 영향을 줍니까? 나는 추측하고있다. 그러나 나는 확실히 알고 싶다. 나는 이것에 대해 여러 가지 의견을 봤다.SPSecurity.RunWithElevatedPrivileges는 콘솔 응용 프로그램에서 어떤 작업을 수행합니까?

답변

3

일반적으로 Runwithelevatedprivileges는 코드를 응용 프로그램 풀 ID로 실행하지만 콘솔에서는 작동하지 않습니다. 이 경우에 수행 한 작업은 runas 또는 을 사용하여 예약 된 작업의 ID를 응용 프로그램 풀 ID와 동일한 계정으로 설정합니다.

3

나는 하나의 계정으로 실행 파일을 실행 한 다음 SP와 같이 코드로 자격 증명을 변경했다면 그렇게 될 것이라고 생각합니다. 그렇지 않으면 자격 증명 개체를 생성하지 않고 시작시 권한이없는 권한으로 승격 할 수 없습니다.

0

HTTPContext가 null 인 경우 RunWithElevatedPriveleges가 작동하지 않습니다. 콘솔에서 HTTPContext는 null입니다.

관련 문제