#oauth #banno-digital-toolkit
Вопрос:
Я нахожусь в процессе создания плагина для Banno Mobile и Онлайн. Следуя документации, предоставленной цифровым инструментарием Jack Henry для аутентификации с использованием архитектуры OAuth, я смог успешно завершить процесс аутентификации и получить маркер доступа и информацию о профиле пользователя.
По прошествии некоторого времени (в моем тестировании оно составило около 10 минут), если я попытаюсь снова запустить поток OAuth, я получу ответ с кодом состояния HTTP 401 от первоначального перенаправления на URL /a/consumer/api/v0/oidc. Я буду продолжать получать ответ 401, используя поток OAuth, пока вручную не перейду на онлайн-сайт Banno и не войду в систему вручную.
Для моей цели вариантом использования был бы пользователь, который простаивает в полноэкранном режиме плагина. Я хотел бы повторно аутентифицировать пользователя, но попытка сделать это путем инициирования потока OAuth приводит к вышеуказанному сбою, если прошло определенное время. Если я попытаюсь инициировать поток OAuth в течение 10 минут с момента первоначальной аутентификации, он будет работать так, как ожидалось.
Ответ №1:
В Access Token
настоящее время срок службы составляет 10 минут с момента выдачи этого конкретного токена, что похоже на то, что вы видите. См.Раздел Маркеры доступа для справки.
Одним из способов обработки истечения срока действия маркера доступа является запрос a Refresh Token
во время первоначального потока аутентификации. Токен обновления можно обменять на новый токен доступа. См.раздел Токены обновления и OpenID Connect и OAuth 2.0 для справки.
В этом случае вы можете запросить маркер обновления во время начального потока проверки подлинности, включив область OAuth https://api.banno.com/consumer/auth/offline_access
в запрос проверки подлинности.
Токен обновления можно обменять на новый токен доступа с помощью POST /oidc/token
конечной точки. Дополнительные сведения см. в справочнике по API.