firebase - 是否可以在登录用户中创建用户
问题描述
嗨,我有一个应用程序,它有用户和管理员。所以我已经定义了我在 Firestore 中的角色,并根据我获取页面的应用程序。在这里,用户和管理员都可以登录到同一个应用程序,但在配置文件功能中有一个管理页面的功能,这是我使用基于角色的访问权限的地方。在管理页面中,我尝试使用 FirebaseAuth.instance.createuserwithemailandpassword () 创建新用户。创建时必须将其添加到列表视图中。但是当我通过底部工作表添加新用户时,它会传递创建的用户 uid 并显示创建用户的详细信息。但是我需要的是在创建用户后登录而不是在登录时保持相同的详细信息?他有可能还是有办法做到这一点?
解决方案
当您使用客户端 SDK 在 Firebase 中创建新用户时,它会替换当前登录的任何用户。这是预期的行为,因为客户端 SDK 不适用于您所描述的管理活动。
如果您希望拥有可以为其他用户创建帐户的应用程序管理员,请考虑为他们创建自定义后端 API,然后使用 Admin SDK 创建帐户。这也大大降低了您遇到从单个 IP 创建帐户的配额问题的可能性。
另见:
- Firebase 踢出当前用户
- 如何在 java 中创建用于身份验证的firebase 管理员用户(其中包含更多类似问题的链接)
- 如何创建管理模块来管理 Firebase 用户的访问权限和角色
推荐阅读
- javascript - 如何根据角度的行内容在摩纳哥编辑器中打开上下文菜单
- spring-boot - 具有可变查询参数的 Spring Security pathMatchers
- jquery - 显示最后检查 + 两个(来自数组)
- python - 熊猫将文本附加到行中
- python - 匹配熊猫数据框中的日期时间 YYYY-MM-DD 对象
- java - 线程“Thread-2”中的异常 java.lang.NoSuchMethodError: kotlin.io.ByteStreamsKt.readBytes(Ljava/io/InputStream;) 用于 PACT 测试
- javascript - 使用反应上下文 api 从帮助函数显示加载器
- azure-devops - 基于 Azure Devops 中的特定状态冻结工作项的表单或页面上的所有字段的技术
- angular - Angular combineLatest:combineLatest 中允许多少订阅?订阅数量有限制吗?
- node.js - Node.js 中多人游戏的时机