1

Google を使用した認証に Spring-Security の Openid を使用しています。Google サーバーからメール ID を受信したい。だから私のspring-security.xmlで私は設定しました

<attribute-exchange>
    <openid-attribute name="email" type="http://schema.openid.net/contact/email" required="true" />
    <openid-attribute name="name" type="http://schema.openid.net/namePerson/friendly" />
</attribute-exchange>

今、私はそれを手に入れたいです。ドキュメントで次のコードを使用するように指示されていることを理解しています。

OpenIDAuthenticationToken token = (OpenIDAuthenticationToken)SecurityContextHolder.getContext().getAuthentication();
List<OpenIDAttribute> attributes = token.getAttributes();

このコードを使用して電子メール属性を取り出すためのコード スニペットを書いてくれる人はいますか?

4

1 に答える 1

0

OpenID サンプル アプリケーションのように、属性のリストを繰り返し処理して電子メール アドレスを見つけることができます。

別の方法として、サンプルをより厳密に追跡し、アプリケーションの他の場所にアクセスできるUserDetailsService特殊なインスタンスを作成するカスタムを使用することもできます。UserDetails

于 2013-07-05T17:55:48.310 に答える