2014-05-13 5 views
0

WIF에서 오래된 클레임을 처리하는 방법은 무엇입니까?WIF에서 부실 청구를 처리하는 방법은 무엇입니까?

  1. 나는 많은 다른 MVC 웹 응용 프로그램에 대한 인증을 제공하는 WIF STS 있습니다

    다음은 설정입니다. STS는 권한, 전자 메일 등과 같은 클레임도 제공합니다.

  2. MVC 응용 프로그램이 있습니다. 인증을 위해 STS를 사용하고 제공된 클레임을 사용하는 MyApp를 호출합니다.

  3. MVC 응용 프로그램이 있는데, 관리자가 사용자와 관련된 권한과 같이 사용자의 클레임을 변경할 수 있도록 MyManager를 호출합니다.

는 여기에 문제의 : MyApp를에

  1. 사용자 "MisterUser"로그와 자신의 주장을 포함 FedAuth 쿠키 얻을 수 - 사용자 정의 "MyAppUser"(특권) 청구 등을 포함한다. MyApp는 사용자가 MyApp에 대한 요청을 할 수 있는지 확인하기 위해이 소유권 주장을 확인합니다.

  2. MisterUser의 세션과 동시에 "Admin"은 MyManager에 로그인하여 MisterUser에서 MyAppUser 클레임을 제거합니다.

  3. MisterUser는 FedAuth 쿠키가 이미 작성되어 해당 세션에 유용하기 때문에 세션이 만료 될 때까지 계속 MyApp를 사용할 수 있습니다.

은 분명히 내가 여기 일이 갖고 싶어하는 것은 관리자가 자신의 MyAppUser (특권)의 주장을 제거 후 즉시 MisterUser의 액세스를 종료하는 것입니다. 이 작업을 수행하는 가장 좋은 방법은 무엇입니까?

이것은 간단한 해결책에 대한 일반적인 문제이지만 전 수 시간의 검색을 통해 실제적인 통찰력을 발견 할 수 없었습니다.

도움을 주시면 대단히 감사하겠습니다.

+0

ADFS를 사용하는 경우 사용할 수있는 로그 아웃 요청이 있습니다. [SOlink] (http://stackoverflow.com/questions/8228746/wif-federatedsignout-not-signing-user-out- 모든 사이트) – ManyRootsofAllEvil

답변

0

귀하가 진술 한대로, 클레임은 세션에 유효합니다. 그것들은 역동적이지 않으며 (만약 당신이 그것에 대해 생각한다면) 어떤 종류의 STS 동적 갱신을 구현하는 것은 악몽 일 것입니다.

클레임은 사용자가 로그인 할 때 업데이트되므로이 문제를 해결할 수있는 유일한 방법은 로그 아웃 한 다음 "Under the Hood"에 로그인하여 사용자가이를 인식하지 못하도록하는 것입니다.

저는 비슷한 질문을했습니다 - Updating claims with ADFS and WIF과 그 대답을 참조하십시오.

+0

빠른 응답을 보내 주셔서 감사합니다! 여기에서 중요한 점은 로그 아웃하고 후드 아래에 로그인해야 할 때를 알고있을 것이고 이것은 실제로 당신이 주장하는대로 구현할 악몽 일 것입니다. 그 주장의 세션 생활은 받아 들일만한 위험이 될 것입니다. –