マイセットアップ:GoogleのApp Engineは、上述のエンドポイント用に生成されたクライアントライブラリを含む Firebaseトークン検証でGoogle Cloud Endpoints APIを保護するにはどうすればよいですか?
- のJavaバックエンド。また、認証とデータベース用にFirebaseと統合されています。
モバイルクライアントアプリケーションのユーザーは、Firebase認証を使用してモバイルアプリにログインし、次にバックエンドAPIのいずれかに接続して処理を行い、次に読み取りますFirebaseデータベースとの間でデータの書き込みや書き込みができます。
サーバにAPIを保護するために、Firebase Server SDKの組み込みverifyIdToken()メソッド(FirebaseのVerifying ID Tokensを参照)を使用して、クライアントから渡されたユーザのIDトークンをデコードする必要があると思います応用。 verifyIdToken()は非同期で実行されるため、GAEのAPIメソッドとどのように統合しますか? 、ONFAILUREを
@ApiMethod(name = "processAndSaveToDB", httpMethod = "post")
public Response processAndSaveToDB(@Named("token") String token) {
Response response = new Response();
// Check if the user is authenticated first
FirebaseAuth.getInstance().verifyIdToken(idToken)
.addOnSuccessListener(new OnSuccessListener() {
@Override
public void onSuccess(FirebaseToken decodedToken) {
String uid = decodedToken.getUid();
// do bulk of processAndSaveToDB() method
})
.addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(Exception e) {
// throw unauthorized exception
});
return response;
}
App Engine Flexible EnvironmentまたはApp Engine Standard Environmentを使用してこれを達成しましたか? – gbhall