Kafka安全认证整理
Jaas文件说明
1 | // sasl |
1 | // kerberos |
最后一行和倒数第二行要以分号结尾
运行配置
以程序方式运行
程序运行时要将krb5和jaas文件的路径设置在系统的环境变量里
1
2System.setProperty("java.security.auth.login.config", "src/main/resources/jaas.conf");
System.setProperty("java.security.krb5.conf", "src/main/resources/krb5.conf");或者
1
props.put("sasl.jaas.config", PlainLoginModule.class.getName() + " required username=\"" + username + "\" password=\"" + password + "\";");
以脚本方式运行
1
-Djava.security.krb5.conf=./krb5.conf -Djava.security.auth.login.config=./jaas.conf
sasl认证时不用配krb5
kinit -kt ./user.keytab MYPRINCIPAL@HADOOP.COM
SASL + ACL
properties文件中配置1
2security.protocol=SASL_PLAINTEXT
sasl.mechanism=PLAIN
使用kafka-acls.sh脚本对用户权限进行授权
Kerberos
properties文件中配置1
2
3security.protocol=SASL_PLAINTEXT
sasl.mechanism=GSSAPI
sasl.kerberos.service.name=kafka