从 Web 服务器使用 Firebase 安全规则

Using Firebase Security Rules from a web server

是否有任何 Firebase Node/JS SDK 支持代表用户从节点服务器或云功能(例如 nextjs、remix)调用 Firestore,尊重经过身份验证的用户的安全规则并支持会话多个同时用户?


用例:

我有一个设置了 Firebase 安全规则的移动应用程序。我想从服务器端 Web 应用程序提供相同的数据,而无需在 Web 服务器上重新实施 Firebase 安全规则并保持它们同步。

例如如果用户通过 id 请求 post,而 Firebase 规则阻止他们访问该特定 post,我希望 Firebase 告诉我这一点,并让 Web 服务器将 403 状态转发给用户.


更多信息:

我读了this:

If you are developing a Web or Node.js application that accesses Cloud Firestore on behalf of end users, use the firebase Client SDK.

这表明这应该是可能的,但我的理解是:

对吗?是否有任何其他方式可以代表来自 Web 应用程序的经过身份验证的用户执行操作?

我唯一能想到的就是 REST API... https://firebase.google.com/docs/firestore/use-rest-api

Do any of the Firebase Node/JS SDKs support making calls to Firestore from a node server or cloud functions (e.g. nextjs, remix) on a users behalf, respecting security rules for the authenticated user and supporting sessions for multiple simultaneous users?

不,后端 SDK 总是绕过安全规则。只有您在客户端应用程序中使用的 Web 和移动 SDK 会使用用户先前 sign-in.

提供的身份验证令牌

你可以考虑使用REST API instead since it allows you to pass through a client auth token。由您手动管理该令牌的转移。