[Kafka with kraft] SASL_PLAINTEXT认证

kafka安全认证与授权(SASL/PLAIN) 快速搭建kafka SASL+ACL实现安全认证、授权 kafka SASL/PLAIN 阅读详情

本文基于kafka3.3.1使用kraft作为仲裁,进行测试,kafka with zookeeper使用也是一样的。

修改服务器配置

1.创建kafka_server_jaas.conf文件,写入如下内容

KafkaServer {
    org.apache.kafka.common.security.plain.PlainLoginModule required
    username="admin"
    password="admin-sec"
    user_admin="admin-sec"
    user_producer="prod-sec"
    user_consumer="cons-sec";
};
  • username: 定义了一个公共的用户名密码,用于节点间通信

  • user_xxx: 自定义用户,主要用于客户端连接kafka,所以可以使用的用户必须在此定义。等号后面是密码,xxx是用户名。格式不能错。

  • 注意倒数第一行和倒数第二行都有一个分号

2.修改kafka-server-start.sh启动脚本的最后一行,将上述文件作为参数传递个kafka:exec $base_dir/kafka-run-class.sh $EXTRA_ARGS -Djava.security.auth.login.config=/usr/local/kafka/config/kafka_server_jaas.conf kafka.Kafka "$@"。注意修改文件路径。

3.修改 kafka 配置文件下的server.properties

# 这两行主要是修改协议
listeners=SASL_PLAINTEXT://0.0.0.0:9193 
advertised.listeners=SASL_PLAINTEXT://12.120.20.3:9092

# inter.broker.listener.name=PLAINTEXT # 如果这一行默认是开启的注释掉这一行

# 增加下面四行配置
security.inter.broker.protocol=SASL_PLAINTEXT
sasl.enabled.mechanisms=PLAIN
sasl.mechanism.inter.broker.protocol=PLAIN
allow.everyone.if.no.acl.found=true

4.重启kafka节点

修改控制台生产者消费者配置

这一节主要配置控制台生产者和消费者。主要用于测试,如果直接用程序调试这一节可以跳过。

5.消费者新建jaas文件kafka_client_consumer_jaas.conf

KafkaClient {
    org.apache.kafka.common.security.plain.PlainLoginModule required
    username="consumer"
    password="cons-sec";
};

6.生产者新建jaas文件kafka_client_producer_jaas.conf

KafkaClient {
    org.apache.kafka.common.security.plain.PlainLoginModule required
    username="producer"
    password="prod-sec";
};

7.修改生产者客户端脚本kafka-console-producer.sh,指定配置文件.注意文件路径

exec $(dirname $0)/kafka-run-class.sh -Djava.security.auth.login.config=/data/users/yulei/kafka_2.12-3.3.1/config/kraft/kafka_client_producer_jaas.conf kafka.tools.ConsoleProducer "$@"

8.修改消费者客户端脚本kafka-console-consumer.sh

exec $(dirname $0)/kafka-run-class.sh -Djava.security.auth.login.config=/data/users/yulei/kafka_2.12-3.3.1/config/kraft/kafka_client_consumer_jaas.conf kafka.tools.ConsoleConsumer "$@"

9.创建生产者配置文件producer.properties

security.protocol=SASL_PLAINTEXT
sasl.mechanism=PLAIN

10.创建消费者配置文件consumer.properties

security.protocol=SASL_PLAINTEXT
sasl.mechanism=PLAIN

11.控制台启动消费者,生产者测试

bin/kafka-console-producer.sh --topic aa --bootstrap-server localhost:9092 --producer.config config/kraft/producer.propertis
bin/kafka-console-consumer.sh --topic aa --from-beginning --bootstrap-server localhost:8082 --consumer.config config/kraft/consumer.properties

Springboot集成带SASL_PLAINTEXT认证的kafka

springboot集成kafka只需要修改配置文件即可,业务代码不需要修改

