2017-11-16 6 views
2

Azure AD B2C를 독점적으로 사용하여 사용자를 인증하는 프로젝트를 개발 중입니다. 로그인 흐름이 작동하는 방식에 대한 몇 가지 문서를 준비 중입니다. Fiddler에서 추적합니다.Azure AD B2C - id_token에 대한 사용자 이름/비밀번호 교환 방법은 무엇입니까?

login.microsoftonline.com에서 렌더링 한 양식에 사용자 이름과 암호를 올바르게 입력 한 사용자는 응답으로 id_token을 얻고 Google 웹 사이트에 제시하여 인증을 받고 세션을 설정합니다. .

Fiddler에서 올바른 사용자 이름과 암호가 포함 된 ourtenant.onmicrosoft.com의 POST가 표시됩니다. 응답 본문은 "{"상태 ":"200 "}"묶음의 쿠키 헤더 (간결성을 위해 생략 된 내용)가 있습니다.

x-ms-cpim-slice 
x-ms-cpim-dc 
x-ms-cpim-cache 
x-ms-cpim-trans 

이 다음, 위 쿠키를 포함 ourtenant.onmicrosoft.com에 GET을보고, ourtenant.onmicrosoft.com 숨겨진 필드에 id_token을 포함 HTML의 덩어리로 응답합니다.

Azure AD B2C는 첫 번째 POST의 올바른 사용자 이름/암호 항목을 진행 GET에 대한 응답으로 제공된 id_token과 어떻게 연관 지을 수 있습니까?

신참 내 생각 엔 x-ms-cpim-cache 쿠키를 사용한다는 것이고, 그렇다면 단지 저장 내용과 얼마나 강력하게 보호되는지 알고 싶습니다.

답변

1

계약과 관련하여의 쿠키는 B2C 내부에 있습니다. B2C 서비스에 의해 생성되고 소비되므로 내부 구조가 언제든지 변경 될 수 있습니다.

암호는 사용자가 제공 한 것과 동일한 요청으로 유효성이 검사 된 다음 삭제됩니다.

B2C는 쿠키를 사용하여 사용자가 인증 프로세스에서 수행 한 진행 상황을 추적합니다. 이러한 쿠키는 암호화됩니다. 그 이상으로,이 쿠키 (들)에 무엇이 있는지를 나타내는 것은 도움이되지 않습니다. 오늘날 B2C에서 DB에 일부 상태를 저장할 수있는 GUID가 될 수 있으며, 수명이 다한 일부 보안 토큰이 될 수 있습니다.

+0

자격있는 주석 작성자의 답변에 대해 감사드립니다. 튼튼하고 나는 특별히 신경 쓰지는 않지만 생각을 잠시 멈추게합니다. 나는 진짜 자격 증명이 들어가는 것을 보았고 훌륭한 표준 호환 OAuth2 토큰이 나오지만 중간에있는 쿠키 관리는 의도적 인 수수께끼로 보입니다. 지금까지는 B2C가 훌륭하다고 생각하지만, 인증 흐름의 일부가 독점적이며 언제든지 변경 될 수 있다는 감정에 대해별로 흥분하지 않습니다. 소중한 데이터가 클라우드에 들어갈 때 우리는이 프레임 워크를 글로벌 게이트 키퍼로 신뢰하고 있습니다. – Michael12345