将用户属性设置为 firebase-admin
Set user properties as firebase-admin
我有以下游戏角色创建流程,并在服务器上使用 firebase-admin 来验证数据,我遇到的一个问题是弄清楚如何在服务器上添加用户 属性,所以这里是想法:
- 认证用户发送字符数据到
/queue/create
- firebase-admin 服务器侦听此
/queue/create
中的更改
- firebase-admin 接收并验证角色的数据
- 如果成功 firebase-admin 将新角色数据推送到
/characters
- [想不通] firebase-admin 将 属性 添加到 user 就像这样
user.updateProfile({ character: /* id of character node created by firebase-admin */ })
这里的问题是我可以访问客户端上的用户,但不能访问我的管理服务器,是的,我可以在客户端设置它,但宁愿在服务器上保留这样的逻辑。我已经在步骤 1 中传递了 uid 和辅助字符数据,这也被添加到字符节点以进行进一步的安全验证。
编辑:写这篇文章时我想到了一个子问题,我们能否以某种方式处理用户更改他们自己的用户配置文件数据,因为我相信这是可能的?
如果您想将属性(也称为 "claims")添加到用户的个人资料,目前只有当您 mint your own tokens for that user 时才有可能。
对于标准提供商,您只能update the existing properties from the admin SDK。
您可以使用 updateUser()
方法从 Admin Node.js SDK 更新 Firebase Auth 用户的配置文件数据。
我有以下游戏角色创建流程,并在服务器上使用 firebase-admin 来验证数据,我遇到的一个问题是弄清楚如何在服务器上添加用户 属性,所以这里是想法:
- 认证用户发送字符数据到
/queue/create
- firebase-admin 服务器侦听此
/queue/create
中的更改
- firebase-admin 接收并验证角色的数据
- 如果成功 firebase-admin 将新角色数据推送到
/characters
- [想不通] firebase-admin 将 属性 添加到 user 就像这样
user.updateProfile({ character: /* id of character node created by firebase-admin */ })
这里的问题是我可以访问客户端上的用户,但不能访问我的管理服务器,是的,我可以在客户端设置它,但宁愿在服务器上保留这样的逻辑。我已经在步骤 1 中传递了 uid 和辅助字符数据,这也被添加到字符节点以进行进一步的安全验证。
编辑:写这篇文章时我想到了一个子问题,我们能否以某种方式处理用户更改他们自己的用户配置文件数据,因为我相信这是可能的?
如果您想将属性(也称为 "claims")添加到用户的个人资料,目前只有当您 mint your own tokens for that user 时才有可能。
对于标准提供商,您只能update the existing properties from the admin SDK。
您可以使用 updateUser()
方法从 Admin Node.js SDK 更新 Firebase Auth 用户的配置文件数据。