Details
-
Task
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
2.1.0, 3.0.0
-
None
Description
KafkaUtils doesn't always enclose property values in double-quotes, thus, setting invalid dynamic JAAS config for token auth in some cases.
Faced this issue with Spark Atlas Connector trying to configure Atlas client to use delegation tokens. The following configuration is not handled properly:
atlas.jaas.KafkaClient.option.username=30CQ4q1hQMy0dB6X0eXfxQ atlas.jaas.KafkaClient.option.password=KdaUQ4FlKWlDxwQrAeFGUVbb6sR0P+zoqOZDZjtIRP1wseXbSbhiTjz3QI9Ur9o4LTYZSv8TE1QqUC4FSwnoTA==
and results in the following error:
java.lang.IllegalArgumentException: Value not specified for key 'null' in JAAS config at org.apache.kafka.common.security.JaasConfig.parseAppConfigurationEntry(JaasConfig.java:116) at org.apache.kafka.common.security.JaasConfig.<init>(JaasConfig.java:63) at org.apache.kafka.common.security.JaasContext.load(JaasContext.java:90) at org.apache.kafka.common.security.JaasContext.loadClientContext(JaasContext.java:84)
KafkaUtils should always enclose property values in double-quotes, since unenclosed digits and '+' sign can not be parsed by Kafka JaasConfig.
Attachments
Issue Links
- links to