Я пытаюсь создать проект зеленого поля, который будет иметь несколько сервисов (обслуживание данных) и веб-приложений (обслуживающих HTML). Я читал о микросервисах, и они выглядят хорошо.Одиночный вход в архитектуру Microservice
Проблема, которую я все еще имею, заключается в том, как реализовать SSO. Я хочу, чтобы пользователь прошел аутентификацию один раз и имел доступ ко всем различным службам и приложениям.
Я могу назвать несколько подходов:
Добавить службу удостоверений и применение. Любая служба, которая защищала ресурсы, будет обращаться к службе удостоверений, чтобы убедиться, что учетные данные, которые она имеет, действительны. Если это не так, это перенаправит пользователя для аутентификации.
Используйте веб-стандарт, такой как OpenID, и каждый служебный дескриптор имеет собственные идентификаторы. Это означает, что пользователь должен будет самостоятельно разрешать каждую услугу/приложение, но после этого он будет SSO.
Буду рад услышать другие идеи. Если конкретный PaaS (такой как Heroku) имеет запатентованное решение, которое также было бы приемлемым.
Итак, прочитав это, я предполагаю, что нет официального стандартного способа решения этой проблемы? –
Вы правы. Я использую собственный поставщик OAuth для получения результата SSO, но это не единственный способ. –
Я наткнулся на эту тему (и многие другие сайты). Я нашел эти 2 сайта очень полезными в этом отношении: https://medium.facilelogin.com/securing-microservices-with-oauth-2-0-jwt-and-xacml-d03770a9a838 http: // nordicapis. com/how-to-control-user-identity-in-micservices/ – Yogi