kafka安全概述

    原创
半兽人 发表于: 2016-05-03   最后更新时间: 2019-10-17  

7.1 安全概述

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

  1. broker使用SSLSASL(Kerberos),验证客户端(生产者或消费者)、其他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. client的read/write操作验证。

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

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

注意:

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



您需要解锁本帖隐藏内容请: 点击这里
本帖隐藏的内容




上一条: kafka的Java版本
下一条: kafka使用SSL加密和认证

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

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

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

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

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

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

                  谢谢老师了

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