【问题标题】:PHP Zend OpenID provider and DotNetOpenAuth OpenID relying party errorPHP Zend OpenID 提供程序和 DotNetOpenAuth OpenID 依赖方错误
【发布时间】:2012-03-20 11:08:32
【问题描述】:

我已经使用 Zend 提供程序实现了 OpenID 提供程序,并使用 3rd 方存储更新了存储。它工作正常。

我在 PHP 中使用了来自 LightOpenID 的消费者,效果很好。

现在我尝试在http://www.dotnetopenauth.net 的帮助下创建另一个消费者(OpenIdRelyingPartyMvc),但出现此错误:

DotNetOpenAuth.OpenId.Messages.PositiveAssertionResponse 消息中缺少以下必需参数:openid.claimed_id

我能否举一些类似实施的例子,或者我能知道我可能出错的地方吗?

【问题讨论】:

    标签: openid dotnetopenauth


    【解决方案1】:

    openid.claimed_id 参数在 OpenID 2.0 中是必需的,但在 OpenID 1.1 中不需要。所以很可能你的 OpenID Provider (Zend) 只实现了 OpenID 1.1。由此我们可以得出几件事:

    1. 考虑将您的 OpenID Provider 升级到 OpenID 2.0。它更安全、更强大。
    2. 您的 Zend 提供程序发布的 OpenID 可能声称与 OpenID 2.0 兼容,而它们应该只声称与 1.1 兼容。 DotNetOpenAuth 在 1.1 和 2.0 上运行良好,但在伪装成 2.0 的 1.1 上却不是。

    如果您需要帮助了解 Provider 看似 2.0 但实际上是 1.1,请将指向您的 Provider 的链接或您的一个 OpenID 页面的内容(您向用户发布的 OpenID URL)添加到您的问题.

    【讨论】:

    • 谢谢安德鲁,我尝试使用 php-openId 作为提供者,dotnetopenauth.net 作为消费者,它工作正常。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多