OpenID и Google.GData.AccessControl.dll в C #

Я разрабатываю веб-сайт для использования OpenId, и Google является одним из основных поставщиков, которых я выбрал. Я бы хотел использовать Календарь и контакты Google (возможно, документы) в качестве резервного хранилища для каждого отдельного пользователя. Другими словами, если пользователь на моем сайте хочет иметь доступ к списку контактов, календарю и т. Д., Он должен зарегистрировать свою учетную запись Google. Затем они могут добавлять / редактировать / удалять что угодно, поскольку это их информация. (И да, у меня есть конкретная идея, куда я собираюсь, просто нужно выяснить, как привязать OpenID к GData.)

Кто-нибудь писал о связи между OpenID / OAuth и использованием API Google?


person Keith Barrows    schedule 22.04.2011    source источник


Ответы (2)


После долгого изучения этой проблемы у меня есть 2 способа решить эту проблему.

  1. Используйте OpenID и в профиле пользователя попросите их ввести свои учетные данные Google (работает, но не лучшее решение)
  2. Используйте OAuth. Для этого необходимо зарегистрировать свой домен в Google и получить ключ для использования с OAuth. После того, как вы это настроите, легко получить доступ к хранилищам данных конечного пользователя в Google.

Взгляните на OAuth 1.0 для веб-приложений от Google.

Также посмотрите OAuth-OpenID: вы лаете не на то дерево, если думаете, что это одно и то же, чтобы получить хороший обзор OpenID и OAuth.

person Keith Barrows    schedule 10.06.2011
comment
какое-либо окончательное решение с полным образцом исходного кода, работающим над этим? - person Kiquenet; 27.12.2013

Вы смотрели DotNetOpenAuth? Это позволит вам подключиться к любому провайдеру открытой аутентификации, который поддерживает OpenID, и Google является одним из провайдеров, перечисленных на страницу OpenID.

Кто-нибудь писал о связи между OpenID / OAuth и использованием API Google?

Я не уверен, что вы имеете в виду ... если вы спрашиваете, есть ли библиотека, которая позволяет вам использовать вашу учетную запись Google как OpenID, тогда да: DotNetOpenAuth. Есть некоторые уловки, см. ответ Эндрю Арнотта к этому вопросу.

person Kiril    schedule 22.04.2011
comment
да, у меня есть, и на самом деле это то, что я использую. Еще не реализовано полностью, так как у меня также есть членство в моем приложении. Я пытаюсь понять, как мне подключиться к GData после входа в систему. - person Keith Barrows; 23.04.2011
comment
@Keith Barrows: к сожалению, я никогда не делал этого ... Я не могу помочь вам, кроме того, что я уже предоставил :(, извините! - person Kiril; 23.04.2011
comment
Не беспокойся. В любом случае мне нужно сначала заставить мое соединение GData работать. Находясь в разработке, я просто заставляю свою учетную запись Google участвовать в тестировании, и до сих пор она возвращается 401! ‹Grrrr /› - person Keith Barrows; 23.04.2011
comment
В качестве обновления у меня есть теперь, когда я могу получить доступ к GData через чужие учетные данные. Все еще прорабатываются мелкие детали со смешанной средой входа в систему (OpenID / OAuth / Forms Auth). Я опубликую больше, когда приблизлюсь к решению. - person Keith Barrows; 24.05.2011