NO-JIRA: Log enviornment and JVM settings in Kerberos tests for debug purposes
diff --git a/broker-core/src/test/java/org/apache/qpid/server/security/auth/manager/KerberosAuthenticationManagerTest.java b/broker-core/src/test/java/org/apache/qpid/server/security/auth/manager/KerberosAuthenticationManagerTest.java
index eea1eef..6e89da7 100644
--- a/broker-core/src/test/java/org/apache/qpid/server/security/auth/manager/KerberosAuthenticationManagerTest.java
+++ b/broker-core/src/test/java/org/apache/qpid/server/security/auth/manager/KerberosAuthenticationManagerTest.java
@@ -120,7 +120,7 @@
when(_broker.getChildren(AuthenticationProvider.class))
.thenReturn(Collections.singleton(_kerberosAuthenticationProvider));
- UTILS.debugConfig();
+ KerberosUtilities.debugConfig();
}
@Test
@@ -201,18 +201,22 @@
final LoginContext lc = UTILS.createKerberosKeyTabLoginContext(getTestName(),
CLIENT_PRINCIPAL_FULL_NAME,
_clientKeyTabFile);
+
+ Subject clientSubject = null;
try
{
lc.login();
-
- final Subject clientSubject = lc.getSubject();
+ clientSubject = lc.getSubject();
debug("LoginContext subject {}", clientSubject);
final SaslClient saslClient = createSaslClient(clientSubject);
return performNegotiation(clientSubject, saslClient, negotiator);
}
finally
{
- lc.logout();
+ if (clientSubject != null)
+ {
+ lc.logout();
+ }
}
}
diff --git a/broker-core/src/test/java/org/apache/qpid/server/security/auth/manager/SpnegoAuthenticatorTest.java b/broker-core/src/test/java/org/apache/qpid/server/security/auth/manager/SpnegoAuthenticatorTest.java
index d3f8342..7fadbf7 100644
--- a/broker-core/src/test/java/org/apache/qpid/server/security/auth/manager/SpnegoAuthenticatorTest.java
+++ b/broker-core/src/test/java/org/apache/qpid/server/security/auth/manager/SpnegoAuthenticatorTest.java
@@ -32,7 +32,9 @@
import java.net.URLDecoder;
import java.security.Principal;
import java.util.Base64;
+import java.util.LinkedHashMap;
import java.util.Map;
+import java.util.Properties;
import org.ietf.jgss.GSSException;
import org.junit.Before;
@@ -81,6 +83,8 @@
assertNotNull(resource);
SYSTEM_PROPERTY_SETTER.setSystemProperty("java.security.auth.login.config", URLDecoder.decode(resource.getPath(), UTF_8));
SYSTEM_PROPERTY_SETTER.setSystemProperty("javax.security.auth.useSubjectCredsOnly", "false");
+
+ KerberosUtilities.debugConfig();
}
@Before
diff --git a/broker-core/src/test/java/org/apache/qpid/server/test/KerberosUtilities.java b/broker-core/src/test/java/org/apache/qpid/server/test/KerberosUtilities.java
index 74cb2d2..0e65988 100644
--- a/broker-core/src/test/java/org/apache/qpid/server/test/KerberosUtilities.java
+++ b/broker-core/src/test/java/org/apache/qpid/server/test/KerberosUtilities.java
@@ -24,7 +24,9 @@
import java.io.File;
import java.util.Collections;
import java.util.HashMap;
+import java.util.LinkedHashMap;
import java.util.Map;
+import java.util.Properties;
import javax.security.auth.DestroyFailedException;
import javax.security.auth.Subject;
@@ -228,6 +230,12 @@
{
LOGGER.warn("JVM system property 'java.security.krb5.conf' is not set");
}
+
+ Map<String, String> env = new LinkedHashMap<>(System.getenv());
+ env.forEach((k, v) -> debug("Environment setting: {}={}", k ,v));
+
+ Properties properties = new Properties(System.getProperties());
+ properties.forEach((k, v) -> debug("JVM setting: {}={}", k ,v));
}
}