我可以基于实例ID设置Firebase数据库规则吗?



我是Firebase数据库的新手,我不打算使用Firebase身份验证。

是否可以基于Firebase实例ID设置Firebase数据库规则,而不是在身份验证的用户ID上?

这是我正在考虑实施的结构:

/instanceIDs
    /iid1
         /somedata
         /someotherdata
    /iid2
         ...
    /iid3
         ...

我想将读/写入仅限于该特定实例ID

任何人都可以显示如何设置这样的规则?

否则,如果我设置/写入true to to to t true to t true,那么安全风险是什么?如果我的本机移动应用程序代码仅在特定实例ID分支上读取/写入/写入,我可以期待一些安全问题吗?

使用Firebase Cloud Messaging的应用程序ID标识该特定设备上该特定应用程序的安装。该值在Firebase安全规则中不可用。

虽然听起来是一个有趣的想法,可以基于此实例ID进行保护,但长期它将不起作用。实例ID可以随着时间而变化,每次发生的设备都将失去对其数据的访问。

访问Firebase(数据库和存储(通常基于应用程序的用户。与实例ID不同,用户的ID随时间稳定:这意味着同一用户将始终具有相同的UID,因此可以访问相同的资源。如果您不想要求用户登录,则可以使用Firebase的匿名身份验证。

ps:如果您想尝试使用实例ID来保护访问权限,则可以轻松地将实例ID传递给服务器,铸造Firebase身份验证令牌(您可以为此使用云功能(,然后使用签名的自定义令牌。

相关内容

  • 没有找到相关文章

最新更新