Можно ли использовать маркеры доступа OAuth для обеспечения постоянного доступа к учетной записи?
Могу ли я использовать токен запроса, предоставленный поставщиком OAuth, и использовать его всегда? Я хочу создать сервис, который взаимодействует с API Delicious и каждые две недели ищет обновленные закладки. Мне просто интересно, смогу ли я использовать один и тот же токен запроса вместо того, чтобы просить пользователя проходить аутентификацию снова и снова. Если я не могу, и я думаю, что ответ будет, что было бы наилучшей практикой для такого действия?
Моим последним вариантом было бы ожидать, что пользователи передадут мне свои восхитительные имена пользователей и пароли, и в этом случае моя работа станет чрезвычайно легкой.
2 ответа
Вероятно, не отвечая на ваши вопросы напрямую, twitter oAuth позволяет иметь постоянный токен запроса.
Это зависит от реализации - вам нужно увидеть, что в документации по Delicious говорят о токене. Это может истечь, иметь ограниченное использование или иметь побочные эффекты при использовании.
В большинстве реализаций OAuth, вероятно, в какой-то момент истекает срок действия их токенов, чтобы уменьшить количество допустимых токенов, которые они должны отслеживать.
В целом, помощь агента пользователя должна уменьшить эту проблему для систем аутентификации SSO - когда пользователь появляется без действительного токена, браузер перенаправляется на аутентификатор, который просматривает сохраненные учетные данные в браузере (обычно куки) и перенаправляет пользователя обратно с новым токеном, без какого-либо взаимодействия с пользователем. Это может быть более сложным для OAuth, чем для OpenID, так как может быть нецелесообразно выдавать новый токен, если он выполняет больше, чем аутентификацию. А поскольку процесс аутентификации / авторизации зависит от конкретной реализации, вам необходимо иметь возможность вводить новые учетные данные, если только вы не знаете, что токен будет действительным.