Надеюсь, у вас все хорошо и вы в безопасности.
У меня есть два модуля A и B в двух разных пространствах имен.
Я хочу, чтобы модуль A в namespace-a имел доступ ко всем модулям в других пространствах имен, поэтому я развернул этот NetPol из документации Kubernetes:
Версия API: networking.k8s.io/v1
вид: NetworkPolicy
метаданные:
имя: разрешить_egress
пространство имен: пространство имен-a
спецификация:
подселектор:
метки соответствия:
приложение: а
выход:
- к:
- селектор пространства имен: {}
policyTypes:
- Выход
Теперь для модуля B желательно, чтобы он получал трафик только из пространства имен, в котором он развернут, и поэтому я использовал из той же документации:
Версия API: networking.k8s.io/v1
вид: NetworkPolicy
метаданные:
имя: запретить вход
пространство имен: пространство имен-b
спецификация:
подселектор:
метки соответствия:
приложение: б
вход:
- от:
- подселектор: {}
policyTypes:
- Вход
Используя эту конфигурацию, я по-прежнему могу получить доступ к службе, открывающей модуль B из модуля A.Несмотря на то, что я указал во второй NetworkPolicy, что модуль B не должен принимать трафик только от других модулей в том же пространстве имен.
Имейте в виду, что я пытаюсь смоделировать две команды, которые не знают о разработках друг друга, поэтому команда, работающая в модуле B, не знает, что написано командой в модуле A. Есть ли что-то, что мне не хватает?
Спасибо!