j-snow
@j-snow
Java junior developer

Как организовать безопасное общение между микросервисами?

Планирую разделить монолитное приложение на микросервисы, которые будут располагаться на разных серверах.
Я так понимаю, что эти микросервисы будут доступны из вне (т.е. из интернета). Поэтому появляется вопрос:
Как организовать безопасное общение между микросервисами? Чтобы принимать запросы только от доверенных приложений (то есть - от других моих микросервисов).

PS: Было бы неплохо сделать так, чтобы можно было указать доступ для каждого конкретного метода.
Например, есть микросервис платежей, у которого есть 1) метод для выполнения платежа и 2) метод для просмотра истории платежей. И к первому методу доступ должен иметь только один определённый микросервис, а ко второму методу - вообще любой мой микросервис.

PS 2: Языки, на которых будут написаны микросервисы - Java и NodeJS.
  • Вопрос задан
  • 1062 просмотра
Решения вопроса 1
inoise
@inoise
Solution Architect, AWS Certified, Serverless
Межсервисное взаимодействие ничем не отличается от клиент-серверного. Та же аутентификация и авторизация (тот же пресловутый openid credentials grant flow), тот же SSL. В некоторых редких случаях можно ограничиться white-list ip, но тут хватает ограничений и никаких ролей
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
firedragon
@firedragon
Не джун-мидл-сеньор, а трус-балбес-бывалый.
Организуйте сеть, откройте наружу дырочку. Гайдов целый вагон. И кстати просто идиотизм защищать приложения если к вам уже вломились в сеть. ИМХО
Ответ написан
@vitaly_il1
DevOps Consulting
Я так понимаю, что эти микросервисы будут доступны из вне

Только те, для которых это действительно необходимо, остальные должны быть недоступны.
Ответ написан
Комментировать
Sanes
@Sanes
Cors например.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы