验证 ID 令牌:使用此 Firebase 检查的工作流程是什么?

Verify ID Tokens: What is the workflow to use this Firebase checkment?

几个月前,Doug Stevenson 告诉我使用专用于 "ID Tokens verification" 的 Firebase 检查:https://firebase.google.com/docs/auth/admin/verify-id-tokens

我已经阅读了文档。我的理解是:当 Android 应用程序向服务器宣布时,我无法信任它 (Firebase Firestore Rules, Firebase Firestorage Rules, Cloud Functions)用户,因为它可以使用一个现有的 ID 而不是它自己的实际 ID 并公布它。所以我必须使用文档中提出的令牌系统。

我也理解的是:我必须在用户成功登录后立即获取令牌。然后我将它发送到服务器,然后它 "checks it"。但是然后……什么?好的,服务器检查它。 但是这个检查的结果,服务器应该怎么处理呢?

我是否应该在每次调用 Android 应用到服务器?

示例:

直接写入 Firestore 或 Cloud Storage 时,用户无法假装发送自己以外的 UID。只要您的安全规则检查正确,就不会有问题。在 documentation 中有这方面工作原理的示例。使用安全规则控制访问时无需验证任何 ID 令牌 - 这一切都是自动处理的。

您使用 Firebase Admin SDK 在您的客户端应用程序直接调用 HTTP 类型函数的位置验证令牌,并且该函数需要确保只有有效用户才能执行代码。客户端将用户的令牌与请求一起发送,如您链接的文档中所示,后端代码应在代表用户执行任何工作之前验证令牌。确实没有必要尝试在任何其他类型的 Cloud Function 中传递 ID 令牌。