如何将 Firebase 身份验证与 Google 应用引擎端点集成

2024-05-06

我正在为移动应用程序编写一个后端服务器。 后端在谷歌应用程序引擎上运行并用Java编写。

我希望用户能够使用联合身份(例如 facebook)登录。

我看到谷歌通过 firebase 身份验证支持移动应用程序的这种身份验证。将 firebase 身份验证与我当前的应用程序引擎端点集成的最佳方式是什么?

我已经使用云平台的数据存储,不想使用 firebase 数据库,只使用身份验证方法。

Thanks.


我也在寻找这个问题的答案。到目前为止我最好的 5c 是

  • 使用 FireBase 从控制台设置登录方法等
  • 使用适用于 Web 的 FireBase UI(测试版)或适用于 iOS/Android 的“联合身份提供商集成”来设置身份验证流程
  • 检索您的 Web/iOS/Android 客户端上的令牌/身份验证详细信息,并将其传递到您的云端点,例如 HTTP 请求标头
  • 将 javax.servlet.http.HttpServletRequest 注入到端点方法中(只需添加一个参数,Google 就会自动注入请求对象)
  • 创建一个方法,您的端点将为每个请求(需要身份验证)调用该方法,该方法将处理您作为 HTTP 请求标头传递的凭据的验证
  • 使用 FireBase Java SDK 调用 FireBase 来验证凭据(为此,您需要从 Firebase 控制台导出 json 配置)并使用它们加载 SDK,例如在您的 servlet 之一中:
@Override
    public void init(ServletConfig config) {
        try{
        InputStream in = config.getServletContext().getResourceAsStream("/WEB-INF/firebase-privatekey.json");
        FirebaseOptions options = new FirebaseOptions.Builder()
                .setServiceAccount(in)
                .setDatabaseUrl("YOUR_DATABASE_URL")
                .build();
        FirebaseApp.initializeApp(options);
        log.info("Authentication enabled");
        }
        catch(Throwable t) {
            t.printStackTrace();
            log.warning("AUTHENTICATION DISABLED. Only public resources will be available");
        }
    }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将 Firebase 身份验证与 Google 应用引擎端点集成 的相关文章

随机推荐