有什么理由不使用OpenID?

你可以看到一些(在Geek社区里)关于OpenID的。 这似乎是一个好主意。 我正在开发一个网站,将针对一个不那么怪异的观众(但不是太妈妈和stream行音乐),所以我不知道OpenID是否会对一些观众“太难”。

你怎么看? 除此之外,还有没有其他技术或非技术原因不使用OpenID?

普通用户仍然不明白OpenId是什么,用途是什么,如何使用它。 例如,我的父母将无法login到堆栈溢出。

这就是说,这主要是关于用户界面。 没有任何东西阻止他们使用OpenId,他们只需要一个用户界面,将OpenId从他们中抽象出来,并让他们用他们的Google帐户login(例如)。

说普通人不懂OpenID可能会有些不准确。

在大多数情况下,通过一点点有说服力的营销(即“使用一个login所有网站!11!),他们可以理解,它允许他们login网站使用一个login,而不是有一堆不同的用户名和密码不同的网站。

然而,问题在于,对于普通用户而言,整个OpenID体验与他们认为的在线安全性是背道而驰的。

  • 用户不会自动信任它

    使用正常的用户名/密码login,用户明白密码应该保密,这就是当他们login网站时保护他们的隐私。 他们如何理解OpenID客户端站点与OpenID提供者之间的交换? 他们所知道的是,他们不需要input密码(假设他们在他们的OpenID提供程序中“始终login”),所以它不安全,对吧? 我的意思是,在用户眼中,如果他们没有给密码,怎么能保密呢? 这可能会导致用户不信任。

  • 它使networking钓鱼变得容易

    (许多)用户知道重复使用相同的密码用于不同帐户是错误的,但这看起来正是OpenID正在做的事情。 如果用户只是假设他们所有的OpenID提供者正在做的是与所有参与站点共享密码? 我的意思是,OpenID如何能够在所有这些网站上“login”? 如果用户通过OpenID假定他们的密码对于所有参与的OpenID网站都是已知的,他们可能会认为将这个密码发送给任何这些网站是相当合理的。 这是一个networking钓鱼的恶梦。 想象一下把这句话放在你的网站上:“请input你的(一些OpenID提供者)用户名[]和密码[]”。 你已经在钓鱼了。

    我们也不要忘记,即使有一个稍微不同的原因,用户也会他们的怀疑是正确的 :如果有人能够访问他们的OpenID提供者,他们可以在他们已经使用过的所有站点上访问他们的身份身份,这在多个站点使用相同的密码是相同的缺点。

  • 它与用户理解的偏离太多

    在不同的网站上有多个用户名/密码对于用户来说是不难理解的。 用户很好地理解了用户名和密码的概念,因为他们已经习惯了这些用户名和密码,并且安全的angular度(密码是一个秘密)对他们来说是非常明显的。 密码的工作方式非常清楚。 拥有多个用户名和密码组合并不会使这个问题变得更加复杂或复杂 – 这只是同一个问题,但却不止一个。 虽然记住多个密码可能是困难的,用户至less知道如何做到这一点,以及如何工作。

    OpenID试图解决记住多个密码的问题,但是在这个过程中,它创build了一个全新的范例,这个范例对用户来说是完全不透明的。 与安全性显而易见的密码不同,OpenID的所有安全性都是在幕后进行的,网站之间相互通信,密钥和散列等等。用户不再完全理解他们的安全隐私正受到保护,或者由谁保密,因为他们不明白系统是如何工作的。 因此,为了解决记住多个密码的问题,OpenID创build了一个神秘的密钥交换系统,这违反了用户对authentication如何工作以及为什么安全的理解。

OpenID非常容易受到networking钓鱼的攻击。 如果运行OpenID站点,请尝试在一天之内更改login页面以请求标识符密码,而不是通常的方式,只请求标识符并redirect到OpenID提供程序以请求用户的密码。 我敢打赌你可以通过这种方式获得用户密码的四分之一。

是的安全。 使用OpenId会让他们处于pipe理他们账户的状态。 您无法控制密码安全性和用户标识。 您正在相信其他一些组织来确认访问您网站的人是他们所说的人。 如果你需要真的确认某个人是他们所说的那个人。 如果没有进行某种二次validation,您将无法使用公开的身份validation。 在这种情况下,你可能只是不使用OpenId。

http://www.computerworld.com/s/article/9179224/Researchers_Password_crack_could_affect_millions

这出现了很多。

一个很好的规则:

如果您需要收集和保存私人个人身份信息,请勿使用OpenID。

如果您不需要收集和保存私人个人身份信息,请继续提供OpenID作为login方法。

对于电子商务或其他需要遵守PCI / DSSauthentication的地方,我不会使用OpenID。

我不介意这是完全的OpenID,但我不会使一个网站,专门使用它。

  1. 界面很糟糕。

    一个。 注册OpenID需要更多的时间和精力。 正常的注册只需要很less的时间或精明。 注册只发生一次,但这是一个很大的前期投资,所以网站必须非常引人注目。

    湾 login涉及:三个数据而不是两个; 两个网页,而不是一个(实际上StackOverflow三个); 和一个外部网站。 每次。

    C。 这种解决scheme有更好的接口。 例如,我使用KeePass。

  2. 名称冲突。 没有办法确保唯一的名字。

  3. 安全是可怕的。

    一个。 它鼓励类似networking钓鱼的行为。 它不像“Visavalidation”那样糟糕,但是非常接近。

    湾 单点失败:如果你失去了一切,你会失去一切。 KeePass至less允许我在物理上保护密码(你必须拥有带有encryption数据库的硬盘)。

    C。 跨网站跟踪。 信用卡公司实际上已经制定了规定多less跟踪他们允许做的规定。 在现代浏览器中可以select禁用或阻止Cookie。 OpenID没有规则,也没有总督。

  4. 这实际上并不普遍。 Google提供OpenID …但不使用它们。 雅虎也一样。 而对于美国在线。 OpenID提供商不允许使用来自其他提供商的OpenID。

  5. OpenID对于身份validation非常有用,但不适用于授权,特别是对于任何敏感的信息(例如信用卡)。

