Я хочу реализовать шлюз api для множества микросервисов, работающих на laravel. Перед шлюзом находится угловой клиент, в котором пользователь должен войти в систему с именем пользователя и паролем. Идея состоит в том, что пользователь отправляет запрос с учетными данными на шлюз, который перенаправляет его в службу аутентификации. Если данные верны, будет выпущен токен, который будет включен в каждый последующий запрос.

Думаю реализовать шлюз с конгом и плагином oauth2. Я уже просмотрел их документацию https: // docs.konghq.com/hub/kong-inc/oauth2/#resource-owner-password-credentials, но я не совсем понимаю поток.

Должен ли клиент angular напрямую связываться со службой аутентификации при первом запросе? И если да, нужен ли сервис аутентификации собственный URL-адрес? Я думаю, было бы больше смысла, если бы весь запрос проходил через шлюз, не так ли?

Спасибо!

1
flo 25 Дек 2019 в 18:27
Это действительно зависит от вашей реализации, но обычно приложение Angular - это SPA. Приложения SPA должны использовать OpenID Connect Code Flow with PKCE, и это должно быть реализовано самим приложением SPA (например, github.com/damienbod/angular-auth-oidc-client). Прокси-сервер аутентификации (kong в вашем вопросе) не сможет предоставить удостоверение пользователя для приложения SPA без взлома нестандартного приложения / шлюза.
 – 
Jan Garaj
25 Дек 2019 в 19:03

1 ответ

Наверное, все они (кроме {{X24}}) - это функции, которые читают какой-нибудь {{X25}} файл с данными.

Где в шаблоне используется MentorProfileForm.

В соответствии с просьбой вот шаблон html, который я использую для загрузки изображения и другой информации профиля. Я убежден, что проблема в моем html. Я не уверен, что еще я мог делать не так

Просто чтобы добавить, в моей конфигурации безопасности у меня есть

Только если ваша служба аутентификации является сторонней службой, вы можете это сделать.

1
krishna 9 Май 2020 в 00:46