Предположим, что у нас есть несколько (безгарантийных, основанных на HTTP) (микро) сервисов и множество «демонов», которые выполняют все виды фоновой обработки, фактически используя указанные службы.Авторизация и аутентификация с использованием кросс-микросервиса
Теперь я хочу иметь способ для сервисов и демонов, чтобы иметь возможность взаимно аутентифицировать и разрешать. Например, демон, который выполняет полнотекстовую индексацию Заказов потребностей:
- только для чтения доступа к Заказам, Клиентами (который сам нуждается доступ только для чтения к компаниям услуг) и Inventory услуги
- читать и писать доступ к службы OrdersSearch для того, чтобы иметь возможность обновить полнотекстовый индекс.
Существуют также приложения, которые действуют «от имени» пользователя. Например, веб-приложение Inventory нуждается в , чтобы прочитать и написать доступ к службе , ноИнвентарь сам сервис должен проверить разрешения пользователя, работающего с приложением.
Все, что сказано, как мне достичь того, что я только что описал? Я бы предпочел не использовать гигантские рамки или стандарты предприятия. Из того, что я читал, Two-Legged OAuth2 - это то, что мне нужно, но я не совсем уверен.
Я был thinkinking в создании службы авторизации, который будет использоваться, чтобы ответить на такие вопросы, как: «Эй, я Inventory службы. Какие права на клиентов сервис, который звонит мне прямо сейчас имеет для меня? », но это имеет два основных недостатка в распределении общих секретов.
Как проходит аутентификация пользователя? –
@JoseMartinez В настоящее время на всех веб-серверах используется стандартная аутентификация с использованием пароля для входа в систему, нет видимых WIF или SSO –
См. Мой ответ: http://stackoverflow.com/questions/32574103/microservices-how-to-solve-security-and-user- аутентификация – Akira