Я развернул приложение на aws с использованием контроллера kops и ingress nginx.
Из того, что я понял, похоже, что контроллер ввода позволяет публично выставлять все службы, развернутые в кластере.Поэтому меня интересует безопасность и аутентификация.
Какая архитектура у моего проекта?Я получил 3 службы, развернутые в кластере:
-client-ui (front-end)
-authentication-api (создает / создает/ проверяет токен JWT и вызывает другие службы, такие как data-api)
-data-api (API, который создает / считывает / обновляет / удаляет конфиденциальные данные в БД)
Таким образом, вопрос заключается в следующем: если контроллер Ingress предоставляет все службы, как вы ограничиваете доступ к определенной службе, если пользователю это запрещено?
В этом случае data-api долженбыть доступным только из аутентификации-API.Поэтому, если в моем браузере я наберу www.client-ui.com/data/getXXX, очевидно, я не смогу получить доступ к этой конечной точке.Я должен быть в состоянии сделать это только через authentication-api, если его токен jwt был проверен.
Поэтому я полагаю, что некоторые apis должны быть доступны только из кластера, а некоторые публично!?
Не могли бы вы объяснить, как я могу это сделать?
Спасибо