Создание пользователей в экспресс-шлюзе

Express-gateway имеет собственную систему управления потребителями и Admin Api для управления созданием, обновлением и т. Д. Пользователей.

Согласно документам, Admin Api предназначен для внутреннего использования и не поощряет его публичное раскрытие. Если это так, то как пользователь может быть создан на странице регистрации веб-сайта, в которой в качестве шлюза API microservices используется шлюз Express-Gateway?

Какова будет последовательность запроса / ответа для создания пользователя, который затем войдет в систему и получит разрешение на использование Apis, например, будет ли эта последовательность достаточной?

  • Приложение как потребитель создает пользователя с постом / пользователем с заголовком. Авторизация: apiKey

  • Api отвечает токеном JWT для созданного пользователя, который затем используется в последующем запросе.

  • Пользователь как потребитель запрашивает любую открытую конечную точку, с которой у него есть область действия, с заголовком Authorization: Bearer

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

0 ответов

Это верно, мы не рекомендуем выставлять Admin API напрямую публично. Это должно использоваться только для внутреннего использования.

Решение, которое вы предлагаете, является жизнеспособным. Вы можете либо отреагировать на нового потребителя, созданного в Express Gateway, - захватить его идентификатор и использовать его в качестве ссылки для своего пользователя в своей базе данных (Redis имеет механизм публикации / подписки, поэтому вы можете легко получать уведомления, когда это происходит), либо вы также можете Сделайте это с обратной стороны: как только пользователь зарегистрируется на вашем сайте, вы можете создать соответствующего пользователя в Express Gateway.

Я надеюсь, что отвечает на ваши вопросы!

Другие вопросы по тегам