3

こんにちは皆さん、私は Spring-Social についてよく読みましたが、質問があります。このIDを取るSignInAdapterのsignInメソッドのパラメータ「userLocalId」は何ですか? 登録フォームで情報を取得して、Facebook経由でユーザーを登録します。この後、彼に signIn_button(facebook signIn) を押して、私のサイトにアクセスしてもらいたいです。

このようなことをする必要があります: SignInAdapter で Facebook に接続し、そのソーシャル情報をユーザー テーブルのフィールドと比較しますか?

4

1 に答える 1

3

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>

于 2012-06-27T03:33:39.913 に答える