Как разработать отдельный сервер аутентификации с помощью потока ROPC OAuth2?

Мне нужно реализовать отдельный сервер аутентификации с использованием OAuth.

Технический стек, который я использую - django и graphQL.

Поскольку я использую отдельный сервер для аутентификации, я создал два проекта django, которые работают на двух разных портах, один для аутентификации, а другой - как сервер ресурсов для выполнения CRUD-операций над моделью пользователя.

Но поскольку я должен аутентифицировать пользователя с помощью имени пользователя и пароля и выдавать токены доступа, должен ли я определить модель 'user' в модуле проекта, предназначенном для сервера аутентификации?

Но если я создаю модель 'user' на стороне сервера аутентификации, то каждый раз, когда пользователь запрашивает какую-то информацию, моему серверу ресурсов необходимо сделать запрос к серверу аутентификации, чтобы получить эту информацию. Является ли это обычной практикой?

Я пробовал создавать представления в моем сервере аутентификации, как в '/register' и '/verifytoken'. Сервер ресурсов будет размещать POST-запросы к этим представлениям, используя graphQL, при регистрации пользователя, а также при попытке доступа к защищенному ресурсу для проверки маркера доступа.

Но поскольку я использую маршруты /register и /verifytoken, попадает ли это под использование REST API? Если да, то как мне использовать graphQL на стороне сервера аутентификации?

Я хочу создать этот сценарий, используя graphQL для вызовов API ROPC OAuth Flow

Вернуться на верх