.NET Core对接Apache Kafka与Confluent Cloud的疑问及权限配置求助
问题解答
关于Confluent.Kafka与原生Apache Kafka的关系
- Confluent.Kafka是Confluent官方维护的.NET客户端库,原生Apache Kafka没有官方的.NET Core客户端,所以功能对比页面提到的“仅Confluent支持.NET Core”,指的是官方提供的适配.NET Core的客户端方案。
- 该客户端完全兼容原生Apache Kafka集群,并非只能连接Confluent托管的服务,你在.NET Core程序中用它对接自己部署的Apache Kafka是完全可行的。
配置Confluent Control Center账号密码(9021端口服务)
你提到的https://MyServer:9021实际是Confluent Control Center(属于Confluent Platform本地部署组件),而非Confluent Cloud(云托管服务)。要为它配置账号密码认证,按以下步骤操作:
生成用户密码哈希
使用Confluent Platform自带的kafka-configs.sh(Windows环境用.bat后缀)工具生成密码哈希,示例命令:kafka-configs.sh --zookeeper localhost:2181 --alter --add-config 'SCRAM-SHA-256=[password=your_password]' --entity-type users --entity-name admin替换
your_password为你要设置的密码,admin为自定义用户名。修改Control Center配置文件
找到control-center.properties配置文件(通常在Confluent Platform安装目录的etc/confluent-control-center路径下),添加或修改以下配置项:# 开启HTTP基本认证 confluent.control-center.rest.authentication.method=BASIC # 指定用户认证数据存储依赖Kafka集群 confluent.control-center.rest.authentication.realm=Kafka # 设置允许登录的角色 confluent.control-center.rest.authentication.role=admin重启Control Center服务
停止当前运行的Control Center进程,再重新启动服务,配置即可生效。之后访问https://MyServer:9021就会弹出账号密码验证窗口。
内容的提问来源于stack exchange,提问作者Viacheslav Dev
相关产品推荐
相关产品推荐

