2013-02-11 2 views
1

Я создаю сайт, на котором люди из организации будут входить в систему со своими учетными записями Служб Google. Сайт использует стандартный пример кода OpenID для DATNetOpenAuth для аутентификации с помощью поставщика Google OpenID.Конечная точка Google Apps для OpenID дает ошибки, но стандартная конечная точка Google с учетной записью Apps работает - что дает?

OpenID включен на этом домене Служб Google, но при попытке аутентификации пользователя с помощью https://google.com/accounts/o8/site-xrds?hd=domain.com конечной точки, я получаю следующее сообщение об ошибке:

Error occurred while sending a direct message or getting the response.

Однако если я использую стандартную https://www.google.com/accounts/o8/id конечной точки и войдите в мою учетную запись Google Apps, она работает!

Почему тот же аккаунт Google Apps производит два разных результата:: один конечный пункт работает, другой не удается аутентифицироваться должным образом?

ответ

1

Google Apps не соответствует протоколу OpenID 2.0. Он имеет собственный механизм обнаружения, который DotNetOpenAuth не включен по умолчанию.

Откажитесь от the sample from SourceForge в файле проекта проекта OpenIdRelyingPartyWebFormsGoogleApps.aspx. Вы увидите, что его код заставляет добавлять Google Apps в класс OpenIdRelyingParty. Если вы сделаете это, я думаю, что это сработает и для вас.

Смежные вопросы