Istio授权策略IP白名单

时间:2020-09-22 15:33:11

标签: istio envoyproxy

有人知道如何使用Istio授权策略正确进行IP白名单吗?我能够按照此https://istio.io/latest/docs/tasks/security/authorization/authz-ingress/在网关上设置白名单。但是,有没有一种方法可以使用选择器在特定的工作负载上执行此操作?像这样:

apiVersion: security.istio.io/v1beta1
kind: AuthorizationPolicy
metadata:
  name: app-ip-whitelisting
  namespace: foo
spec:
  selector:
    matchLabels:
      app: app1
  rules:
  - from:
    - source:
        IpBlocks: 
        - xx.xx.xx.xx

我无法使它正常工作。我正在使用Istio 1.6.8

1 个答案:

答案 0 :(得分:1)

我正在运行Istio 1.5.6,并且正在运行(列入白名单):仅允许 ipBlocks 中的IP地址针对指定的工作负载执行,其他IP的获取响应代码403。术语 ipBlocks 令人困惑:它没有阻止任何内容。如果您要阻止某些IP(黑名单),则需要使用 notIpBlocks

apiVersion: security.istio.io/v1beta1
kind: AuthorizationPolicy
metadata:
  name: peke-echo-v1-ipblock
  namespace: peke-echo-v1
spec:
  selector:
    matchLabels:
      app: peke-echo-v1
      version: v1
  rules:
  - from:
    - source:
        ipBlocks: 
        - 173.18.180.128
        - 173.18.191.159
        - 173.20.58.39

小写字母大写的ipBlocks

有时该政策生效需要一段时间。