Запрос имени пользователя или уникального идентификатора перед OAUTH/OpenID-Connect
Я создаю веб-сайт, который использует OAuth2.0 и OpenId-Connect(какого-либо стороннего поставщика) для аутентификации пользователя.
Прежде чем перенаправить пользователя на страницу OAuth поставщиков, я не прошу пользователя вводить уникальный идентификатор пользователя на моем веб-сайте, я думал об использовании идентификатора электронной почты пользователей, который я получаю как часть IDToken после завершения процесса авторизации, так как Имя пользователя (уникальный идентификатор) для моего сайта.
Но после просмотра спецификации OpenID здесь
https://openid.net/specs/openid-connect-core-1_0.html
Он говорит, что emailid не является обязательным и не может быть возвращен.
Поэтому возникает вопрос: является ли это стандартной практикой просить пользователя предоставить уникальное имя (которое я могу использовать в качестве идентификатора пользователя на моем веб-сайте), прежде чем инициировать процесс OAUTH/OpenID-Connect?
Спасибо
2 ответа
Подпретензия должна быть уникальной в соответствии с запросом. Требуемые претензии всегда будут присутствовать. Вы можете использовать субстанцию iss + для уникальной идентификации пользователей.
Чтобы добавить дополнительную информацию, каждому поставщику OpenID-соединения необходимо предоставить конечную точку /userinfo для получения информации о пользователях с использованием токена доступа.
вот спецификация
https://openid.net/specs/openid-connect-core-1_0.html