@@ -21,7 +21,7 @@ import java.security.PrivilegedExceptionAction
21
21
22
22
import org .apache .hadoop .security .UserGroupInformation
23
23
import org .apache .kafka .clients .CommonClientConfigs
24
- import org .apache .kafka .common .config .SaslConfigs
24
+ import org .apache .kafka .common .config .{ SaslConfigs , SslConfigs }
25
25
import org .apache .kafka .common .security .auth .SecurityProtocol .{SASL_PLAINTEXT , SASL_SSL , SSL }
26
26
27
27
import org .apache .spark .{SparkConf , SparkFunSuite }
@@ -83,11 +83,11 @@ class KafkaTokenUtilSuite extends SparkFunSuite with KafkaDelegationTokenTest {
83
83
=== bootStrapServers)
84
84
assert(adminClientProperties.get(CommonClientConfigs .SECURITY_PROTOCOL_CONFIG )
85
85
=== SASL_PLAINTEXT .name)
86
- assert(! adminClientProperties.containsKey(" ssl.truststore.location " ))
87
- assert(! adminClientProperties.containsKey(" ssl.truststore.password " ))
88
- assert(! adminClientProperties.containsKey(" ssl.keystore.location " ))
89
- assert(! adminClientProperties.containsKey(" ssl.keystore.password " ))
90
- assert(! adminClientProperties.containsKey(" ssl.key.password " ))
86
+ assert(! adminClientProperties.containsKey(SslConfigs . SSL_TRUSTSTORE_LOCATION_CONFIG ))
87
+ assert(! adminClientProperties.containsKey(SslConfigs . SSL_TRUSTSTORE_PASSWORD_CONFIG ))
88
+ assert(! adminClientProperties.containsKey(SslConfigs . SSL_KEYSTORE_LOCATION_CONFIG ))
89
+ assert(! adminClientProperties.containsKey(SslConfigs . SSL_KEYSTORE_PASSWORD_CONFIG ))
90
+ assert(! adminClientProperties.containsKey(SslConfigs . SSL_KEY_PASSWORD_CONFIG ))
91
91
}
92
92
93
93
test(" createAdminClientProperties with SASL_SSL protocol should include truststore config" ) {
@@ -105,11 +105,13 @@ class KafkaTokenUtilSuite extends SparkFunSuite with KafkaDelegationTokenTest {
105
105
=== bootStrapServers)
106
106
assert(adminClientProperties.get(CommonClientConfigs .SECURITY_PROTOCOL_CONFIG )
107
107
=== SASL_SSL .name)
108
- assert(adminClientProperties.get(" ssl.truststore.location" ) === trustStoreLocation)
109
- assert(adminClientProperties.get(" ssl.truststore.password" ) === trustStorePassword)
110
- assert(! adminClientProperties.containsKey(" ssl.keystore.location" ))
111
- assert(! adminClientProperties.containsKey(" ssl.keystore.password" ))
112
- assert(! adminClientProperties.containsKey(" ssl.key.password" ))
108
+ assert(adminClientProperties.get(SslConfigs .SSL_TRUSTSTORE_LOCATION_CONFIG )
109
+ === trustStoreLocation)
110
+ assert(adminClientProperties.get(SslConfigs .SSL_TRUSTSTORE_PASSWORD_CONFIG )
111
+ === trustStorePassword)
112
+ assert(! adminClientProperties.containsKey(SslConfigs .SSL_KEYSTORE_LOCATION_CONFIG ))
113
+ assert(! adminClientProperties.containsKey(SslConfigs .SSL_KEYSTORE_PASSWORD_CONFIG ))
114
+ assert(! adminClientProperties.containsKey(SslConfigs .SSL_KEY_PASSWORD_CONFIG ))
113
115
}
114
116
115
117
test(" createAdminClientProperties with SSL protocol should include keystore and truststore " +
@@ -128,11 +130,13 @@ class KafkaTokenUtilSuite extends SparkFunSuite with KafkaDelegationTokenTest {
128
130
=== bootStrapServers)
129
131
assert(adminClientProperties.get(CommonClientConfigs .SECURITY_PROTOCOL_CONFIG )
130
132
=== SSL .name)
131
- assert(adminClientProperties.get(" ssl.truststore.location" ) === trustStoreLocation)
132
- assert(adminClientProperties.get(" ssl.truststore.password" ) === trustStorePassword)
133
- assert(adminClientProperties.get(" ssl.keystore.location" ) === keyStoreLocation)
134
- assert(adminClientProperties.get(" ssl.keystore.password" ) === keyStorePassword)
135
- assert(adminClientProperties.get(" ssl.key.password" ) === keyPassword)
133
+ assert(adminClientProperties.get(SslConfigs .SSL_TRUSTSTORE_LOCATION_CONFIG )
134
+ === trustStoreLocation)
135
+ assert(adminClientProperties.get(SslConfigs .SSL_TRUSTSTORE_PASSWORD_CONFIG )
136
+ === trustStorePassword)
137
+ assert(adminClientProperties.get(SslConfigs .SSL_KEYSTORE_LOCATION_CONFIG ) === keyStoreLocation)
138
+ assert(adminClientProperties.get(SslConfigs .SSL_KEYSTORE_PASSWORD_CONFIG ) === keyStorePassword)
139
+ assert(adminClientProperties.get(SslConfigs .SSL_KEY_PASSWORD_CONFIG ) === keyPassword)
136
140
}
137
141
138
142
test(" createAdminClientProperties with global config should not set dynamic jaas config" ) {
@@ -165,7 +169,10 @@ class KafkaTokenUtilSuite extends SparkFunSuite with KafkaDelegationTokenTest {
165
169
assert(adminClientProperties.containsKey(SaslConfigs .SASL_MECHANISM ))
166
170
val saslJaasConfig = adminClientProperties.getProperty(SaslConfigs .SASL_JAAS_CONFIG )
167
171
assert(saslJaasConfig.contains(" Krb5LoginModule required" ))
172
+ assert(saslJaasConfig.contains(s " debug= " ))
168
173
assert(saslJaasConfig.contains(" useKeyTab=true" ))
174
+ assert(saslJaasConfig.contains(s """ keyTab=" $keytab" """ ))
175
+ assert(saslJaasConfig.contains(s """ principal=" $principal" """ ))
169
176
}
170
177
171
178
test(" createAdminClientProperties without keytab should set ticket cache dynamic jaas config" ) {
@@ -181,6 +188,7 @@ class KafkaTokenUtilSuite extends SparkFunSuite with KafkaDelegationTokenTest {
181
188
assert(adminClientProperties.containsKey(SaslConfigs .SASL_MECHANISM ))
182
189
val saslJaasConfig = adminClientProperties.getProperty(SaslConfigs .SASL_JAAS_CONFIG )
183
190
assert(saslJaasConfig.contains(" Krb5LoginModule required" ))
191
+ assert(saslJaasConfig.contains(s " debug= " ))
184
192
assert(saslJaasConfig.contains(" useTicketCache=true" ))
185
193
}
186
194
0 commit comments