Я пытаюсь понять, как реализовать следующий поток аутентификации:
- Пользователь получает доступ к веб-приложению (, скорее всего, написанному с использованием Ruby on Rails ), и аутентифицирует (, например, имя пользователя/пароль ).
- Клиент получает данные через AJAX, предоставляемый RESTful API, построенным на Google App Engine (Python, webapp2 ).
Требования:
- Только пользователи, прошедшие аутентификацию в веб-приложении (Rails ), должны иметь доступ к API, размещенному в App Engine.
- Пользователи могут иметь разные роли в веб-приложении (Rails ), и API (App Engine )должен знать, какие роли связаны с данным пользователем, чтобы ограничить доступ к определенным данным.
- Клиент должен иметь возможность вызывать API (App Engine )напрямую через AJAX, без маршрутизации всех запросов через веб-приложение (Rails ).
Я ищу предложения о том, как реализовать такой рабочий процесс. Должен ли я использовать OAuth (или OAuth2 )для доступа к API? Должен ли провайдер OAuth работать в App Engine, а веб-приложение (Rails )запрашивать у API токен от имени пользователя? Если да, то как лучше всего разрешить только веб-приложению (Rails )запрашивать токены OAuth? Или я должен рассмотреть совершенно другую стратегию?
Любые предложения приветствуются. Я также ищу предложения библиотек для реализации OAuth в контексте выше.
задан Leo 24 July 2012 в 10:27
поделиться