spring:
  kafka:
    bootstrap-servers: localhost:9092
    consumer:
      key-deserializer: org.apache.kafka.common.serialization.StringDeserializer
      value-deserializer: org.apache.kafka.common.serialization.StringDeserializer
      # 消费者主要添加如下四行,注意用户名密码与第一步中的kafka_server_jaas.conf相同
      properties:
        sasl.mechanism: PLAIN
        security.protocol: SASL_PLAINTEXT
        sasl.jaas.config: org.apache.kafka.common.security.plain.PlainLoginModule required username="consumer" password="cons-sec";
    producer:
    # 生产者主要添加如下四行,注意用户名密码与第一步中的kafka_server_jaas.conf相同
      properties:
        sasl.mechanism: PLAIN
        security.protocol: SASL_PLAINTEXT
        sasl.jaas.config: org.apache.kafka.common.security.plain.PlainLoginModule required username="producer" password="prod-sec";
      key-serializer: org.apache.kafka.common.serialization.StringSerializer
      value-serializer: org.apache.kafka.common.serialization.StringSerializer

Flink集成SASL_PLAINTEXT认证的kafka

flink集成带SASL_PLAINTEXT认证的kafka同样只需要下面三个配置,业务代码不需要修改。

/**
     * 构建kafka数据源,结果格式为ImageResult
     *
     * @param address 集群地址
     * @param topics  topic
     * @return 图片结果数据源
     */
    private static KafkaSource<ImageResult> getImageResultSource(String address, String... topics) {
        final Properties props = new Properties();
        props.setProperty("security.protocol", "SASL_PLAINTEXT");
        props.setProperty("sasl.mechanism", "PLAIN");
        props.setProperty("sasl.jaas.config", "org.apache.kafka.common.security.plain.PlainLoginModule required username=\"consumer\" password=\"cons-sec\";");

        return KafkaSource.<ImageResult>builder()
                .setBootstrapServers(address)
                .setTopics(topics)
                .setGroupId("results-group")
                .setProperties(props)
                .setStartingOffsets(OffsetsInitializer.latest())
                .setValueOnlyDeserializer(new SimpleImageResultSchema())
                .build();
    }

【保姆式通关宝典】使用Kraft快速搭建Kafka集群(含服务鉴权) 【保姆式通关宝典】使用Kraft快速搭建Kafka集群+Sasl鉴权模式 阅读详情

相关推荐

Kafka KRaft + SSL + SASL/PLAIN 部署文档

本文档介绍如何在 Windows 环境下部署 Kafka 4.x,使用 KRaft 模式、SSL 加密和 SASL/PLAIN 认证。

livemegoodboy的博客 1886

【kafka+Kraft模式集群+SASL安全认证】

kafka+Kraft模式集群+SASL安全认证

眼中星辰的博客 2932

小亦工单案例:kafka集群 KRaft 模式开启 SCRAM-SHA-256 SASL_PLAINTEXT 认证报错

Kafka集群SCRAM认证异常:KRaft模式集群启用SCRAM-SHA-256 SASL_PLAINTEXT认证时报错,客户端连接失败。 问题成功解决:kafka-confgs.sh -alter单节点执行凭证创建;按需独立格式化目标节点磁盘;客户端启动前配置admin.conf并显式引用。

Xiaoyi_CES的博客 1588

kafka+Kraft模式集群+安全认证

kafka+Kraft模式集群+安全认证

鸢尾_的博客 3870

Kafka集群部署、sasl安全认证

Zookeeper集群部署: Kafka是依赖于zookeeper,需要先将zooleeper启动起来。首先可以从http://zookeeper.apache.org/releases.html 下载最新版zookeeper(当前版本3.4.13),进入其中的conf文件夹,可以看到一个名为zoo_sample.cfg的文件。我们把它另存为一个zoo.cfg文件,然后打开,可以看到zookeep...

dasnotsad的博客 2440

从Flink消费到数据湖:基于Kafka 3.9.1 SASL认证的完整数据管道搭建指南

