有什么理由不使用OpenID?

时间:2009-01-03 23:32:59

标签: security web-applications openid

你对OpenID有一点看法(无论如何都是Geek社区)。这似乎是一个好主意。我正在开发一个网站,针对的是一些不太讨厌的观众(但也不是妈妈和流行音乐节目),所以我不得不怀疑OpenID对某些观众来说是否“太难”了。

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

17 个答案:

答案 0 :(得分:71)

说一般人不理解OpenID可能有些不准确。

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

但问题是,对于普通用户来说,整个OpenID体验与他们认为的在线安全性相反。

  • 用户不会自动信任

    通过正常的用户名/密码登录,用户可以理解密码应该保密,这就是在他们登录网站时保护其隐私的原因。他们如何理解OpenID客户端站点与其OpenID提供商之间的交换?他们所知道的只是他们没有输入密码(假设他们“总是登录”他们的OpenID提供商) - 所以它不安全,对吧?我的意思是,在用户眼中,如果他们没有提供密码,怎么能安全?这可能会导致用户不信任。

  • 它使网络钓鱼变得容易

    (很多)用户知道为不同的帐户重复使用相同的密码是错误的,但这似乎正是OpenID正在做的事情。如果用户只是假设他们的所有OpenID提供商正在做的是与所有参与网站共享他们的密码怎么办?我的意思是,OpenID如何在所有这些网站上“登录”?如果用户认为通过OpenID,所有参与的OpenID站点都知道他们的密码,他们可能会认为将密码提供给任何这些站点是相当合理的。这是一个网络钓鱼的噩梦。想象一下,将这句话放在您的网站上:“请输入您的(某些OpenID提供商)用户名[]和密码[]”。你已经在钓鱼了。

    我们也不能忘记,即使出于一个略微不同的原因,用户在某种意义上也会正确:如果某人获得了对其OpenID提供商的访问权限,则他们可以访问他们在使用该身份的所有网站上的身份,这与在多个网站使用相同密码的情况相同。

  • 与用户理解的内容相差太多

    在不同站点拥有多个用户名/密码对用户来说并不难理解。用户很好地理解用户名和密码的概念,因为他们已经习惯了这些概念,而且安全点(密码是秘密的事实)对他们来说非常明显。密码的工作方式非常清楚。拥有多个用户名和密码组合并不会使这更令人困惑或复杂 - 它只是一样的东西,但不止一个。虽然记住多个密码可能很困难,但用户至少知道如何执行以及它是如何工作的。

    OpenID试图解决记住多个密码的问题,但在此过程中它创建了一个全新的范例,一个对用户完全不透明的范例。与密码不同,密码的安全性很明显(它必须是秘密的),OpenID的所有安全性都在幕后进行,网站彼此通信,密钥和散列等。用户不再完全了解他们的隐私受到保护或者对谁保密,因为他们不了解系统的运作方式。因此,为了解决记住多个密码的问题,OpenID创建了一个神秘的密钥交换系统,违反了用户对身份验证工作方式及其安全性的全面理解。

答案 1 :(得分:45)

普通用户仍然不了解OpenId是什么,它是什么,或者如何使用它。例如,我的父母无法登录Stack Overflow。

话虽如此,这主要是关于用户界面。没有什么可以阻止他们使用OpenId - 他们只需要一个用户界面从他们那里抽象掉OpenId,然后让他们用他们的Google帐户登录(例如)。

答案 2 :(得分:19)

OpenID非常容易受到网络钓鱼攻击。如果您运行OpenID站点,请尝试在某天更改登录页面以请求标识符密码,而不是仅请求标识符并重定向到OpenID提供程序以请求用户密码的常规方法。我打赌你可以通过这种方式获得用户密码的四分之一。

答案 3 :(得分:12)

是的安全。使用OpenId会使您受到管理其帐户的怜悯。您无法控制密码安全性和用户ID。您信任其他组织,以验证访问您网站的人是否是他们所说的人。如果你需要真正确认某人是他们所说的人。如果不自行进行某种二次验证,您将无法获得open id。在这种情况下你也可以不使用OpenId。

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

答案 4 :(得分:9)

这出现了很多。

一条好规则:

  

如果您需要收集并保留   私人个人身份识别   信息,请勿使用OpenID。

     

如果您不需要收集和保留   私人个人身份识别   信息,继续并提供OpenID   作为登录的方法。

对于电子商务或您需要遵守PCI / DSS认证的任何其他地方,我不会使用OpenID。

我不介意SO只是OpenID,但我不会创建一个专门使用它的网站。

