Amazon MSK 开启 Public 访问 SASL 配置的方法

打印 上一主题 下一主题

主题 829|帖子 829|积分 2487

1. 开启 MSK Public

1.1 配置 MSK 参数


  • 进入 MSK 控制台页面,点击左侧菜单 Cluster configuration。
  • 选择已有配置,或者创建新配置。
  • 在配置中添加参数
    allow.everyone.if.no.acl.found=false
  • 修改集群配置,选择到新添加的配置。

1.2 开启 Public


  • 选中集群,进入集群配置页面,选择 Properties
  • 找到 Networking settings,点击 Edit 菜单。
  • 选择 Edit public access

2. 注意事项

由于 MSK 开启 Public 访问,必须要开启 SASL/IAM 认证方式。而 Amazon MSK 默认 allow.everyone.if.no.acl.found=true,全部用户都可以拥有权限,由于 MSK 没有 super user,但是当将 MSK 开启 public 之后,这个参数必须设置为 false。因此,如果当集群还未配置任何用户权限的情况下,将 allow.everyone.if.no.acl.found 设置为 false,会无法使用任何用户来访问 MSK。
3. 启用 SASL 后的解决方案


  • 先创建 MSK 集群,开启 SASL 认证,通过 Secrets Manager,配置用户名密码,然后绑定到 MSK 集群,不启用 Public 访问。 详细的配置方法,可以参考 MSK Lab Workshop
  • MSK 集群启动后,按如下下令配置用户权限。
  1. # 设置 MSK Cluster bostrap
  2. export brokerssasl=xxxx:9096,xxxx:9096,xxxx:9096
  3. # 生成用户认证文件
  4. echo -n "security.protocol=SASL_SSL
  5. sasl.mechanism=SCRAM-SHA-512
  6. sasl.jaas.config=org.apache.kafka.common.security.scram.ScramLoginModule required \\
  7.   username="<username>" \\
  8.   password="<password>";
  9. " > /tmp/client.properties_<username>```
  10. # 给用户赋权
  11. bin/kafka-acls.sh --bootstrap-server $brokerssasl \
  12.         --add --allow-principal User:<username> --operation All --cluster '*' \
  13.         --command-config /tmp/client.properties_<username>
  14.         
  15.         
  16. bin/kafka-acls.sh --bootstrap-server $brokerssasl \
  17.         --add --allow-principal User:<username> --operation All --group '*' \
  18.         --command-config /tmp/client.properties_<username>```
复制代码
--add --allow-principal User:<username> --operation All --cluster '*'没有包罗消费者组权限,因此,还需要单独再给用户赋予组权限

  • 集群修改配置,添加 allow.everyone.if.no.acl.found=false, 然后启用 Public
  • 通过 public host 验证用户访问
  1. # 设置 MSK Cluster bostrap
  2. export brokerssasl=xxxx:9096,xxxx:9096,xxxx:9096
  3. # list
  4. bin/kafka-topics.sh --list --bootstrap-server $brokerssasl --command-config /tmp/client.properties_<username>
  5. # consumer
  6. $KAFKA_HOME/bin/kafka-console-consumer.sh --bootstrap-server $brokerssasl --group group01 --topic test_topic --consumer.config --command-config /tmp/client.properties_<username>
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

曹旭辉

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表