ASP.NET MVC 응용 프로그램은 Google, Facebook 등에서 연합 인증에 WIF 3.5 및 Azure ACS를 사용하고 있습니다. 등록하는 동안 IdP로 인증 된 사용자는 Google에 사용자 정의 사용자 데이터를 저장합니다. 데이터 베이스.WIF에서 동시 신원 처리 공급자 클레임 처리
현재로서는 하나의 사용자 계정을 하나의 ID 제공 업체와 연결할 수 있지만 하나의 계정 (여러 명의 사용자가 Google 계정, Facebook 계정 등을 계정에 추가 할 수 있음)에 대한 지원을 추가해야한다는 요구 사항이 있습니다. 그는이 IdP 중 하나를 사용하여 우리 사이트에 로그인 할 수 있습니다.) 계정에 IdP를 추가하려면 먼저 주 IdP에 로그인해야합니다. 서열이 같다 :
- 사용자는 페이지를 로그인 한 IdP가 (예 : 구글)을 선택 간다 구글에 로그인 푸른 ACS는 프로필 페이지에서 인증
- 후 다시 사이트로 리디렉션, 사용자에 선택 추가 IdP 추가, IdP 선택 페이지로 리디렉션 됨
- 다른 IdP (예 : Facebook)를 클릭하고 Facebook에 로그인하면 Azure ACS가 우리 사이트로 리디렉션됩니다. (Azure ACS가 통과 한 Facebook의 모든 올바른 주장을 볼 수 있습니다. 우리의 사이트 등을 맞댄)
문제는 나는이 Facebook 요구를 추출하는 방법 확실하지 않다이다. 내가 사용하는 경우
HttpContext.Current.User.Identity 그것은 구글을 반환
Microsoft.IdentityModel.Claims.IClaimsIdentity
로