Spring Social Integration には 3 つの部分があります。
- サインアップ サイン
アップでは、プロバイダーから提供された情報に基づいてローカル ユーザーが作成されます。
- Connect
connect では、ローカル ユーザーを openID ユーザーにマッピングします。
- Signin
signin openId で認証されたユーザーがアプリケーションにログインできるようにします
サイン
イン サインインはSigninAdapter
、Spring Security レイヤーが使用できるようにローカル ユーザーをロードするために使用されます。ここで、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);
ローカル ユーザーを openId ユーザーにリンクするのに役立つ
Spring Social Providers を接続します。にリクエスト
を送信する必要があります。これにより、ユーザーはプロバイダのログイン ページにリダイレクトされ、そこでユーザーはアプリケーションを認証する必要があります。org.springframework.social.connect.web.ConnectController
POST
/connect/<provider>