华为云UCS
华为云UCS
- 最新动态
- 服务公告
- 产品介绍
- 计费说明
- 快速入门
-
用户指南
- UCS集群
- 容器舰队
- 集群联邦
- 镜像仓库
- 权限管理
-
策略中心
- 策略中心概述
- 策略定义与策略实例的基本概念
- 启用策略中心
- 创建和管理策略实例
- 示例:使用策略中心实现Kubernetes资源合规性治理
-
使用策略定义库
- 策略定义库概述
- k8spspvolumetypes
- k8spspallowedusers
- k8spspselinuxv2
- k8spspseccomp
- k8spspreadonlyrootfilesystem
- k8spspprocmount
- k8spspprivilegedcontainer
- k8spsphostnetworkingports
- k8spsphostnamespace
- k8spsphostfilesystem
- k8spspfsgroup
- k8spspforbiddensysctls
- k8spspflexvolumes
- k8spspcapabilities
- k8spspapparmor
- k8spspallowprivilegeescalationcontainer
- k8srequiredprobes
- k8srequiredlabels
- k8srequiredannotations
- k8sreplicalimits
- noupdateserviceaccount
- k8simagedigests
- k8sexternalips
- k8sdisallowedtags
- k8sdisallowanonymous
- k8srequiredresources
- k8scontainerratios
- k8scontainerrequests
- k8scontainerlimits
- k8sblockwildcardingress
- k8sblocknodeport
- k8sblockloadbalancer
- k8sblockendpointeditdefaultrole
- k8spspautomountserviceaccounttokenpod
- k8sallowedrepos
- 配置管理
- 服务网格
- 流量分发
- 可观测性
- 云原生服务中心
- 容器迁移
- 流水线
- 错误码
- 最佳实践
- API参考
- 常见问题
- 文档下载
- 通用参考
链接复制成功!
服务授权
服务授权用来实现对网格中服务的访问控制功能,即判断一个请求是否允许发送到当前的服务。服务授权通过负载选择器Selector选择目标负载。认证的规则通过JWTRule来描述,定义如何匹配JWT令牌上的认证信息。
创建服务授权
支持YAML创建服务授权。
- 登录UCS控制台,在左侧导航栏中单击“服务网格”。
- 单击服务网格名称,进入详情页。
- 在左侧导航栏,单击“服务安全”下的“服务授权”,进入服务授权详情页。
- 单击右上角“YAML创建”,弹出服务授权YAML创建界面。
- 设置如下:满足特定条件的请求访问才会被接受,其他不满足所设定条件的请求访问都会被拒绝。
apiVersion: security.istio.io/v1beta1 kind: AuthorizationPolicy # 创建服务安全类别为服务授权 metadata: name: forecast # 服务授权名 namespace: weather # 在weather命名空间下创建 spec: selector: matchLabels: app: forecast version: v2 rules: - from: - source: principals: ["cluster.local/ns/weather/sa/frontend"] to: - operation: methods: ["PUT","POST"] when: - key: request.headers[group] values: ["admin"]
更新服务授权
- 登录UCS控制台,在左侧导航栏中单击“服务网格”。
- 单击服务网格名称,进入详情页。
- 在左侧导航栏,单击“服务安全”下的“服务授权”,进入服务授权详情页。
- 选定要更新的策略,单击操作列下的“YAML编辑”。
- 更新设置的条件,比如版本号。
spec: selector: matchLabels: app: forecast version: v2 rules: - from: - source: principals: ["cluster.local/ns/weather/sa/frontend"] to: - operation: methods: ["PUT","POST"] when: - key: request.headers[group] values: ["admin"]
删除服务授权
删除操作无法恢复,请谨慎操作。删除服务授权不会影响关联的服务本身运行。
- 登录UCS控制台,在左侧导航栏中单击“服务网格”。
- 单击服务网格名称,进入详情页。
- 在左侧导航栏,单击“服务安全”下的“服务授权”,进入服务授权详情页。
- 选定要删除的策略,单击操作列下的“删除”。
- 弹出“删除服务授权策略”对话框,单击“是”,删除服务授权完成。
案例
TCP 服务访问授权。
apiVersion: security.istio.io/v1beta1 kind: AuthorizationPolicy metadata: name: tcp-auth-policy namespace: weather spec: selector: matchLabels: app: forecast action: ALLOW rules: - from: - source: ipBlocks: ["10.**.**.**/**"] to: - operation: ports: ["8090"]
父主题: 服务安全