Как иметь отдельный REST API, который обрабатывает аутентификацию только для нескольких приложений

Я разработал несколько REST API на Django, каждый со своей собственной системой аутентификации пользователей, использующей токены для аутентификации. Я хочу, чтобы все API использовали только единую базу данных аутентификации, чтобы у меня был единый фронт-энд, где пользователь может войти в систему, а затем получить доступ к нескольким приложениям, каждое из которых использует свой собственный API.

Существует ли способ, с помощью которого API может осуществлять вызов центрального API с базой данных пользователей для аутентификации? Или какова промышленная/лучшая практика для достижения этого?

Прежде всего, выбор схемы аутентификации зависит от ваших реальных потребностей.

JWT представляется довольно простым в использовании и реализации, а также легким для понимания. JWT является более легковесным и предназначен для аутентификации доступа между микросервисами. Вы можете создать токен и добавить в мета запросы в вашем сервисе аутентификации, затем вам понадобится "пользовательское" промежуточное ПО для других сервисов, чтобы расшифровать его и решить, что он действителен, вы можете использовать секретный ключ, чтобы решить это для ваших сервисов.

Если вы хотите разделить базы данных каждого из ваших микросервисов, вы можете настроить это в настройках базы данных.

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