首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >只使用电子邮件登录Firebase (没有链接,没有密码)

只使用电子邮件登录Firebase (没有链接,没有密码)
EN

Stack Overflow用户
提问于 2021-09-17 18:04:36
回答 1查看 26关注 0票数 0

前言:没有什么安全的东西是用这个来存储的--这是我的一个测试项目,看看什么是可能的,什么是不可能的。

我一直在扫描文档,寻找一种方式(在网站上)用他们的电子邮件来登录用户,而不需要他们进入收件箱获得一个auth链接或输入一个密码。

这在技术上有可能吗?

我所想到的一种潜在的黑客方式是有一个隐藏的密码字段,每个用户都有相同的密码,并通过Javascript预先填充。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-09-17 19:03:17

从技术上讲,正如你所描述的那样,这是可能的。如果你对此很满意,你可以为所有用户使用相同的密码,让他们在注册和登录时输入电子邮件。你甚至不需要把它藏在某些领域。只需将其作为明文放在代码中:

-registration

代码语言:javascript
复制
import { getAuth, createUserWithEmailAndPassword } from "firebase/auth";

const auth = getAuth();
createUserWithEmailAndPassword(auth, email, "yourPassword")
  .then((userCredential) => {
    // Signed in 
    const user = userCredential.user;
    // ...
  })
  .catch((error) => {
    const errorCode = error.code;
    const errorMessage = error.message;
    // ..
  });

-login

代码语言:javascript
复制
import { getAuth, signInWithEmailAndPassword } from "firebase/auth";

const auth = getAuth();
signInWithEmailAndPassword(auth, email, "yourPassword")
  .then((userCredential) => {
    // Signed in 
    const user = userCredential.user;
    // ...
  })
  .catch((error) => {
    const errorCode = error.code;
    const errorMessage = error.message;
  });

通过使用fetchSignInMethodsForEmail,您可以检测用户是否已注册,并在后台自动完成此操作,因此您的用户只需输入电子邮件,不管他们是否有bin在您身边。对于新老用户来说,UX也是一样的。

警告:从技术上讲,这样做是可能的。我和其他人都建议你不要这么做。有人可以使用相同的密码从ppl获取用户数据,只要知道他们是电子邮件或做其他有害的东西,你的项目。

也许你可以向我们解释你为什么要这么做,也许我们可以为你找到一个bette解决方案。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69227801

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档