Подходит ли в этом случае OAuth и OpenID?

Я все еще пытаюсь сосредоточиться на работе OAuth / OpenID как таковой ...

Я разрабатываю «установленное приложение», которое будет работать на компьютерах и iPhone. Данный пользователь может установить клиентское приложение на несколько компьютеров, и все установленные клиенты пользователя будут синхронизироваться через централизованную службу Google App Engine. Служба GAE также позволит нескольким пользователям совместно работать над данными, созданными установленным приложением, через веб-приложение.

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

У меня вопрос ... Я не уверен, что это правильный вариант использования OAuth / OpenID. Я не получаю доступ к данным из других служб, я просто ищу решение для аутентификации. Кроме того, насколько сложно реализовать этот сценарий с помощью Google App Engine (java)?

Будем очень признательны за любые советы и / или отправные точки!


person tempy    schedule 11.12.2009    source источник
comment
связанные: stackoverflow.com/questions/814622/   -  person jldupont    schedule 11.12.2009


Ответы (1)


У меня вопрос ... Я не уверен, что это правильный вариант использования OAuth / OpenID.

«Вариант использования» для oAuth: приложению X требуется доступ к приложению Y. Приложение X «запрашивает» разрешение на доступ к приложению Y через ваши учетные данные. Приложение X получило «маркер авторизованного доступа».

В вашем случае, если я правильно понял, у вас может быть приложение в GAE, реализующее потребителя OpenID, а ваше мобильное приложение будет получать доступ к приложению GAE через oAuth.

Другими словами, ваш подход кажется разумным.

person jldupont    schedule 11.12.2009
comment
Таким образом, в терминологии OAuth мое установленное приложение должно рассматриваться как потребитель, а моя служба GAE - как поставщик услуг OAuth. А чтобы использовать OpenID, служба GAE, в свою очередь, будет использовать OpenID для аутентификации. Думаю, я начинаю это понимать. Я начинаю понимать, что шаблон «приложение-браузер-приложение» OAuth на мобильном устройстве будет очень сложным. - person tempy; 11.12.2009
comment
@Tempy: Я считаю, что это правда. - person jldupont; 11.12.2009