kafka安全概述

原创
半兽人 发表于: 2016-05-03   最后更新时间: 2022-09-01 13:57:22  
{{totalSubscript}} 订阅, 28,567 游览

7.1 安全概述

在发布的 0.9.0.0 版本中,kafka增加了许多安全性功能,目前支持以下的安全措施,可以组合使用也可以分开使用。

  1. broker使用SSLSASL(简单验证和安全层,Simple Authentication and Security Layer),验证客户端(生产者或消费者)、其他broker或工具的连接。支持以下的SASL机制:

    • SASL/GSSAPI (Kerberos) - 从0.9.0.0版本开始

    • SASL/PLAIN - 从0.10.0.0版本开始

    • SASL/SCRAM-SHA-256SASL/SCRAM-SHA-512 - 从0.10.2.0版本开始

    • SASL/OAUTHBEARER - 从2.0版本开始

  2. 从broker连接到Zookeeper的身份验证。

  3. broker和client之间的数据传输,broker之间,或使用SSL的broker和工具之间的数据加密(注意,当SSL时,性能会降低,其幅度取决于CPU类型和JVM)。

  4. 客户端的read/write(读/写)操作验证。

  5. 验证是插拔的,支持外部认证服务集成。

值得注意的是,安全是可选的。支持非安全集群,以及经过身份验证,未认证,加密和未加密客户端的组合。下面的指南将介绍如何配置和使用client和broker的安全特性。

注意:

如果对加密基础不牢靠的,可以先看看这篇文章:

更新于 2022-09-01
在线,11分钟前登录

清风如水 6年前

老师,您好!
kafka-0.8.2.2 安全验证用那种方式?

使用ssl,只能使用单一用户吗?
Kerberos对于kafka,如何做HA,如何绑定多个broker,一个broker宕掉,也不影响kafka的正常使用

半兽人 -> 清风如水 6年前

首先安全和broker集群没影响的,只是互相通讯加密效验而已。
1、你可以考虑集群之间使用非加密通讯,通过网络来保证安全(这样效率也最优)
2、新开其他的端口,让集群与客户端或zk之间使用加密。
3、0.8.2.2版本没有安全功能的。
4、ssl是单用户?游览器你也装了很多证书,一样的额。

清风如水 -> 半兽人 6年前

老师,您好,我知道kafka-0.8.2.2 没有安全验证,你有什么好的方式增加加权限管理功能
 我这用的kafka-0.8.2.2, 我的leader强制要求增加权限管理功能,您有好的建议吗?

半兽人 -> 清风如水 6年前

kafka0.8版本都需要通过zk进行一些列操作,你可以看下zookeeper安全验证。

清风如水 -> 半兽人 6年前

老师,您好,我研究了两天,无论是使用zookeeper,还是其他分布式鉴权方方式,对于kafka0.8都需要修改核心代码。
                     风险和工作量都太大

半兽人 -> 清风如水 6年前

不如升kafka。。。

清风如水 -> 半兽人 6年前

我也是这样认为的
我搭建的cdh,本来用的是cdh自带的spark1.6,kafka2.0;但是我的leader认为cdh集成的不安全,把saprk和kafka独立出来了,kafka版本变成了0.8.2.2,很多功能都是在这个基础开发的,升级成本也很大
唉,现在要我做kafka权限管理,我是无法下手了

谢谢老师了

半兽人 -> 清风如水 6年前

同情你,最土的还是让网络同学做ip端口级别的隔离吧。

chris chelio 6年前

您好,关于7.1.2 “从broker连接到Zookeeper的身份验证” zk设置了acl,大神方便详细讲解一下吗

查看kafka更多相关的文章或提一个关于kafka的问题,也可以与我们一起分享文章