我的firebase应用程序有一个注册用户列表。这些都是通过Email& amp;密码验证。
我想将firebase数据和用户列表转移到另一个firebase应用程序。
传输firebase数据非常简单,但是如何转移注册用户并保留他们的uid?
这可能吗?如果可行,最好的方法是什么?
答案 0 :(得分:12)
您应该使用Firebase管理工具。
您可以使用以下命令安装管理工具:
npm install -g firebase-tools
导出命令,生成 AllUsers.json 文件:
firebase auth:export AllUsers.json --project projectId
在另一个帐户上,使用以下命令导入生成的文件。
firebase auth:import AllUsers.json --project projectId
答案 1 :(得分:4)
刚从Firebase支持部门获得此信息:
就在最近,Firebase推出了新的API供下载 您的Firebase Auth用户。要将用户迁移到其他Firebase或从其他用户迁移 项目,您可以使用这个新的CLI auth:export工具 在Github。有关详细信息,请查看我们的Firebase文档。 此外,我们为导入/导出制作了guide 您项目的用户。
答案 2 :(得分:0)
上面的答案不能自行解决,因为来自先前项目的所有密码都将具有不同的密码散列。因此,在导入新用户时,您需要指定新哈希。
单击此菜单项,将显示执行firebase auth:import命令所需的所有设置。这是我看到的:
hash_config {
algorithm: SCRYPT,
base64_signer_key: <long string of random characters>,
base64_salt_separator: <short string of random characters>,
rounds: 8,
mem_cost: 14,
}
然后我可以成功执行命令
firebase auth:import ./users.json --hash-algo=scrypt --rounds=8 --mem-cost=14 --hash-key=<long string of random characters> --salt-separator=<short string of random characters>
How to set hash-key option for auth:import after default auth:export in firebase?