Свой auth-микросервис в случае использования OAuth2

Правильно ли я понимаю, что в случае использования OAuth2(OpenId Connect, как средство соединяющее и авторизацию и аутентификацию) написания собственного сервиса аутентификации(endpoint которого допустим принимает креды и отдает токен) является неправильным и нужно использовать то, что предоставляет сервер авторизации? Т.е. делать редирект на сервер авторизации, но что если я хочу сделать кастомную страницу аутентификации? P.S. Естественно полагая, что сервер авторизации в приложении уже используется для получения и валидации токена.


Ответы (1 шт):

Автор решения: Aziz Umarov
  1. Написания собственного сервиса аутентификации(endpoint которого допустим принимает креды и отдает токен) является неправильным -

OAuth — открытый протокол (схема) авторизации, который позволяет предоставить третьей стороне ограниченный доступ к защищённым ресурсам пользователя без необходимости передавать ей (третьей стороне) логин и пароль.

Естественно вы не можете передать "креды" потому что вы не можете у себя их держать.

  1. Нужно использовать то, что предоставляет сервер авторизации? Т.е. делать редирект на сервер авторизации, но что если я хочу сделать кастомную страницу аутентификации? P.S. Естественно полагая, что сервер авторизации в приложении уже используется для получения и валидации токена. - ДА

PS. Воспользуйтесь готовым KeyCloak. На изучение потратите не много времени но получите готовый сервер с исходниками бесплатно.

→ Ссылка