최근 OpenID Connect 표준을 발견했습니다. 이제는 OpenID Connect 표준을 사용하는 올바른 방법을 찾는 데 어려움을 겪고 있습니다.OpenID Connect 유스 케이스
그럼 인증 된 사용자의 개념이 있어야하는 꽤 표준 웹 앱을 만들고 있다고 가정 해 보겠습니다. 그래서 내 첫번째 의도는 사용자 ID, 이메일, 먼저 & 성, 패스워드, 소금 등을 포함하는 사용자 테이블을 가진 로컬 DB를 구축하는 것입니다. 이것은 가입, 로그인, 변경/삭제와 같은 모든 관련 기능을 구현해야한다는 것을 의미합니다. 암호를 잊어 버리십시오.
대신 OpenID를 사용하고 다른 곳에 저장된 사용자 정보 (예 : Google)를 사용합니다.
그런 다음 일반적인 OAuth2 마법을 수행하여 사용자를 리디렉션하고 동의를 요청할 수 있습니다.
이 시점부터 시작하면 트랙이 느슨합니다. Google (또는 다른 AS)이 기본 사용자 정보 (이메일, 이름, 전화)로 백엔드 앱 ID 토큰을 반환 한 후 나는 무엇을해야합니까? 이 필드에서 채워진 로컬 사용자 DB (암호없이)가 있어야합니까? 이 경우 OpenID Connect는 멋진 자동 가입 절차 일뿐입니다. 세션과 로그 아웃은 어떻게 처리합니까? 사용자가 이전 버전을 저장 한 상태에서 Google 사이트에서 휴대 전화를 변경하면 어떻게됩니까?
웹에서 OpenID Connect 관련 기사를 많이 읽었지만 토큰을 얻는 과정에서 기본 흐름을 설명하는 것처럼 보입니다. 그래서 나는 앞으로의 단계에 대해 혼란스러워합니다.
이 문제에 대한 힌트/조언을 보내 주시면 감사하겠습니다.
Q2 : 특히 OpenID Connect Dynamic Registration을 제공하는 업체가 많을 경우 사용자에게 단일 로그인 기회를 제공합니다. – fiddur
Q4 : 정기적으로 공급자로부터 userinfo를 다시 검사 할 수있는 옵션이있어서 사용자는 모든 사이트에서 동일한 정보를 업데이트 할 필요가 없습니다. – fiddur
@fiddur 사실, 최종 사용자에게는 상당한 이점이 있습니다. 나는이 두 가지 점을 업데이트하여 사용자 관점에서의 이득을 언급 할 것이다. 감사. –