Я пишу Open ID Connect Provider в Rails, в основном рефакторинг этого примера Here.Open ID Connect Provider - Персидский идентификационный токен?
Мой вопрос - действительно ли идентификаторы токенов должны быть сохранены на сервере вообще? Если я просто подписываю идентификатор ID и отправляю его в RP, не могу ли я просто сгенерировать идентификатор ID, когда RP запрашивает его (например, с типом ответа idtoken в запросе), и не беспокойтесь о его сохранении в база данных на моем конце? В основном используйте обычный старый объект ruby для IDToken, а не объект ActiveModel.
Мне кажется, что как только RP получает идентификатор ID, он использует его для получения информации об Владельце ресурсов и не отправит его обратно поставщику, как токен доступа. Или я что-то пропущу здесь, и я ДОЛЖЕН сохранять идентификационные токены в db провайдера?
Я знаю, Nat Sakimura объясняет here, что в code
потоке OAuth/РСИНЕ, вы должны сохранить идентификатор токен при передаче коды авторизации обратно на RP, но я чувствую, что я мог бы просто создать маркер, когда они посылают код назад и попросите токен доступа (вместе с токеном id).