对我个人而言,我使用一个login/密码每个站点,我使用KeePass(我可以保护身体和两层密码必须破解),以维护一个login到处抽象。

包括StackOverflow:我为你们创build了一个OpenID 我永远不会在其他地方使用它。 我这样做了,我忍受了login的痛苦,因为内容是令人信服的。

但是,如果一个真正的 auth方法曾经为StackOverflow提供过,那么我会跳过它,只是为了方便使用。

OpenID与其他所有基于密码的身份validation方法一样不安全。 事实上,情况更糟糕,因为如果有人访问您的OpenID,他们现在不仅仅是一个帐户。 当然,也有钓鱼攻击,但我们都是精明的程序员,数据库和系统pipe理员,所以我们不会因此而陷入困境,对吧?

身份validation安全性基于信任。 正如其他人指出的,为什么你会信任第三方潜在的敏感信息? 当然,你可以自己build立一个OpenID服务器,但是在多个系统上维护单独的密码有多麻烦? 当然,你可以创build一个安全的密码,这个密码很长,而且是非字母数字字符,甚至把它们全部存储在一个密码pipe理器中(我这样做),但是有些网站有缺陷,可以填写一个简单的密码恢复表单来获得访问重置密码。

如果确实可以保护基于私钥的身份validation(la SSH或PGP),我可能会倾向于支持并传播OpenID。 也许这是提供这种方法的提供者的问题 – 我还没有研究过它。

最后,虽然我们都信任OpenID足以使用它来在堆栈溢出进行身份validation,我的OpenID是一个“一次性”,它不像我使用这个作为一个专业的声誉build设工具(即,我的真实姓名不涉及;-))。 我敢肯定,我不是唯一一个(就像这个网站一样酷炫!)。

如果所有网站都使用OpenID,那么OpenID是很好 但要注册到OpenID只是使用一个站点,这是有点太多了。 注册OpenID并不像在网站上直接注册(从消费者的angular度)。

阅读这个主题很有趣,它反映了我的OpenID经验:

StackOverflow.com是我得到一个OpenID的原因。
许多谷歌search引导我到这个网站,我从来没有留下评论。
我想过很多次注册,但是我没有因为OpenID而注册。 我不清楚它到底是什么。
但有一天,我决定注册,花了一段时间,但我不后悔,因为我每天都在使用它。 虽然我知道这只是一个帐号,如果被钓鱼,会导致很多问题,这让我感觉更安全。

所以对于我来说,OpenID是一个非常好的方式来快速login我不知道的网站,但也在更大的网站,如StackOverflow.com
主要的问题是需要将新用户推入注册过程,然后发现OpenID实际上有多棒。

我今天遇到了一篇文章,这个文章对于OpenID来说是一个非常有力的案例,而这个案例最初是对这个问题感兴趣的。

打开ID是一场噩梦

我一直是Open ID的主要支持者。 我喜欢这个想法和意图 – 这对于一个长期存在的问题来说是一个很好的解决scheme,为开发人员解决了很多问题。 不幸的是,它为企业主创造了更多。

阅读其余的在这里: http : //www.wekeroad.com/2010/11/17/open-id-is-a-party-that-happened/

这不是我的故事,所以我没有为此付出任何代价。

这是正常注册的补充,但如果它是login到您的网站的唯一方法,则不太容易使用。 看看在stackoverflow注册 – 所有网站都特别提到,以帮助人们了解这是什么。 而这个网站是为极客:)所以减去是复杂的。

也看到这个链接

如果您有一个需要高度安全性的站点,您不希望将您的login凭证的处理留给无法控制访问的外部提供者。 如果OpenID提供者遭到黑客入侵,那么你的安全就是他们的安全。

在使用OpenID时,每个人都可以将我在一个站点上执行的操作连接到我在其他站点上执行的操作,因为在任何地方都是一样的。 所以我不会使用这里用于色情网站的相同ID。

有一个原因是有一个帐户,使所有访问的原因很多。 如果这是妥协,你遇到麻烦。

如果你正在设置一个使用openid的页面,那么你应该知道每个人都可以设置一个openid服务器(垃圾邮件发送者也可以这么做)。

但openid有好点子,我喜欢用它!

我很惊讶有人使用堆栈溢出不能想到不使用OpenId的原因 – 因为它是讨厌的地狱?!

Ted Dziuba在OpenId方面做得比我更好,所以请阅读他写的东西。

另一个很好的理由 – Facebook Connect似乎已经做得很好。 随着Facebook的成员数量不断增长,Facebook Connect的支持将会更有价值。

在某种程度上,我想Facebook可能会使Connect成为一个OpenId供应商…但是真的,他们为什么要这么做呢?

据我所知,看起来OpenID提供商不需要给出账户持有人的电子邮件地址,尽pipe有些人可以。

如果您的服务需要一个电子邮件地址与其用户进行通信(例如,发送一个通讯 – 许多人从来没有听说过RSS),那么您可能需要捕获一个OpenID并validation一个电子邮件地址。

一个仅需要电子邮件地址和密码并且使用激活电子邮件消息的系统对于用户而言是较less的工作。

您拥有的OpenID帐户提供商(Google,Yahoo,Twitter等)的数量等于您可以自动用于loginOpenID的网站的帐户数量。 这当然不是一个优势,但可能是一个很大的缺点。