答案 5 :(得分:6)

  1. 界面很糟糕。

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

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

    ℃。这种解决方案有更好的接口。例如,我使用KeePass。

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

  3. 安全性非常糟糕。

    一个。它鼓励像网络钓鱼一样的行为。它没有“Visa验证”那么糟糕,但它很接近。

    湾单点故障:如果您丢失任何内容,就会丢失所有内容。 KeePass至少允许我在物理上保护密码(您必须拥有加密数据库的硬盘驱动器)它)。

    ℃。跨站点跟踪。信用卡公司实际上已制定规则来管理他们允许的跟踪量。在现代浏览器中可以选择性地禁用或阻止Cookie。 OpenID没有规则也没有管理者。

  4. 实际上并不普遍。 Google提供OpenID ...但不使用。雅虎也是如此。对于美国在线。 OpenID提供商没有动力允许使用其他提供商的OpenID。

  5. OpenID对身份验证非常有用,但授权非常有用,尤其适用于任何敏感信息(例如信用卡)。

  6. 就我个人而言,我在每个站点使用一个登录名/密码,并且我使用KeePass(我可以在物理上保护并且必须使用两层必须破解的密码)来维护一次登录,以便随处可见。< / p>

    包括StackOverflow:我专门为你们创建了一个OpenID 我不会在其他任何地方使用它。我这样做了,而且我忍受登录痛苦,因为内容很有吸引力。

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

答案 6 :(得分:5)

OpenID仍然与其他所有基于密码的身份验证方法一样不安全。实际上,情况更糟,因为如果有人访问您的OpenID,他们现在拥有的不仅仅是那个帐户。当然还有网络钓鱼攻击,但我们都是精明的程序员,数据库和系统管理员,所以我们不会因此而堕落,对吗?

身份验证安全性基于信任。正如其他人指出的那样,为什么您会相信第三方可能存在敏感信息?当然,您可以自己设置一个OpenID服务器,但与多个系统上的单独密码相比有多少麻烦?当然,您可以创建长且充满非字母数字字符的安全密码,甚至将它们全部存储在密码管理器中(我这样做),但有些网站存在缺陷,因为可以填写简单的密码恢复表单以获取访问重置密码。

如果它确实安全的基于私钥的身份验证,SSH或PGP,我可能倾向于支持甚至传播OpenID。也许这是一个提供这种方法的提供者的问题 - 我还没有研究过它。

最后,虽然我们都信任OpenID足以使用它来对Stack Overflow进行身份验证,但我的OpenID是一个“一次性”,并且它不像我正在使用它作为专业的声誉构建工具(即,我的真名字是参与;-))。我确定我不是唯一一个(这个网站很酷很棒!)。

答案 7 :(得分:3)

如果所有网站都使用它,OpenID就很好。 但要注册OpenID只是为了使用一个网站,它有点太多了。注册OpenID并不像在网站上直接注册那样简单(从消费者的角度来看)。

答案 8 :(得分:3)

今天我遇到了一篇文章,该文章对于跳过OpenID的人来说是一个非常强有力的案例,来自最初热衷于它的人。

  

打开ID是一场噩梦

     

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

在此处阅读其余内容:http://www.wekeroad.com/2010/11/17/open-id-is-a-party-that-happened/

这不是我的故事,所以我没有把它归功于它。

答案 9 :(得分:3)

阅读本主题对我来说很有趣,它完全反映了我对OpenID的体验:

StackOverflow.com对我来说是获得OpenID的原因 许多谷歌搜索引导我访问这个网站,我无法发表评论 我想过多次注册,但我没有因为OpenID而注册。我不清楚它究竟是什么。
但有一天,我决定注册并花了一段时间,但我并不后悔,因为我每天都在使用它。它给了我一种更安全的感觉,虽然我知道它只是一个帐户,如果它被钓鱼会导致许多问题。

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

答案 10 :(得分:2)

这是正常注册的补充,但如果它是登录您网站的唯一方式,则不是很容易使用。查看stackoverflow上的注册 - 特别提到所有站点,以帮助人们了解这是什么。这个网站是极客:)  所以减去是复杂性。

另见this link

答案 11 :(得分:1)

如果您的网站需要高级别的安全性,则您不希望将登录凭据的处理留给外部提供商,而外部提供商无法控制访问权限。如果OpenID提供程序被黑客入侵,那么您就会将安全保护权交给他们。

答案 12 :(得分:0)

我很惊讶有人使用Stack Overflow无法想到不使用OpenId的理由 - 因为它太烦人了吗?!

Ted Dziuba在ripping into OpenId方面比我做得好得多,所以只读他写的内容。

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

在某些时候,我认为Facebook可以使Connect成为OpenId提供商......但实际上,他们为什么要这样做呢?

答案 13 :(得分:0)

据我所知,看起来OpenID提供商似乎不需要提供帐户持有人的电子邮件地址,尽管有些人会这样做。

如果您的服务需要电子邮件地址与其用户进行通信(例如,发送简报 - 许多从未听说过RSS的人更喜欢),那么您可能需要捕获OpenID并验证电子邮件地址。

只需要一个电子邮件地址和密码并使用激活电子邮件消息的系统对用户来说就不那么重要了。

答案 14 :(得分:0)

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

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

-

但openid有很好的想法,我喜欢用它!

答案 15 :(得分:0)

您拥有的OpenID帐户提供商(google,yahoo,twitter等)的数量等于您可以自动用于登录OpenID驱动的网站的帐户数量。这当然不是一个优势,但它可能是一个很大的劣势。

答案 16 :(得分:0)

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