当您需要精确控制用户对服务的访问权限时,可以在ASM安全策略中配置黑白名单。黑白名单是一种常见的授权机制,能够禁止指定请求或只允许指定请求访问应用。ASM支持对东西向流量和南北向流量配置IP、HTTP域名和端口等多个维度的黑白名单,以保障网格内应用的安全。本文介绍如何在ASM安全策略中配置东西向流量的黑白名单。
前提条件
已创建网关规则和虚拟服务,确保http://${ASM网关地址}/productpage可以正常访问。具体操作,请参见使用Istio资源实现版本流量路由的步骤一到步骤三。
操作步骤
登录ASM控制台,在左侧导航栏,选择 。
在网格管理页面,单击目标实例名称,然后在左侧导航栏,选择 。
在ASM安全策略页面,单击创建。在创建ASM安全策略对话框,单击黑白名单,然后单击确定。
在工作负载和匹配规则配置向导,进行相关配置,然后单击提交。
配置项
说明
ASM安全策略名称
配置为test。
工作负载列表
单击添加工作负载。
在添加工作负载对话框,选中工作负载生效,选择命名空间为default,工作负载类型为Service。
在选择负载区域,选中productpage,单击图标,将选中的负载添加到已选择区域,然后单击确定。
匹配规则列表
匹配模式选择黑名单,然后打开端口(Port)开关,配置为9080。该配置表示所有访问productpage Pod的9080端口的请求都会被拒绝。
创建成功后,在完成配置向导,会显示ASM安全策略创建成功。您可以单击查看YAML查看创建的资源,也可以单击完成,返回ASM安全策略页面,查看新创建的安全策略。
执行以下命令,验证黑白名单配置是否生效。
curl ${ASM网关IP}/productpage -I
预期输出:
HTTP/1.1 403 Forbidden content-length: 19 content-type: text/plain date: Fri, 22 Dec 2023 03:07:26 GMT server: istio-envoy x-envoy-upstream-service-time: 10
返回
403
响应,表明没有权限访问productpage应用,黑白名单配置生效。
相关文档
关于ASM安全策略的概念和相关功能说明,请参见ASM安全策略概述。
您可以启用网格审计功能,记录或追溯不同用户的日常操作,也可以为网格资源操作配置审计告警,在重要资源变动时及时发出告警通知到告警联系人。具体操作,请参见使用KubeAPI操作审计和为网格资源操作配置审计告警。