API 文档

配置 ACL 策略

最近更新时间:2022-01-18 11:36:21

操作场景

该任务指导您在使用消息队列 CKafka 时,通过控制台配置 SASL 鉴权和 ACL 规则,增强对公网/内网传输中的用户访问控制,增加对 Topic 等资源的生产消费权限控制。

说明:

  • Kafka 提供了多种安全认证机制,主要分为 SSL 和 SASL2 大类,其中 SASL/PLAIN 是基于账号密码的认证方式,比较常用。CKafka 支持 SASL_PLAINTEXT 认证(参见 添加路由策略-公网域名接入)。
  • ACL 访问控制列表(Access Control List),帮助用户定义一组权限规则,允许/拒绝用户 user 通过 IP 读/写 Topic 资源。

操作步骤

配置 ACL 策略

  1. 登录 CKafka 控制台
  2. 在顶部菜单栏,选择地域后,单击目标实例“ID/名称”。
  3. 在实例详情页面,单击顶部用户管理页签。
  4. 在用户管理页面,单击新建,填写用户名和密码信息,创建用户。
  5. 单击顶部 ACL 策略管理
  6. 在 ACL 策略详情页面,单击批量配置,为用户授予权限。
    说明:

    • 若只设置允许规则,则除允许的规则外的其他 IP 都无法连接实例。
    • 若只设置拒绝规则,则除拒绝的规则外的其他 IP 都可以连接实例。
    • 若同时设置允许规则和拒绝规则,则只有允许规则中的IP可以连接实例,其他 IP 都无法连接实例。

    支持批量勾选按前缀模糊匹配预设规则三种方式为用户授予权限。

    说明:

    配置 ACL 策略时支持输入多个 IP 或网段,用 ; 隔开,若 IP 为空,则默认为全部 IP 添加权限。

    • 批量勾选:选择多个需要配置相同 ACL 策略的 Topic。
    • 按前缀模糊:按 Topic 名称前缀模糊匹配需要配置相同 ACL 策略的 Topic,需要指定模糊匹配规则名称。设置后,新增按指定前缀命名的 Topic 时,系统自动配置指定 ACL 策略。
      说明

      模糊匹配规则最多支持设置五条。


    • 预设规则:预设一套策略,后续创建 Topic 的时候可以自动应用这套规则。
      说明

      预设规则最多支持设置五条。


    后续处理:完成授权后,用户可以通过 SASL 接入点接入消息队列 CKafka 并使用 PLAIN 机制消费消息(参见 SDK 文档)。

使用限制

  1. 开通路由只影响接入时的验证方式,设置的 ACL 权限则是全局的。
  2. 如果您在开通公网访问路由的同时还使用了 PLAINTEXT 方式接入 CKafka,那么之前为 Topic 设置的 ACL 仍然会生效。若您希望 PLAINTEXT 方式的访问不受影响,请为 PLAINTEXT 需要访问的 Topic 添加全部用户的可读写的权限。
    说明

    在添加ACL策略时,不需要选择任何用户,默认为全部用户添加了读写权限。


    添加完成效果如下:
  3. 如果该 Topic 已经在有其他云产品在使用(例如:日志服务 CLS 的日志投递、云函数 SCF 消息转储、大数据 EMR 组件的消费等),开启 ACL 策略相当于对这些联动能力的权限加以限制,会直接导致这些能力不可用,请一定谨慎操作。对于此类情况建议生产同一份数据到另一个 Topic 做分别处理,不要在同一个 Topic 上配置统一的 ACL 策略。

查看预设规则

  1. 在 ACL 策略管理页面,选择预设规则
  2. 在预设规则列表,单击操作列的详情,可查看预设规则详情。

删除预设规则

  1. 在 ACL 策略管理页面,选择预设规则
  2. 在预设规则列表,单击操作列的删除,可删除预设规则。
    根据是规则匹配类型不同,预设规则删除后的影响也有所不同:
    • 当规则是模糊匹配规则时,新增 Topic 不会再自动应用该规则,对于已经应用前缀匹配规则的 Topic,该规则也将不再生效。
    • 当规则不是模糊匹配规则时,新增 Topic 不会再自动应用该规则,对于已自动应用该规则的 Topic,相应规则不会一并删除。
目录