как обрабатывать сеанс пользователя в провайдере oauth?

Я дорабатываю своего провайдера OAuth 1.0a на основе Джерси, но столкнулся с небольшой проблемой, с которой не знаю, как справиться.

Во время танца OAuth пользователь должен аутентифицироваться со своими учетными данными (логин/пароль)

С моей реализацией на данный момент он должен аутентифицироваться каждый раз

На этапе авторизации единственный токен, который отправляется веб-службе, — это токен запроса, связанный с потребителем.

Джерси не управляет сессией

Как я могу избежать запроса аутентификации, если пользователь уже прошел аутентификацию?

Спасибо


person futoshita    schedule 17.01.2012    source источник


Ответы (2)


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

person Qwerky    schedule 17.01.2012
comment
Я согласен с тем, что клиенты должны поддерживать сеансы. но если пользователь, уже аутентифицированный веб-службой, хочет использовать другого клиента, этот клиент не имеет никакой информации о предыдущем маркере доступа. поэтому для веб-службы нет действительного индикатора сеанса - person futoshita; 17.01.2012
comment
@futoshita - если вы хотите, чтобы разные клиенты повторно использовали одну и ту же аутентификацию, тогда это единый вход (SSO), который не связан с oAuth. - person Qwerky; 18.01.2012
comment
когда я впервые подключаюсь к твиттеру, мне нужно войти с логином/паролем. если я хочу подключиться к about.me с помощью моей учетной записи Twitter, я перенаправляюсь на сайт Twitter, и мне просто нужно авторизовать about.me. это то, что я хочу. это ссо? - person futoshita; 18.01.2012

кажется, что когда пользователь впервые аутентифицируется в веб-службе, веб-служба должна предоставить файл cookie для входа, который проверяется каждый раз, когда пользователь хочет авторизовать нового клиента.

не могли бы вы оценить этот метод?

теперь мне нужно найти, как обращаться с печеньем с джерси...

person futoshita    schedule 18.01.2012