스프링 사회 통합은 3 부분으로 구성됩니다.
- 가입 가입에
로컬 사용자가 공급자에 의해 제공되는 정보에 기초
- 연결이
우리가 오픈 아이디 사용자 로그인 절차를 우리에
- 로그인 완료
로컬 사용자 매핑 연결하여 생성된다 openId 인증 된 사용자가 응용 프로그램에 로그인 할 수있게합니다.
로그인
로그인시 SigninAdapter
은 로컬 사용자를로드하여 스프링 보안 레이어가 사용할 수 있도록합니다. 여기서 localUserId
매개 변수는 애플리케이션의 사용자 ID를 가리 킵니다. 따라서 어댑터에서이 사용자를 org.springframework.security.core.userdetails.User
으로로드하고 SecurityContext
으로 설정해야합니다.
예 :
LocalUser lu = getLocalUser(localUserId); // Load the local user from database
User user = new User(lu.username, lu.password, lu.authorities)
UsernamePasswordAuthenticationToken result = new UsernamePasswordAuthenticationToken(user, user.getPassword(), user.getAuthorities());
SecurityContextHolder.getContext().setAuthentication(result);
연결
봄 사회 공급자 오픈 아이디 사용자에게 로컬 사용자를 연결하는 데 도움이됩니다 org.springframework.social.connect.web.ConnectController
.
POST
요청을 /connect/<provider>
에게 보내야합니다. 사용자가 응용 프로그램을 autherize해야하는 공급자의 로그인 페이지로 리디렉션됩니다.
예 .thx. 하지만 사용자가 이미 내 로그인 시스템으로 로그인 한 경우 어떻게 연결 부분을 사용할 수 있습니까? –
연결 파트가 어떻게 작동하는지 알고 싶습니까? –