【问题标题】:Firebase Installation auth tokens validation from Firestore Rules来自 Firestore 规则的 Firebase 安装身份验证令牌验证
【发布时间】:2021-05-22 14:05:31
【问题描述】:

我想要一个只能由特定 Firebase 安装访问的 Firestore 集合。例如,

/MyPrivateInstallationCollection/{FirebaseInstallationID}

根据文档,存在 Firebase 安装身份验证令牌,但它们与 Firebase 身份验证令牌不同。 https://firebase.google.com/docs/projects/manage-installations#retrieve_auth_tokens

在 Firestore 安全参考文档中,没有安装 ID 的踪迹。 https://firebase.google.com/docs/reference/rules/rules.firestore.Request

是否可以使用 Firestore 安全规则中的 Firebase 安装令牌?

如何验证 FIS 身份验证令牌?它们应该如何使用?

【问题讨论】:

    标签: firebase google-cloud-firestore firebase-authentication firebase-security


    【解决方案1】:

    安装 ID 不会自动包含在用户的身份验证令牌中。

    如果您想在身份验证令牌中包含安装 ID,您可以在受信任的环境中使用 Admin SDK set it as a custom claim

    或者,您可以包含从 UID( 包含在身份验证令牌中)到其安装 ID 的映射,然后在您的安全规则中检查该映射。请记住,一个用户可以拥有多个设备,因此在您的数据结构中允许每个 UID 有多个安装 ID。

    【讨论】:

    • 我想没有办法验证特定安装是否正在执行某些操作,对吧?我的意思是,唯一的方法是拥有一个云功能并将安装令牌发送到那里并在那里验证它。
    • 或者将其写入数据库,正如我在答案的最后一部分中描述的那样。
    猜你喜欢
    • 2019-07-02
    • 2019-01-20
    • 1970-01-01
    • 2022-07-16
    • 1970-01-01
    • 1970-01-01
    • 2021-07-23
    • 1970-01-01
    相关资源
    最近更新 更多