Я создаю (набор) веб-приложений; бэкэнд имеет REST-подобный API, интерфейсом будет некоторое приложение REST JS, приложения для Android и т. д .; и я пытаюсь придумать функциональность SSO.Oauth SSO для приложений REST
Глядя на Oauth2/OIDC, кажется, лучший способ - использовать неявный поток; однако токены доступа в неявном потоке (в oidc) имеют истечение набора. Ток обновления не является частью неявного потока.
Как я могу гарантировать, что пользователь останется в системе? То есть когда токен доступа истекает, внешнее приложение попытается получить новый с сервера auth; который должен запрашивать имя пользователя/пароль. В качестве альтернативы, он может построить сеанс с интерфейсом (используя файлы cookie), но как это отличается от токена обновления?
Мне кажется, что получение токена доступа, например, из приложения Android, по крайней мере, открывает веб-браузер; в зависимости от длины истечения, что может быть довольно часто. Это правильный поток или я что-то упускаю?