Google Cloud Endpointsで別のOAuth2プロバイダを使用する方法はありますか?たとえば、Facebookからの認証を取得し、Google Account Auth(gapi jsを使用し、ユーザークラスを@ApiMethod
に設定)と同じ方法で使用します。別のoAuth2プロバイダを使用したGoogle Cloudエンドポイント
答えて
いいえ、私はこの質問とGoogleの人々(私が正しく覚えていれば)はエンドポイントのユーザー認証が現在のところGoogleアカウントのみをサポートしているということでした。
代替手段を実装する方法はありますか?セッションにユーザーを格納するのと同じですか? (私はちょうどそのセッションがGoogle Cloud Endpointでも動作しないことを発見しました) –
確かに、あなたが望む任意の方法を実装することができます。エンドポイント経由でシステムのトークンを渡すこともできますが、自分で認証を実装する必要があります。 – Tom
ここでの問題は、Google Endpointがセッションを提供していないため、ユーザーセッションを制御する方法です。 –
私は自分のアプリケーションによって生成されたいずれかのFacebookのアクセストークンを交換する例を書いて、エンドポイントのメソッド内から、それを検証する:
https://github.com/loudnate/appengine-endpoints-auth-example
あなたがあなた自身のAuthenticator
を実装し、@Api
構成を更新する必要があります。あなたはGoogle documentationで見つけることができるカスタム認証子について
public class MyAuthenticator implements Authenticator {
@Override
public User authenticate(HttpServletRequest request) {
String token = request.getHeader("Authorization");
if (token != null) {
// apply your Facebook/Twitter/OAuth2 authentication
String user = authenticate(token);
if (user != null) {
return new User(user);
}
}
return null;
}
}
そして、あなたのAPIの定義
@Api(name = "example", authenticators = {MyAuthenticator.class})
より:このanswerに基づいて、簡単なオーセンティケータは、次のようになります。
Google Cloud Endpointsを使用すると、User、HttpServletRequest、およびHttpServletContextをAPIメソッドにパラメータとして注入することができます。
それはのOAuth2ではないが、ここでソリューションの初めである: https://www.yanchware.com/custom-authentication-for-google-cloud-endpoints/
提案された解決策は、セッションにアクセスするために、特定のAPIメソッドでのHttpServletRequestを注入することです。
- 1. googleアプリケーションエンジンoauth2プロバイダ
- 2. 新しいGoogle+ログインを使用したAppengine Cloudエンドポイント
- 3. Google CloudエンドポイントとGuiceを使用したAppengine
- 4. Google Cloudエンドポイントが遅い
- 5. Google OAuth2 JavaScriptを使用したリフレッシュトークン
- 6. カスタム認証を使用するOAuth2プロバイダ
- 7. Googleプロバイダを使用したACS:エラー500
- 8. Google CloudのGPUを使用したTensorflow
- 9. GoogleエンドポイントPostメソッドを使用したOAuth
- 10. vmwareプロバイダを使用してsalt-cloudを使用したVMware Toolsのインストール方法
- 11. Pythonを使用したGoogle Cloud Storage
- 12. Google Cloud Storageを使用したGitラージファイルストレージ
- 13. Google Cloud DNSを使用したKubernetes
- 14. get_serving_urlを使用したGoogle Cloud Storage
- 15. Google Cloud PubSubエンドポイントをローカルでテストする
- 16. カスタムServiceStack OAuth2プロバイダ
- 17. ステートレススプリングセキュリティoauth2プロバイダ
- 18. OAUTH2プロバイダのブローカとしてKeycloakでREST APIを使用する
- 19. Google Cloudエンドポイント複数取得する
- 20. Google Cloud Platformサービスアカウントとキーファイルを使用した.NETのGoogleストレージ
- 21. Spring oauth2認可プロバイダ
- 22. 間違ったリダイレクションGoogle OAuth2を使用したUri
- 23. Tomcatを使用したGoogle Cloud Endpoint(Google App Engineではなく)
- 24. Google Cloud機能とGoogle Firebaseを使用したプッシュ通知
- 25. Google Play APIを使用したHTTPError 401とApp EngineのOAuth2
- 26. OAuth2ClientAuthenticationProcessingFilterを使用した春のブートによるGoogle Oauth2ログイン
- 27. PythonのOAuth2 with sudsを使用したGoogle Adwords API認証
- 28. Google Cloud Storageネットワークの使用
- 29. Google Cloud Platformコンピュートエンジンストレージの使用
- 30. Google Cloud Vision APIの使用
これを確認してください:http://stackoverflow.com/questions/18716674/facebook-login-in-google-cloud-endpoints/22495862#22495862 –