我使用谷歌云端点(版本1,使用android studio)为我的Android应用程序构建了一个移动后端.我希望通过电子邮件/密码验证我的用户,因此我使用Firebase身份验证来执行此操作.Firebase身份验证sdk允许我在客户端(在android中)获取每个用户的令牌,而firebase管理员sdk允许我检查后端令牌的有效性.我了解在云端点我可以提供自己的自定义身份验证器(请参阅:Google Cloud端点和用户身份验证),我计划在我的自定义身份验证器中调用firebase admin sdk来验证用户的呈现令牌.
我的问题是,因为我使用谷歌云端点来构建我的后端,我不知道在我可以验证任何令牌之前,在哪里插入代码来执行firebase管理对象的初始化.在常规应用程序引擎环境中,您将在HTTPServlet的init()方法中执行此初始化(请参阅https://github.com/GoogleCloudPlatform/firebase-appengine-backend/blob/master/src/main/java/com /google/cloud/solutions/flexenv/backend/MessageProcessorServlet.java),但云端点通过自动提供"SystemServiceServlet"作为HTTPServlet来隐藏此信息.我已经尝试了继承SystemServiceServlet并重写init()方法,但是然后将端点部署到app引擎失败了,因为显然,创建android客户端库要求必须使用SystemServiceServlet(并且必须将其命名为"SystemServiceServlet") ").
我可以在云端点提供的每个api方法中初始化firebase管理应用程序(例如,在我的api的insert方法中),但这看起来效率极低.如何在使用谷歌云端点构建的后端中使用Firebase管理员sdk?
非常感谢你花时间陪伴
google-app-engine android google-cloud-endpoints firebase-authentication firebase-admin
android ×1