授权

最近更新时间:2024-03-25 10:10:54

我的收藏

操作场景

生产环境(base namespace)的服务已经稳定运行,电商网站业务团队希望对网格中的服务做权限控制,限制生产环境(base namespace)下的服务不能被测试环境(test namespace)下的服务访问。

操作步骤

对网格中的服务进行权限控制可通过配置 AuthorizationPolicy 实现,配置以下 AuthorizationPolicy 策略限制 base namespace 下所有服务不能被 test namespace 下的服务访问。 通过控制台配置授权规则,如下图所示:


也可以通过提交 YAML 文件至主集群完成授权配置:
apiVersion: security.istio.io/v1beta1
kind: AuthorizationPolicy
metadata:
name: base-authz
namespace: base
spec:
action: DENY
rules:
- from:
- source:
namespaces:
- test
配置完成后通过容器服务控制台查看 test namespace 下 client 服务的 Pod 日志,发现 client 服务访问 base namespace 的 user 服务失败。授权策略生效。 授权规则限制后,访问失败如下图所示: