From c7ecaea39f653d06a02c064626c7bee4452c9a7c Mon Sep 17 00:00:00 2001 From: ShijunK Date: Thu, 29 Sep 2016 11:10:38 -0400 Subject: [PATCH] Avoid pass null principal name when use cached tkt --- .../security/kerberos/client/KerberosRestTemplate.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/spring-security-kerberos-client/src/main/java/org/springframework/security/kerberos/client/KerberosRestTemplate.java b/spring-security-kerberos-client/src/main/java/org/springframework/security/kerberos/client/KerberosRestTemplate.java index 8aa2b31..fe2b278 100644 --- a/spring-security-kerberos-client/src/main/java/org/springframework/security/kerberos/client/KerberosRestTemplate.java +++ b/spring-security-kerberos-client/src/main/java/org/springframework/security/kerberos/client/KerberosRestTemplate.java @@ -214,7 +214,9 @@ public class KerberosRestTemplate extends RestTemplate { private LoginContext buildLoginContext() throws LoginException { ClientLoginConfig loginConfig = new ClientLoginConfig(keyTabLocation, userPrincipal, password, loginOptions); Set princ = new HashSet(1); - princ.add(new KerberosPrincipal(userPrincipal)); + if (userPrincipal != null) { + princ.add(new KerberosPrincipal(userPrincipal)); + } Subject sub = new Subject(false, princ, new HashSet(), new HashSet()); CallbackHandler callbackHandler = new CallbackHandlerImpl(userPrincipal, password); LoginContext lc = new LoginContext("", sub, callbackHandler, loginConfig);