oauth-php хранит только один токен доступа - PullRequest
0 голосов
/ 14 сентября 2011

Я делаю провайдера аутентификации, который позволяет потребителю действовать от имени нескольких пользователей одновременно (пожалуйста, пока не говорите "Дух").

В моей таблице oauth_consumer_registry (где потребитель хранит свои учетные данные), у меня есть следующая запись

ocr_id  ocr_usa_id_ref  ocr_consumer_key    
1       672             7e6418..........

Потребитель сохраняет токены, к которым он обращался, по адресу oauth_consumer_token

oct_id  oct_ocr_id_ref  oct_usa_id_ref  oct_token_type
31      1               672             access
32      1               672             request

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

Как мне сказать моему потребительскому приложению связать токен доступа с конкретным пользователем?


Объяснение, которое пришло мне в голову, заключается в том, что я должен зарегистрировать нового «потребителя» в oauth_consumer_registry для каждого пользователя. Это правильно?

1 Ответ

0 голосов
/ 10 апреля 2012

Для каждого потребителя у этого потребителя должен быть один токен на пользователя, поскольку потребитель пытается получить доступ к провайдеру от имени пользователя.На стороне провайдера этот провайдер должен иметь один токен на пользователя для каждого потребителя.Это предполагает, что вы хотите, чтобы отдельные пользователи могли контролировать доступ, предоставленный внешним потребителям.

...