Я разрабатываю приложение, которое реализует OAuth2.0 для внутренней аутентификации. Главным образом для этого используется никогда не истекающий jwt access_token. В токене есть некоторые претензии к информации о пользователе, например, идентификатор пользователя.
Теперь есть новое требование, необходимо интегрировать с PingOne через OpenId Connect.
Так что теперь приложение должно включитьтакже доступ с другим токеном - нет претензий, на которых основано мое приложение, - также мне нужно избегать ситуации, когда 2 учетных записи принадлежат одному и тому же лицу, одна создана с паролем, другая - с помощью SSO.
Какова общая лучшая практика для решения подобной ситуации?
Мои текущие мысли:
Если пользователь прошел проверку подлинности с помощью единого входа, а пользователь - нетне существует с адресом электронной почты, его нужно создать.
Необходимо заменить токен PingOne на другой токен, на токен старого стиля JWT, который имеет внутренний идентификатор пользователяпретензии в этом. Поэтому мне нужна конечная точка, которая принимает токен PintOne и меняет его на текущий.
Это хороший / безопасный подход?
Спасибо.