diff --git a/kyuubi-hive-jdbc/src/main/java/org/apache/kyuubi/jdbc/hive/KyuubiConnection.java b/kyuubi-hive-jdbc/src/main/java/org/apache/kyuubi/jdbc/hive/KyuubiConnection.java index 8b6c8f50d..16347771d 100644 --- a/kyuubi-hive-jdbc/src/main/java/org/apache/kyuubi/jdbc/hive/KyuubiConnection.java +++ b/kyuubi-hive-jdbc/src/main/java/org/apache/kyuubi/jdbc/hive/KyuubiConnection.java @@ -930,7 +930,7 @@ public class KyuubiConnection implements SQLConnection, KyuubiLoggable { AccessControlContext context = AccessController.getContext(); return Subject.getSubject(context); } else if (isTgtCacheAuthMode()) { - String ticketCache = sessConfMap.get(AUTH_KYUUBI_CLIENT_TICKET_CACHE); + String ticketCache = sessConfMap.getOrDefault(AUTH_KYUUBI_CLIENT_TICKET_CACHE, ""); return KerberosAuthenticationManager.getTgtCacheAuthentication(ticketCache).getSubject(); } else { // This should never happen diff --git a/kyuubi-hive-jdbc/src/main/java/org/apache/kyuubi/jdbc/hive/auth/KerberosAuthenticationManager.java b/kyuubi-hive-jdbc/src/main/java/org/apache/kyuubi/jdbc/hive/auth/KerberosAuthenticationManager.java index 6a639c7d6..065b6a295 100644 --- a/kyuubi-hive-jdbc/src/main/java/org/apache/kyuubi/jdbc/hive/auth/KerberosAuthenticationManager.java +++ b/kyuubi-hive-jdbc/src/main/java/org/apache/kyuubi/jdbc/hive/auth/KerberosAuthenticationManager.java @@ -17,6 +17,8 @@ package org.apache.kyuubi.jdbc.hive.auth; +import static java.util.Objects.requireNonNull; + import java.util.Map; import java.util.concurrent.ConcurrentHashMap; @@ -29,6 +31,7 @@ public class KerberosAuthenticationManager { new ConcurrentHashMap<>(); public static CachingKerberosAuthentication getTgtCacheAuthentication(String ticketCache) { + requireNonNull(ticketCache, "ticketCache is null"); return TGT_CACHE_AUTHENTICATION_CACHE.computeIfAbsent( ticketCache, key -> {