我是否可以使用客户端登录中的Firebase ID令牌来使用Java SDK对Java桌面应用程序进行身份验证?

问题描述 投票:0回答:1

Google的Cloud Firestore可以通过原生SDK由iOS,Android和Web的CLIENT应用程序访问。

对于SERVER,除了REST和RPC API之外,Cloud Firestore还可以在本机Node.js,Java,Python和Go SDK中使用。其中,Java和Node SDK能够监听数据库中的更改(截至2018年3月)。

我想在Java CLIENT桌面应用程序中使用Cloud Firestore。

正如我所说,Java Server SDK可以监听数据库更改,但是它使用身份和访问管理(IAM)对用户进行身份验证,而Client SDK使用Firebase身份验证进行身份验证。我必须使用Firebase身份验证进行身份验证,以便使用Cloud Firestore安全规则保护数据库。

我的问题是:我想将用户登录到其中一个Firebase客户端SDK(Web,iOS或Android),然后将该登录的ID令牌发送到我的Java桌面应用程序。然后,我想使用该令牌验证Java SDK,从而限制使用Cloud Firestore安全规则进行访问。

那可能吗?怎么样?

java firebase firebase-authentication google-cloud-firestore firebase-admin
1个回答
1
投票

服务器上使用的Firebase Admin SDK不支持单个用户登录。您可以看到与身份验证here相关的功能列表。简而言之,它不适用于最终用户应用程序,只是对客户端应用程序的后端支持,其中用于初始化它的凭据完全隐藏且最终用户无法访问。

您永远不会发送使用Admin SDK编写的客户端应用程序,该SDK还要求您提供服务帐户凭据以对其进行初始化。服务帐户凭据就像root密码 - 永远不会将它们提供给任何人,除了那些您信任且完全访问所有内容的人。

© www.soinside.com 2019 - 2024. All rights reserved.