2017-04-13 1 views
0

여러 응용 프로그램의 경우 중앙 집중식 계정 솔루션을 만들고 싶습니다. 핵심은 일부 ASP.NET 핵심 웹 응용 프로그램으로 구성됩니다. 그러나 Wordpress, GitLab 또는 XAMPP/HipChat 서버와 같은 타사 응용 프로그램도 포함하고 싶습니다. 내 목표 : 사용자가 하나의 계정을 생성합니다.이 계정은 모든 해당 응용 프로그램에서 사용할 수 있습니다. 많은 응용 프로그램이이 프로토콜을 지원하므로 LDAP 서버가 가장 적합합니다. 이것은 또한 나중에 추가 된 다른 응용 프로그램에 대한 유연성을 제공합니다.페이스 북과 같은 소셜 로그인을 LDAP 디렉토리에 통합

여기에서 문제는 사용자가 일반적인 소셜 사이트, 특히 Facebook을 사용하여 인증 할 수 있어야한다는 것입니다. 그것의 상태는 대화 속도를 증가시킬 것이고, 그것은 사용자에게 더 쉽다.

페이스 북과 같은 사회적 로그인 공급자를 ApacheDS와 같은 LDAP 서버에 통합 할 수 있습니까?

Facebook에서 알 수 있듯이 Facebook은 사용자의 신원을 확인하기 위해 응용 프로그램에서 사용할 수있는 일종의 인증 토큰을 생성합니다. 내 사용자 지정 웹 응용 프로그램에서는 아무런 문제가 없습니다. 그러나 예를 들어 XAMPP 서버,이 작동하지 않는 것 : LDAP 사용자 이름/암호가 필요합니다. 그러나 나는 페이스 북 토큰 만이 사용 가능하기 때문에 이것을 가지고 있지 않다. LDAP 서 v는 이것을 속성에 저장할 수 있습니다. 그러나 이것은 LDAP 바인드의 암호 대신이 토큰을 점검해야합니다.

반면에 LDAP 서버를 삭제하고 ASP.NET 핵심 ID와 같은 일부 프레임 워크를 사용하면 큰 문제는 아닙니다. 문제는 여기 있습니다. 타사 응용 프로그램에이 로그인을 사용할 수 없습니다. 이는 사용자가 예를 들어 사용자에 대한 추가 계정을 요구할 것이다. XAMPP, Wordpress 등등. 큰 혼란을 빚어 내게되어 나를 대신 할 수는 없습니다.

소셜 지원을 취소하면 작동합니다. 이러한 로그인은 최신 기술이므로 페이스 북 또는 이와 유사한 제공자가있는 SSO 솔루션을 기대하는 젊은 사용자를 대상으로하고 있습니다.

답변

1

Facebook (및 기타 소셜 로그인 사이트)은 OAuth라는 프로토콜을 사용하여 인증합니다. 아마도 가장 쉬운 해결책은 LDAP를 백엔드로 사용하는 OAuth 서버를 직접 구현 한 다음 로그인의 두 번째 방법으로 페이스 북 로그인 아래에 추가하는 것입니다.

사용자가 페이스 북을 통해 LDAP에 로그인하는 것을 추가하지는 않지만 일반적으로 Facebook (또는 해당 토큰을 제공 한 사람)에 대해 확인해야하는 OAuth 토큰 (사용자 이름 일 필요는 없음) 그것을 "암호 대체"로 사용하려고 노력하지 않습니다.

관련 문제