2012-09-21 1 views
0

특정 상황에서 실제로 로그인 한 사용자가 아닌 다른 사용자로 요청을 실행하고 싶습니다. 따라서 사용자 A가 특정 페이지를 요청하면 코드에서 사용자 B의 사용자 계정으로 실행을 전환하고 싶습니다.폼 인증을 사용하면 현재 요청에 대해서만 로그인 한 사용자를 코드로 전환 할 수 있습니까?

FormsAuthentication.SetAuthCookie("UserB") 

이 작동하지만, 지속적이다 - 에만이 단일 요청에 대한

(또는 ... 코드의 단일 블록) 나는 이것을 사용했습니다. 새 페이지를 요청하면 사용자 B로 로그인했습니다. 원하지 않는 사용자입니다.

이것이 가능합니까? 나는 RTFM을 위아래로했습니다.

편집 : 내가 아래에 게시 한 답변을 찾았을 수 있습니다. 이 솔루션의 확인 또는 논평을 원합니다.

답변

0

내가 찾은 것 같습니다. 나는 100 % 확신 할 수는 없지만 이것이 효과적이다. 나는 그것이 완전히 정확한지 또는 내가 고려하지 않고있는 것이 있는지를 단지 알지 못한다.

HttpContext.Current.User = PrincipalInfo.CreatePrincipal("UserB"); 

다시 말하지만, 이것은 내가 원래 원했던 것처럼 보입니다. 옳고 그름을 증명할 수있는 경험이 있다면 의견을 말하십시오.

관련 문제