istio authorization-policy rules 当请求是任意ip地址 允许访问xx网址 其他都禁止
时间: 2024-09-11 09:18:34 浏览: 32
Istio Authorization Policy是一种服务网格安全控制机制,它允许管理员定义规则来控制流量进入或离开服务网格。如果你想创建一个策略,允许特定IP地址对`xx网址`进行访问,而其他所有请求都被阻止,你可以按照以下步骤设置:
1. 首先,你需要在Istio的`DestinationRule`中指定允许访问的IP地址范围。例如,如果你希望只允许`192.168.0.0/16`这个网段访问`xx网址`,可以添加这样的规则:
```yaml
apiVersion: networking.istio.io/v1alpha3
kind: DestinationRule
metadata:
name: allow_xx_url_from_ip_range
spec:
host: xx.url.com
trafficPolicy:
tcp:
portLevelSettings:
- port: <your-port>
allowedSourceRanges:
- "192.168.0.0/16"
```
这里的`<your-port>`需要替换为你`xx网址`的服务端口。
2. 然后,在`AuthorizationPolicy`中,你可以配置一个规则,允许来自允许IP范围的请求,并拒绝其他所有的请求。假设我们将其命名为`allow_from_specified_ips`:
```yaml
apiVersion: security.istio.io/v1beta1
kind: AuthorizationPolicy
metadata:
name: allow_from_specified_ips
spec:
selector:
matchLabels:
app: your-app-name
policies:
- name: allow_from_ip_range
actions:
- allowWhen:
source:
nets: [ "192.168.0.0/16" ]
- deny: "*"
```
这里的关键点是`actions`部分,第一个`allowWhen`指定了来源IP为`192.168.0.0/16`时放行,第二个`deny`表示所有其他情况都会被拒绝。
阅读全文