У нас есть несколько микросервисов, реализованных на Java / Kotlin и Spring MVC, работающих в образах Tomcat. Эти сервисы предоставляют общедоступные API, которые аутентифицируются с помощью файлов cookie / сеансов пользователя. Они работают правильно.
Теперь мы хотели бы создать внутреннюю конечную точку, которая не была бы доступна ни за пределами GKE, ни через какую-то внутреннюю аутентификацию.
Какой будет хороший путь, особенно для Spring MVC и GKE?
EDIT:
Я бы хотел добиться проверки подлинности разных конечных точек на одном сервисе. Например:
/public/
- без аутентификации
/private/
- пользователь должен войти в систему
/internal/
- только другие микросервисы могут получить доступ
Я бы предпочел реализовать такую аутентификацию на уровне приложений, но я не уверен, что будет лучшим способом. Диапазон IP-адресов внутренних IP-адресов Google? Какой-то другой способ надежной идентификации абонента?
Может быть, моя идея плохая, если так, я буду рад изменить свое мнение.