Python 卡夫卡认证和授权
我读过卡夫卡的文件 但我不明白。我可以使用Python生产者的用户名和密码吗Python 卡夫卡认证和授权,python,apache-kafka,Python,Apache Kafka,我读过卡夫卡的文件 但我不明白。我可以使用Python生产者的用户名和密码吗 可以指定任何制作者只能生成一个主题,如MySQL(制作者使用Python编写)是的,每个主题可以有user/pass。请参见授权和ACL 您可以使用SSL或SASL(卡夫卡的SASL支持)启用安全性: SASL/GSSAPI(Kerberos)-从版本0.9.0.0开始 SASL/PLAIN-从版本0.10.0.0开始 SASL/SCRAM-SHA-256和SASL/SCRAM-SHA-512-从版本0.10.2.0
可以指定任何制作者只能生成一个主题,如
MySQL
(制作者使用Python编写)是的,每个主题可以有user/pass。请参见授权和ACL
您可以使用SSL或SASL(卡夫卡的SASL支持)启用安全性:
- SASL/GSSAPI(Kerberos)-从版本0.9.0.0开始
- SASL/PLAIN-从版本0.10.0.0开始
- SASL/SCRAM-SHA-256和SASL/SCRAM-SHA-512-从版本0.10.2.0开始
- 卡夫卡巨蟒:
- 合流卡夫卡巨蟒:
关于授权,使用默认授权程序kafka.security.auth.SimpleClauthorizer,您可以将制作人限制为只能制作主题。卡夫卡的网站上的这一部分也详细记录了这一切 例如,对于SASL平原,默认情况下,主体名称是用于连接的用户名。使用以下命令,可以将用户
Alice
限制为只能生成名为testtopic
的主题:
bin/kafka-acls.sh --authorizer-properties zookeeper.connect=localhost:2181 --add --allow-principal User:Alice --producer --topic testtopic
你的意思是这样的:
topic=“测试”
sasl_机构=“普通”
username=“admin”
password=“pwd$”
安全协议=“SASL\U明文”
#context=ssl.create\u default\u context()
#context.options&=ssl.OP\u NO\u TLSv1
#context.options&=ssl.OP\u NO\u TLSv1\u 1
consumer=KafkaConsumer(主题,bootstrap_servers='kafka1:9092',
#api_版本=(0,10),
安全协议=安全协议,
#ssl_context=context,
#ssl\u check\u hostname=True,
#ssl_cafile='../keys/CARoot.pem',
sasl_机制=sasl_机制,
sasl_plain_username=用户名,
sasl_普通密码=密码)
#ssl_certfile='../keys/certificate.pem',
#ssl_keyfile='../keys/key.pem')#,api_版本=(0,10))
bin/kafka-acls.sh --authorizer-properties zookeeper.connect=localhost:2181 --add --allow-principal User:Alice --producer --topic testtopic