本文详细介绍了基于Kafka 3.9.1 KRaft模式与SASL认证的安全数据管道搭建方法,涵盖从集群部署到Flink SQL集成实战的全流程。重点解析了生产环境中的SASL认证配置技巧、性能调优策略及数据湖写入方案,助力企业构建高效、安全的实时数据处理系统。

Jerry的专栏 722

KRaft使用SASL_PLAINTEXT进行认证

简单记录使用Kafka的KRaft模式来配置SASL_PLAINTEXT的认证模式。

meethigher的博客 2548

Kafka 3.9.1单机部署实战:Kraft模式+SASL认证全流程解析

本文详细解析了Kafka 3.9.1单机部署的全流程,重点介绍了Kraft模式的优势及SASL认证配置步骤。通过环境准备、Kafka安装、Kraft模式配置、SASL认证设置等关键环节的实战演示,帮助开发者快速搭建安全可靠的Kafka环境,特别适合需要数据安全保障的单机应用场景。

weixin_30369041的博客 598

Linux-Kafka 3.7.0 Kraft+SASL认证模式 集群安装与部署超详细

这个是3.2.0版本新引入的认证方式,可以参考 https://cwiki.apache.org/confluence/display/KAFKA/KIP-801%3A+Implement+an+Authorizer+that+stores+metadata+in+__cluster_metadata。5.修改kafka-console-producer.sh和kafka-console-consumer.sh启动文件两个都要改。# 如果未设置,则使用"listeners"的值.

qq_41118173的博客 5433

Kafka安全认证:使用SASL/PLAINTEXT进行账号密码认证

本文将介绍如何配置和使用SASL/PLAINTEXT认证机制,并提供相应的源代码示例。通过以上配置和代码示例,您可以在Kafka中启用SASL/PLAINTEXT认证,并使用账号密码进行安全认证。首先,需要在Kafka服务器上进行配置,以启用SASL/PLAINTEXT认证。现在可以使用配置好的Kafka客户端创建生产者和消费者来进行数据的发送和接收。在上述代码中,首先创建了一个生产者,设置了相关的配置项,包括。请注意,上述代码中的用户名和密码需要替换为实际的有效值。参数指定了认证的用户名和密码,需要将。

LmzActionscript的博客 1094

告别CNN局限:用Transformer+迁移学习搞定高光谱图像分类(附Pytorch代码)

本文探讨了如何利用Transformer的自注意力机制和迁移学习策略解决高光谱图像分类中的挑战。通过结合CNN的局部特征提取和Transformer的全局建模能力,提出的DenseTransformer架构在多个数据集上实现了显著的性能提升。文章还提供了详细的PyTorch实现代码和工程优化技巧,帮助开发者快速应用这一技术。

weixin_32771907的博客 603

基于 Docker 部署 Kafka(KRaft + SASL/PLAIN 认证)

docker搭建单机kafka

Cat God 007的博客 1276

四、Burpsuite工具之proxy模块详解-intercept功能

过了一个年,感觉好久都没有更新了,今天就从burpsuite的更新开始吧。前面已经说过了burpsuite的安装和proxy代理的配置,今天说一下proxy模块中非常有用的intercept功能。intercept是拦截的意思,在这里相当于拦截请求,可以实时的对请求进行拦截,然后请求参数的篡改,再把请求放通,从而达到实时修改请求的功能intercept的总体界面如下图所示其中下图红框中是可以修改请求目标的相关信息。

SmileAssassn的博客 1661

kafka 开启认证授权

kafka Kraft 模式 用户名密码 认证

卷心菜投手 8235

智能车图像处理24-进阶篇16--三叉路口的判断

这篇文章主要讲述图像处理中如何判断三叉路口并进行补线操作。

taiyuezyh的博客 1万+

基于OpenClaw的AI数字员工协同团队架构设计

