1

我需要在负载平衡的环境中实现 Open ID 的依赖方。

按照此处找到的建议,我尝试将 null 传递给 OpenIdRelyingParty 构造函数。结果在某种程度上不一致。

如果我使用 www.myopenid.com 作为提供者,它就可以工作。

如果我使用 www.claimid.com 作为提供者,我会得到以下异常:ProtocolException - No OpenID endpoint found。即使在非平衡环境(我的本地工作站)中, CreateRequest方法调用也会引发此异常。

知道我该怎么做才能使其对两个提供商都有效吗?

更新:

我尝试了以下方法,不幸的是它不起作用。

  1. 更新了 DotNetOpenAuth.OpenId.RelyingParty.UserController 中的OpenIdRelyingParty构造函数以使用 null 作为IRelyingPartyApplicationStore
  2. 运行示例
  3. 将 claimid.com/aarnott 传递给 OpenId 输入
  4. ProtocolException : 未找到 OpenID 端点。

如果我对OpenIdRelyingParty使用默认的无参数构造函数,则相同的示例有效。我在本地机器上运行了示例。

4

2 回答 2

2

我认为这整个ClaimID的事情无论如何都被打破了。我尝试了几次在那里注册,但是 a) 没有任何地方可以注册的链接 b) 即使尝试使用现有的 OpenID 登录也不起作用(在 myOpenID 中按“继续”后,我只是被转发到日志-再次在 ClaimID 页面中 => 无限循环)..

此外,ClaimID 博客 (blog.claimid.com) 的最后一篇文章是从 2 月 9 日开始的,并且谈到了付费版本等,所以我不会屏住呼吸,ClaimID 会在未来取得任何进展

于 2010-03-26T14:01:09.020 回答
2

www.claimid.com不是OpenID 2.0 提供者它仅支持 OpenID 1.1。因此,输入www.claimid.comOpenID 依赖方将不起作用(OpenID 1.1 不包括 identifier_select 功能,这是您想要做的)。您必须输入个人的 OpenID。尝试输入claimid.com/aarnott,它会工作得很好。

myopenid.com另一方面一个 OpenID 2.0 Provider,这就是为什么你看到它为你工作的原因。

于 2009-09-25T14:59:12.710 回答