2009-07-29 4 views
5
  1. Как я могу сделать мой домен Google Apps быть OpenID провайдер. Есть ли какая-нибудь документация, учебник, рабочий пример?Служб Google домена в качестве поставщика OpenID

  2. Как проверить подлинность пользователей в моем приложении с помощью проверки подлинности домена Google Apps (я имею в виду без OpenID). Я слышал, что это что-то вроде gdata api, но я не знаю с чего начать. Есть ли Полезно учебники howtos или примеров?

Я хотел бы узнать о бесплатных решениях с открытым исходным кодом.

ответ

6

Вы не должны делать ничего , чтобы сделать ваш домен Служб Google поставщик OpenId. НО, специальная служба Google OpenID для приложений для доменов требует, чтобы доверяющие стороны OpenID реализовали специальный (запатентованный) механизм обнаружения, и большинство RP-систем еще не [пока]. Итак, если вы тестируете это, это не сработает.

Один из способов тестирования - перейти к OpenID RP, который использует RPXNow. RPX является одним из тех RP, которые do принимают новый механизм обнаружения Google. Например, jyte.com. Попробуйте войти в систему.

+1

Это уже не так. Бесплатные клиенты не получают openid, и вам нужно явно включить его. Из http://code.google.com/googleapps/domain/sso/openid_reference_implementation.html: «Примечание. Служба федеративного входа отключена по умолчанию для Google Apps Premier и учебных изданий. Администратор домена может включить его с панели управления на странице http://www.google.com/a/cpanel/ /SetupIdp. " – Leopd

3

Служба поддержки пользователей OpenID выглядит как место для начала. Он основан на OpenID и позволяет пользователям регистрироваться на вашем сайте с помощью своего идентификатора Google Apps. Похоже, что он не поддерживается версией Google Apps Standard.

http://code.google.com/apis/apps/sso/openid_reference_implementation.html

Существует также Single Sign-On рамки, которая не использует OpenID, который может быть ответом на # 2.

http://code.google.com/apis/apps/open_source_projects.html#sso

4

Regardin вопрос номер 1, я работал над этим в течение последних нескольких дней.

Проверьте это здесь: How do you delegate your OpenId to Google Apps

Оказывается Google не допускает делегирование, поэтому вы не можете просто поставить мета информацию в заголовке документа. Я считаю, что вам нужно создать файл с именем yourdomain.com/.well-known/host-meta, который указывает на файл XRDS на сервере Google. Это объясняется лучше на the discovery API page. Извините, это все жаргон, но я не знаю, как иначе это объяснить.

Для Google федеративной OpenID тестирования попробовать: http://www.puffypoodles.com/

вопрос делегации лучше в the Google group for the OpenID federated login API.

Что касается вопроса номер 2, то API-интерфейс федеративного входа обеспечивает доброту OAuth, поэтому вы можете использовать информацию о пользователе и использовать токены аутентификации и т. Д. Проверьте API-интерфейс федеративного входа.

Надеюсь, что это поможет.

0

Множество людей размещено об OpenID, поэтому я отвечу на ваш второй вопрос.

ClientLogin - это API, которым вы пользуетесь.

http://code.google.com/googleapps/domain/gdata_provisioning_api_v2.0_developers_protocol.html#client_login

Обратите внимание, что ссылка выше от API предоставления дока, но это не зависит от доступа к API Предоставления, это именно там, где эта информация теперь живет.

Много примеров на разных языках.

Предостережения:

  • нет единого входа для этого
  • Google будет любить Вас (они пытаются убить ClientLogin)
  • вы получите случайные сбои Captcha и придется иметь дело с теми,