我有一个现有的客户机,它调用服务器,服务器又调用
https://identitytoolkit.googleapis.com/v1/accounts:signInWithPassword
这样,客户端通过HTTPS向服务器(以及服务器向Firebase)发送一个未散列的密码。
我想在客户端对密码进行salt/hash。我可以自由地使用Firebase使用的相同算法。但我没有看到向Firebase发送散列密码的方法。当然,我有一些现有的用户,他们不会因为这次迁移而失去访问权限。
要登录到Firebase Authentication的电子邮件/密码提供者,您必须通过安全连接以明文形式发送密码。这是无法改变的。
以明文形式发送密码没有安全风险,因为安全连接是端到端加密的,所以只有能够看到数据的双方已经可以访问它了。如果有人可以拦截数据并解密它,这意味着他们可以访问您的安全连接的证书,这是一个更大的安全风险。
如果你想用另一种形式的密码登录,唯一的方法就是在Firebase Authentication之上实现你自己的自定义提供商。