2016-11-21 16 views
0

私はWebサービスの残りの部分を実装しており、現時点ではセキュリティ上の作業をしています。SpringセキュリティOauth2 in Rest API

このWebサービスは、Springブートを使用して実装されました。最初はAndroidアプリとウェブアプリとしてクライアントを用意しますが、今後このAPIを公開することを考えていますので、この問題についても考える必要があります。

私は春のセキュリティのOAuth2について多くの研究が、二つの疑問基本的にはありました:

  • 私がこれまで見てきたすべての例では、サーバーがにリダイレクトするWebアプリケーションのクライアントを、使用しているが、 URLの認証。 Android Appでこの認証はどのように行われますか?結局のところ、私はリダイレクトするためにAndroidのHtmlで作業していません。

  • 私のクライアントは、Facebookのログインを使用する必要があります。ユーザーは、アプリ内から共有することができます。当初私は、この認証を実行し、後でそれを私のサーバーに送信するという責任をクライアントのクライアントが果たしている可能性について考えました。私はSpring Socialよりも実用的だと思っています。これは可能ですか?

ご利用いただきありがとうございます。ご使用のアーキテクチャのヒントをお待ちしております。

答えて

0

可能性の1つは、keycloakのようなフェデレーションID管理システムを使用することです。 Keycloakには、春だけでなくAndroid用のアダプターも用意されています.OAUTH2を完全にサポートしており、FacebookをIDプロバイダとして使用する可能性があります。 これは、ほとんどの場合必要と思われる多くの機能が既に存在するため、多くの利点があります。一方、それは大きな話題なので、セットアップ全体を生き生きとさせるためには時間がかかることに注意してください。キークローキングをホストし、AndroidアプリとあなたのWebアプリケーションのクライアントを設定し、AndroidアプリケーションとWebアプリケーションの両方にキークローンアダプタを導入し、最後にFacebookをIDプロバイダとして設定する必要があります。

EDIT:

が見hereを持って、これは有望と思われます。一般的に、私はfacecookやAndroidにkeycloakを統合していないことを認めなければなりません。私たちはSpringブートとJava EEアプリケーションを保護するためにそれを利用しています。私は、統合においてこれに深く関わっていました。また、手でOAUTH2をAndroidで実行する可能性もありますseeHereはfacebookの統合を行う方法の例です。私はこれが助けて幸運を願っています;)

+0

返信いただきありがとうございました。私はKeycloackを勉強しています。私はその解決策を知らなかった。優れた解決策のように聞こえる。認証しているAndroidクライアントからのリンクの例がありますか? Facebookのログインを考慮して、タイムラインでの共有はどうすればできますか? –

+0

ありがとうございます。私の問題を解決! –

関連する問題