【问题标题】:Questions about openid and dotnetauthentication关于openid和dotnetauthentication的问题
【发布时间】:2011-01-12 22:19:59
【问题描述】:

我正在研究 openid 和 dotnetauthentication 库。不过,我仍然有一些悬而未决的问题。

  1. 返回的 id 对每个用户来说都是唯一的吗?我可以将此id作为userId存储在数据库中吗(目前此字段是主键和唯一标识符)

  2. 我了解到您可以尝试索取电子邮件地址等信息,但您可能不会将其提供给您。如果您需要这些信息会怎样?

如果我必须立即弹出另一个字段并询问他们的电子邮件地址和我需要的任何其他字段,我认为这有点糟糕。似乎有点违背了目的,因为我一直认为 openid 的一个好处是您不必填写注册表单。

  1. 最好只有一些预定义的选项(google、yahoo、openid、facebook)。然后让他们输入他们自己的(即灰色字段让他们输入一个网址)。

我正在考虑这个问题,因为如果他们输入的提供者没有提供我需要的信息,那么它会回到第 2 点,然后我就会被卡住。

  1. 如何注销用户?你只是杀死表单身份验证票吗?

【问题讨论】:

    标签: openid dotnetopenauth


    【解决方案1】:

    ClaimedIdentifier 是您应该与每个用户关联并在用户返回时用于查找的唯一 ID。它并不像某些人认为的那样“不断变化”。如果您有 Google 用户并且您的域名曾经更改,是的,您从 Google 获得的声明 ID 将会更改。所以不要改变你的域名(或者更具体地说,你向 Google 报告的“领域”),你会没事的。

    一些用户和一些提供商不想交出他们的电子邮件地址。最好的方法 (IMO) 是您不要坚持让用户给您一个电子邮件地址,而是在他们想要在您的网站上做一些您需要电子邮件地址的事情时要求它。如果提供商为您提供了一个电子邮件地址(并且如果您已经完成了所有正确的事情,它可能会这样做),那么您可以跳过该步骤。如果他们不这样做,那么您的情况不会比使用 OpenID 之前更糟。但说真的,在我看来,OpenID 的最大卖点并不是它预先填写了注册表单。这是因为它使您的用户更加安全。

    请参阅Is OpenID Worth It? 了解有关此问题的讨论。

    【讨论】:

      【解决方案2】:

      Rob Conery 有一篇很棒的博文,从第一手经验和经验教训中探索了 Open ID 的主题。博客 cmets 包括来自 Jeff Atwood (Stack Overflow) 和其他人的反馈。对于没有接触过 Open ID 的技术资源来说,这是一本很好的读物。

      Open ID Is A Nightmare -- Rob Conery

      【讨论】:

      • 哇,那篇文章让我不想使用 openid。似乎更痛苦然后它是值得的。我的意思是,如果 id 不断变化,你到底是如何为该用户提取信息的?
      • 这是一种观点。一个真正的,但仍然只是一个。
      猜你喜欢
      • 2020-05-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-21
      • 1970-01-01
      • 2011-01-16
      • 2019-10-01
      • 1970-01-01
      相关资源
      最近更新 更多