2014-03-31 3 views
16

SignIn을 호출 한 후 컨트롤러에서 클레임을 검색하고 수정할 수 있습니까?SignIn을 호출 한 후 ASP.NET ID의 소유권을 OWIN으로 수정할 수 있습니까?

ClaimsIdentity i = (ClaimsIdentity)HttpContext.GetOwinContext().Authentication.User.Identity; 
i.AddClaim(new Claim("type", "value")); 

내가해야 할 것은 : 이것은 나를 위해 작동하지 않는 로그인이 완료되고 사용자가 다른 일을 한 후, 그들은 양식을 게시 나는이 시점에서 주장을 수정해야하고 다른 페이지로 리디렉션하십시오. PRG와 쿠키, 정체성 또는 지식 부족으로 인해 이것이 작동하지 않는지 궁금합니다.

업데이트 : 실제로이 문제를 해결하기 위해 두 번째로 SignIn을 호출하여 작업했지만 부작용이있어 추측 할 수 있으므로 관계없이 수정하는 방법이 있는지 알아 보는 것이 좋습니다.

답변

10

전화 걸기 SignIn은 사용자의 클레임을 수정할 때 수행해야하는 작업입니다. 기본적으로 ClaimsIdentity가 쿠키에 직렬화되므로 이후 요청에서 새로운 소유권 주장이 표시됩니다.

+4

사용자가 성공적으로 로그인 한 후 이상한 호출이 발생했다고 생각합니다. 단지 의미론입니다. 감사. – Josh