Как Kubernetes, так и Istio обеспечивают защиту на уровне сети, и установка разрешенных хостов на "all" безопасна.
Сетевая политика Kubernetes , вероятно, является наилучшим соответствием на уровне кластера. ты ищешь. Вы бы настроили саму базу данных на прием соединений со всех адресов, но затем настроили бы сетевую политику, чтобы отказать в соединениях, за исключением модулей, которые имеют определенный c набор меток. Поскольку вы управляете этим с помощью label , любые новые модули, имеющие соответствующий набор меток, будут автоматически получать доступ без изменений вручную.
В зависимости от ваших потребностей защита по умолчанию, предоставляемая ClusterIP
сервис может быть достаточно для вас. Если служба ClusterIP
, но не имеет другого типа, она недоступна извне кластера; нет сетевого пути, чтобы сделать его доступным. Этого часто бывает достаточно, чтобы предотвратить случайное обнаружение вашей базой данных сетевыми перехватчиками.
Система авторизации Istio немного более мощная и надежная на сетевом уровне. Он может ограничивать вызовы учетной записью вызывающего абонента Kubernetes и использует сертификаты TLS, а не только IP-адреса для идентификации вызывающего абонента. Тем не менее, он не включен по умолчанию, и по моему ограниченному опыту с ним очень легко случайно настроить его для таких вещей, как блокировка проверок работоспособности Kubernetes или проб Prometheus metri c. Если вы удовлетворены безопасностью на уровне IP, это может быть больше энергии, чем вам нужно.