2010-03-10 4 views
3

웹 관리 콘솔을 통해 서버에서 일련의 관리 작업을 실행하려고합니다. 콘솔은 현재 로그인 한 사용자 인 가장으로 실행되며 로컬 컴퓨터의 관리자 만 로그인 할 수 있습니다. 현재 대부분의 경우 작동하지만 UAC에서 실행할 때 문제가 발생합니다.ASP.NET 코드에 관리자 권한을 일시적으로 부여

첫 번째 문제는 차단기입니다. 관리자가 로컬 상자의 관리자 인 경우에도 "BUILTIN \ Administrators"역할을받지 못하는 것 같습니다. 이렇게하면 web.config <allow roles="BUILTIN\Administrators"> 표기법을 사용하여 보안을 지정하기 때문에 관리 콘솔에 로그인하지 못할 수 있습니다. 필자는 여기서 유일한 해결책은 ASP.NET 응용 프로그램을 SYSTEM으로 실행하거나 더 많은 사용자를 허용하고 코드에서보다 세분화 된 사용 권한을 확인하는 것입니다. 다른 아이디어? 기본 제공 ASP.NET 사용 권한 확인에 권한 상승 요청을 삽입 할 수있는 방법이 있습니까?

다른 문제는 관리자 액세스가 필요한 명령을 실행하고 싶다는 것입니다. 사이트를 방문하는 사용자는 관리자이며 올바르게 가장 처리되지만 프로세스를 생성 할 때 관리자 권한이 없어서 실패합니다. 분명한 대답은 명령의 지속 기간 동안 상승하는 것입니다. 특정 사용자 이름과 암호를 가장하여 일시적으로 권한을 상승시킬 수있는 솔루션이 있지만 이미 검증 된 사용자에게 암호를 요청하지 않아도됩니다. 현재 사용자를 높이기위한 트릭이 있습니까?

(나는 ASP.NET 팀이 이것을 열심히 시도 할 수도 있기 때문에 웹 페이지가 관리자가 웹 사이트를 방문하는 눈에 보이지 않는 이점을 취할 수는 없다는 것을 이해할 수 있습니다.하지만 확실한 방법이 있어야합니다. 문법적으로 코드를 적절하게 그 의도의 IIS 관리자 경고, 전체 관리자 권한이 필요하다고 선언) 윈도우와 같은 응용 프로그램, 양식에 대한 답변의 일련 있습니다

: How to elevate privileges only when required?File.Exists returning false from a network share 하지만 난에 바라고을 ASP.NET과 호환되는 것을 찾으십시오.

감사합니다. Steve

+0

(이전 글). 혹시 답을 찾았습니까? –

+0

또한 이에 대한 답변을 찾고 있습니다. – roryf

+0

답변에 제공된 자료를 사용하신 적이 있습니까? 아니면 대체 경로를 택 했습니까? – Peter

답변

1

Active Directory에서 위임 할 수 있도록 서버를 설정하여 현재 웹 사이트에 액세스하는 사용자로부터 "높은"가장 수준을 얻을 수있었습니다. Microsoft, You can think of delegation as a more powerful form of impersonation, as it enables impersonation across a network. 당신은 네트워크를 거칠 필요가 없을 수도 있지만 보안 문제를 해결할 수 있습니다.

다음은 위임 설정에 대한 몇 가지 자료입니다. 도움이 될 것입니다. Impersonation and Delegation

  • 관련 문제