我正在尝试为firebase设置登录过程 . 我将使用客户端用户创建(因为很明显firebase只允许客户端用户创建),这就是我的工作流程:
-
用户通过电子邮件和密码注册
-
服务在/ users / $ uid以及其他几个(即/ table1 / $ uid,/ table2 / $ uid)创建一个条目
-
用户可以在路径/ users / $ uid,/ table1 / $ uid等处写入数据库,其中$ uid =当前登录用户(这是通过规则完成的)
但是,对于2号,我想创建条目/ users / $ uid,但我不希望用户完全访问它 . 有没有办法做到这一点?我想到的一个选项是在节点服务器上运行具有所有r / w权限的服务帐户来创建这些表,但是如果我正在执行所有auth客户端,我将如何调用该服务器方法?
1 回答
在第1步之后,
您的客户端代码可以通过firebase.user.getToken()获取当前登录用户的Firebase令牌
您的客户端应用程序将令牌发送到您的节点服务器
节点服务器使用Firebase服务器SDK验证令牌
服务器从token.uid中提取用户ID .
现在,您可以继续步骤#2为用户创建表 .