Gmail Contextual Gadgets и шаги аутентификации OpenID

Я пытаюсь понять правильную последовательность шагов, выполняемых Gmail при загрузке и аутентификации контекстного гаджета. Одна из причин (есть и другие) заключается в том, что я хочу знать, могу ли я сделать гаджет манифестом за аутентификацией Open ID, чтобы только аутентифицированные пользователи могли вытащить гаджет в Gmail.

Я не видел никакой документации по этому вопросу. Вот как я думаю, что это работает... (где mysite.com является проверяющей стороной openID).

Пользователь: нажимает на почту в Gmail Входящие Gmail: Загрузить почту. Извлечь манифест гаджета из mysite.com/gadgets/gadget.xml MySite: вам необходимо пройти аутентификацию для доступа к гаджетам /gadget.xml Gmail: вот OpenID пользователя MySite: вот гаджеты /gadget.xml Gmail: "рисует" содержимое гаджета на контекстная область письма

Пожалуйста, поправьте меня, если это не так

2 ответа

Решение

Ну, я думаю, что ответ на мой вопрос здесь: http://code.google.com/googleapps/marketplace/best_practices.html

Согласно этому, не существует неявной аутентификации OpenID. Вы несете ответственность за то, чтобы сделать это с помощью osapi.http.get.

Я считаю, что так оно и работает:

  1. Администратор устанавливает ваше приложение, и вы можете использовать SSO для получения OpenID администратора.
  2. если вы хотите использовать двухстороннюю OAuth, чтобы получить доступ ко всем пользователям в домене, вы можете сделать это тоже (хотя я еще не заставил это работать)
  3. Когда пользователь в этом домене загружает ваш гаджет, вы можете использовать: osapi.http.get, который добавит open_social_id к запросу на ваш сервер.
  4. теперь у вас есть opensocialid, который вы можете проверить, есть ли в вашей системе пользователь с этим open_social_id, если нет, то вы можете выполнить тот же процесс аутентификации OpenId, который вы выполнили на шаге 1 для администратора, но на этот раз вы связываете Open Social Id с OpenId, который вы получаете в процессе аутентификации
  5. теперь каждый раз, когда пользователь загружает ваш гаджет, вы можете просмотреть его открытый социальный идентификатор и определить, что он уже авторизован.
Другие вопросы по тегам