随着大型语言模型从被动的文本生成器向具备自主规划与执行能力的智能代理演进,企业级人工智能的应用范式正在发生根本性转变。在这一演进过程中,OpenClaw(前身为Clawdbot及Moltbot)作为一种开源的、本地优先的个人AI智能体网关基础设施,凭借其对持续内存、多通道接入以及沙盒化工具执行的原生支持,迅速成为构建“始终在线”数字劳动力的核心框架 1。然而,将单体个人助理扩展为能够处理复杂业务逻辑、支持跨组织协同并严格保障数据隔离的多智能体(Multi-Agent)团队,绝非简单的API拼接。系统架构必须

形上得其象,形下合于数;阴阳自济,玄理自明。 1046

kafka 安装 以及 Kraft 模式、安全认证配置

kafka部署、Kafka- Kraft 模式部署、安全认证开启

何xiao树 3593

机器视觉框架源码——解读5(Dock和开源UI)

本文介绍了工业软件中Dock工具面板的使用方法,主要包括三个部分:添加avalonDock引用、修改属性配置(如显示样式和背景色),以及通过MVVM命令实现布局的加载和保存。加载布局通过XmlLayoutSerializer从XML文件恢复界面状态,保存布局则将当前DockManager的布局序列化为XML文件。文章提供了代码示例和截图说明,帮助开发者快速掌握Dock面板的核心功能。

Z's Palace 401

Linux-Kafka 3.7.2 Kraft+SASL认证模式 集群安装与部署

在常规模式下,Kafka 依赖 ZooKeeper 存储元数据,通过动态选举产生 Controller 节点来管理集群。而在实验性的 KRaft 模式下,架构进行了重大改进:完全移除了对 ZooKeeper 的依赖,改用三个预配置的 Controller 节点来存储元数据并直接管理 Kafka 集群。实现完全自主运行,消除了对外部组件的依赖提升集群性能,Controller 可直接访问本地存储的元数据,无需经过 ZooKeeper 中转突破 ZooKeeper 的读写性能瓶颈,使集群扩展更加灵活。

DanBrownWang的博客 1063

Cadence OrCAD Capture 原理图中创建差分对约束的两种常用方法

本文介绍在原理图设计阶段,添加差分对的方法。

fydar的博客 3930

直方图均衡化原理及matlab和opencv实现代码

详细分析了直方图均衡化的数学原理,配有matlab和opencv实现代码

qq_21603315的博客 4777

kafka二进制部署(Kraft方式,SASL认证)

所有节点执行thenfi可以根据实际jvm参数在此处调整。

weixin_47575974的博客 2530

【git】git: ‘interpret-trailers’ is not a git command. See ‘git --help’

cents 7.6系统. yum源安装git最新版本是1.8.3 报错: git: 'interpret-trailers' is not a git command. See 'git --help'. cannot insert change-id line in .git/COMMIT_EDITMSG 解决: git add xxx git commit -m "xxx" 然后修改 vim .git/hooks/commit-msg #if test -n "${reviewurl}" ; th

machh的专栏 4758

Kafka KRaft SCRAM认证集群搭建

软件版本。

u013256012的博客 1343

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

docker安装kafka并使用SASL 进行身份验证

通过上述步骤,你可以使用 Docker 安装 Kafka 和 Zookeeper 并配置 SASL 认证机制。这个配置将确保 Kafka 和 Zookeeper 的通信通过SASL/PLAIN认证进行。通过 Docker Compose 可以轻松启动和管理 Kafka 集群,并保证高效的部署。

jkzyx123的博客 3046

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

【kafka-ui】支持kafka with kraft的可视化集群管理工具

支持kafka3.3.1的kafka可视化客户端,并且可以连接带认证的kafka集群

Aspirin's Nest 1万+
上一篇: 【kafka-ui】支持kafka with kraft的可视化集群管理工具
下一篇: kafka SSL认证
iFence
博客等级 码龄9年 8051粉丝 111原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值