使用其他网络帐户登录帐户实现


Login account implementation with other networks account

我目前正在考虑使用 php+mysql 实现登录系统,它没有任何大问题。

但是,我注意到,目前越来越多的网站不仅使用自己的登录系统(实际上,其中一些是删除自己的登录系统),而是使用不同的社交网络登录系统(推特,脸书,谷歌...就像堆栈溢出一样)。

有人可以解释一下这些的利弊是什么吗?如果使用其他登录,他们是从Facebook获取数据(例如使用facebook登录)还是仅将其用作登录名,以证明某人是真正的人类......?

(如果有人可以提供一些php示例:),那就太好了)

OpenID

stackoverflow.com 使用OpenID。Jeff Atwood(作者stackoverflow)甚至有一篇文章解释了 stackoverflow.com 为什么使用OpenID。但对我(也是杰夫·阿特伍德)来说,这些(社交)登录最重要的属性是:

  • 我不必再存储(可能不安全)密码,并且用户需要记住的身份(密码)将更少。
  • 即使密码暴露,它也只需要在一个/那个位置而不是一百个位置更改密码,或者它必须足够聪明,不会为每个站点使用相同的密码,但是记住密码会非常困难。

举个例子,我建议你阅读我关于OpenID的答案。

这是一个复杂的问题。为您的访问者创建另一个帐户很麻烦,对他们来说,使用 Janrain Engage(这是最好的 IMO)要容易得多。但是,您正在查看信任问题,使用相当复杂的协议等。另一方面,创建另一个帐户变得非常麻烦,所以请不要这样做,除非您有一个结帐流程,您可以更轻松地要求输入密码 - 在任何情况下都不要要求用户名,除非您真的,真的必须,电子邮件地址应该永远足够。