2010-05-24 3 views
2

, 난 다음에 의심의 여지가 : 윈도우 식별 재단 [WIF]에서연합 인증 토큰이 저장되는 곳 [WIF STS]? 내가 WIF를 탐험하기 시작하면서

을, 보안 토큰 서비스 [STS]에보고, 나는 어디 연합 인증 토큰을 알고 싶은이 저장 되나요?

브라우저 쿠키라고 생각합니다. 그렇다면 누군가 내게 그것에 대한 통찰력을 주시기 바랍니다.

+0

Windows Identity Foundation 세계에 오신 것을 환영합니다 .-) –

답변

3

필자는이 문제에 대한 답변을 찾기 위해 'Fiddler'웹 디버거를 사용했습니다. 결과는 다음과 같습니다. 신청서의 이름이 SecureApp이고 STS의 이름이 SecurePortal이라고 가정 해 봅시다.

브라우저를 처음 가리킬 때 가장 먼저 일어나는 일은 SecureApp입니다. 인증을 받았는지 확인하는 것입니다. 그렇지 않은 경우 SecureApp에 로그인했음을 나타내는 쿼리 문자열을 사용하여 즉시 SecurePortal으로 리디렉션됩니다. 당신이 SecurePortal에 로그인하면

은 WIF 프레임 워크는 사용자가 성공적으로 로그인을 나타냅니다 값을 포함하는 어떤 '숨겨진'HTML 필드를 포함하는 SecurePortal에서 HttpResponse 생성합니다.이 값은 서명 및/또는 설정에 따라 암호화 될 수있다 SecurePortal입니다. 이 값들과 함께 브라우저가 값을 SecureApp에 게시하게하는 자바 스크립트 코드가 작성되었습니다. 이 값들이 SecureApp에 의해 유효성이 검사되면 프레임 워크는 사용자가 로그인했음을 나타내는 쿠키가있는 HttpResponse을 작성합니다. 제 경험상 쿠키 이름은 "FedAuth"로 시작합니다. 이 시점에서 SecureApp 내의 페이지에 액세스 할 수 있습니다.

또한 프레임 워크에는 수동으로 제거되지 않도록 설정 한 쿠키를 차단하는 몇 가지 방법이있는 것 같습니다.

웹 디버거를 사용하고 더 잘 이해하기 위해이 프로세스를 직접 관찰하는 것이 좋습니다.

짧은 답변 : 토큰은 STS에서 HttpResponse으로 브라우저에 제공되고 브라우저에서 응용 프로그램의 쿠키로 다시 제공됩니다.

+0

Thanks rising star – Googler

0

또한 WIF는 토큰에 대해 "세션 모드"를 지원합니다. 이 경우 토큰은 서버에 보관되고 브라우저 (더 작은) 핸들 만 브라우저에 전달됩니다. 대역폭 고려 사항이있는 경우 특히 유용합니다. 이에

참조 비토리오의 게시물 : Session mode for WIF

추가 더 참조 :

하비의 session at last PDC이 적용됩니다.