借助新的 Firebase 云功能,我决定将部分 HTTP 端点移至 Firebase。 一切都很好......但我有以下问题。我有两个由 HTTP 触发器(云函数)构建的端点
- 用于创建用户并返回自定义 token 的 API 端点 由 Firebase Admin SDK 生成。
- 用于获取某些用户详细信息的 API 端点。
虽然第一个端点很好,但对于我的第二个端点,我只想为经过身份验证的用户保护它。意思是拥有我之前生成的 token 的人。
我该如何解决这个问题?
我知道我们可以使用云函数中获取 Header 参数
request.get('x-myheader')
但是有没有办法像保护实时数据库一样保护端点呢?
最佳答案
官方有code sample为了你想做的事。它说明了如何设置 HTTPS 函数以要求授权 header 以及客户端在身份验证期间收到的 token 。该函数使用 firebase-admin 库来验证 token 。
此外,如果您的应用能够使用 Firebase 客户端库,您还可以使用“callable functions ”来简化此样板文件的大部分工作。
关于firebase - 如何保护 firebase Cloud Function HTTP 端点以仅允许经过 Firebase 身份验证的用户?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42751074/