【问题标题】:can i import csv with real password to firebase authentication我可以将带有真实密码的csv导入firebase身份验证吗
【发布时间】:2020-05-24 01:30:39
【问题描述】:

我想将多个用户与预定义密码添加到 Firebase 身份验证项目

我知道可以使用哈希密码来完成,但在我的情况下,我有真正的密码而不是生成的哈希密码

我可以用户 firebase auth:import 使用 realpassword 上传还是有什么方法可以使用我的项目哈希参数将真实密码转换为哈希密码??

例如

【问题讨论】:

    标签: firebase firebase-authentication firebase-cli


    【解决方案1】:

    您可以使用 SHA256 散列并导入这些用户。这是 Node.js 中使用 Admin SDK 的示例:

    import * as crypto from 'crypto';
    const importOptions = {
      hash: {
        algorithm: 'SHA256',
        rounds: 1,
      },
    };
    // For every user, you generate the password hash and a salt.
    const currentRawSalt = generateRandomSalt();
    const computedPasswordHash = crypto.createHash('sha256').update(currentRawSalt + yourUserPlainPassword).digest();
    importUserRecord = {
      uid: yourUserUid,
      email: youUserEmail,
      passwordSalt: Buffer.from(currentRawSalt),
      passwordHash: computedPasswordHash,
    };
    admin.auth().importUsers([importUserRecord], importOptions)
      .then((result) => {
        // Check result to confirm success.
      });
    

    【讨论】:

      【解决方案2】:

      无法使用纯文本密码进行导入。您必须生成密码哈希才能导入它们。有很多散列选项,所有在importing users with the Admin SDK 上的文档中都有描述。

      【讨论】:

      • 有没有办法使用项目哈希参数将纯文本转换为哈希
      • 我链接的文档中解释了所有散列选项。由于该页面还解释了“在成功登录时,Firebase 使用内部 Firebase 哈希算法重新哈希用户的密码”,因此您的数据只是允许用户首次登录 Firebase 的初始哈希值。之后,Firebase 将使用自己的哈希算法。
      【解决方案3】:

      我做了以下工作

      我将所有用户数据存储在 Excel 表中

      然后我循环输入工作表数据并为每一行调用注册方法

      【讨论】:

        猜你喜欢
        • 2021-05-12
        • 2019-02-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-11-26
        • 2019-11-12
        • 2010-11-04
        • 2016-05-19
        相关资源
        最近更新 更多