首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何通过云函数HTTP请求检查Firebase规则用户权限

如何通过云函数HTTP请求检查Firebase规则用户权限
EN

Stack Overflow用户
提问于 2020-12-31 16:38:53
回答 2查看 85关注 0票数 0

我正在使用Firebase Cloud Functions并创建了几个HTTP请求。

为了对用户进行身份验证,我使用admin sdk验证ID toke。

代码语言:javascript
复制
const decoded = await admin.auth().verifyIdToken(`${tokenId}`);

有没有办法根据安全规则检查用户是否具有云函数的读/写权限,而无需手动检查云函数中的相同规则?

EN

回答 2

Stack Overflow用户

发布于 2020-12-31 18:49:51

有没有办法根据安全规则检查用户是否拥有云函数的读/写权限,而无需手动检查云函数中的相同规则?

  1. 云函数使用Firebase管理员Node.js SDK,因此它们以管理权限运行,并且完全绕过了安全规则。
  2. 云函数无法根据安全规则(实时数据库、Firestore或云存储)检查给定用户的授权。

<>G211>

结论:您需要在Cloud Function中实现逻辑,以便模拟您的安全规则。

请注意,Admin SDK提供了读取安全规则代码的可能性(请参阅文档here here),但是,您需要再次实现根据这些规则检查的业务逻辑。因此,它不会为您的特定情况带来任何帮助。

票数 1
EN

Stack Overflow用户

发布于 2021-01-01 00:56:03

您实际上可以通过在初始化Admin SDK时设置databaseAuthVariableOverride,让您的云函数以调用它的用户的身份访问实时数据库。有关这方面的完整详细信息,请参阅accessing the database with limited permissions from the Admin SDK上的Firebase文档。

此设置仅适用于实时数据库,因此如果您切换到使用Firestore,则必须按照Renaud回答的方式进行操作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65518533

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档