PHP Zend OpenID провайдер и DotNetOpenAuth OpenID ошибка проверяющей стороны - PullRequest
1 голос
/ 20 марта 2012

Я реализовал OpenID Provider с Zend-провайдером и обновил хранилище сторонним хранилищем. Работает нормально.

Я использовал потребитель из LightOpenID в PHP, и это прекрасно работает.

Теперь я попытался создать другого потребителя (OpenIdRelyingPartyMvc) с помощью http://www.dotnetopenauth.net,, но я получаю эту ошибку:

В сообщении DotNetOpenAuth.OpenId.Messages.PositiveAssertionResponse отсутствовали следующие обязательные параметры: openid.claimed_id

Могу ли я привести какой-нибудь пример для реализации подобного рода или у меня есть подсказка, где я могу ошибаться?

1 Ответ

0 голосов
/ 21 марта 2012

Параметр openid.claimed_id требовался в OpenID 2.0, но не в OpenID 1.1. Поэтому, скорее всего, ваш OpenID Provider (Zend) реализует только OpenID 1.1. Из этого мы можем извлечь несколько вещей:

  1. Рассмотрите возможность обновления вашего поставщика OpenID до OpenID 2.0. Это более безопасно и способно.
  2. OpenID, с которыми сталкивается ваш Zend Provider, вероятно, претендуют на совместимость с OpenID 2.0, когда они должны претендовать только на совместимость 1.1. DotNetOpenAuth отлично работает с 1.1 и 2.0, но не с 1.1, который претендует на то, что 2.0, но это не так.

Если вам нужна помощь в понимании того, как провайдер выглядит как 2.0, но на самом деле он равен 1.1, добавьте к вашему вопросу либо ссылку на вашего провайдера, либо содержимое одной из ваших страниц OpenID (URL-адрес OpenID, который вы выдаете пользователю). .

...