summaryrefslogtreecommitdiff
path: root/qpid/java/broker/src/test
diff options
context:
space:
mode:
authorKeith Wall <kwall@apache.org>2012-06-10 14:25:08 +0000
committerKeith Wall <kwall@apache.org>2012-06-10 14:25:08 +0000
commit4fdef8fc1a83bedd6a128460a968229cf3a62acc (patch)
tree7d49f5984ef5c5140841d8e17cea1ab3ca8c9891 /qpid/java/broker/src/test
parent3e2ffb7111872b8fbd04fa3bb20753a022791e2b (diff)
downloadqpid-python-4fdef8fc1a83bedd6a128460a968229cf3a62acc.tar.gz
QPID-3997: [Java Broker] Allow assignment of AuthenticationManager on a per-port basis
Address review comments from Rob Godfrey. git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1348603 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java/broker/src/test')
-rw-r--r--qpid/java/broker/src/test/java/org/apache/qpid/server/configuration/ServerConfigurationTest.java70
-rw-r--r--qpid/java/broker/src/test/java/org/apache/qpid/server/security/auth/manager/AuthenticationManagerRegistryTest.java8
-rw-r--r--qpid/java/broker/src/test/java/org/apache/qpid/server/util/TestApplicationRegistry.java2
3 files changed, 74 insertions, 6 deletions
diff --git a/qpid/java/broker/src/test/java/org/apache/qpid/server/configuration/ServerConfigurationTest.java b/qpid/java/broker/src/test/java/org/apache/qpid/server/configuration/ServerConfigurationTest.java
index 958cb23da0..c2d2eb37c1 100644
--- a/qpid/java/broker/src/test/java/org/apache/qpid/server/configuration/ServerConfigurationTest.java
+++ b/qpid/java/broker/src/test/java/org/apache/qpid/server/configuration/ServerConfigurationTest.java
@@ -1682,6 +1682,75 @@ public class ServerConfigurationTest extends QpidTestCase
assertEquals(AmqpProtocolVersion.v0_10, _serverConfig.getDefaultSupportedProtocolReply());
}
+ public void testDefaultAuthenticationManager() throws Exception
+ {
+ // Check default
+ _serverConfig.initialise();
+ assertNull("unexpected default value", _serverConfig.getDefaultAuthenticationManager());
+
+ // Check values we set
+ String testAuthManager = "myauthmanager";
+ _config.addProperty("security.default-auth-manager", testAuthManager);
+ _serverConfig = new ServerConfiguration(_config);
+ _serverConfig.initialise();
+ assertEquals(testAuthManager, _serverConfig.getDefaultAuthenticationManager());
+ }
+
+ public void testPortAuthenticationMappingsDefault() throws Exception
+ {
+ _serverConfig.initialise();
+ assertEquals("unexpected default number of port/authmanager mappings", 0, _serverConfig.getPortAuthenticationMappings().size());
+ }
+
+ public void testPortAuthenticationMappingsWithSingleMapping() throws Exception
+ {
+ String testAuthManager = "myauthmanager";
+ _config.addProperty("security.port-mappings.port-mapping.port", 1234);
+ _config.addProperty("security.port-mappings.port-mapping.auth-manager", testAuthManager);
+
+ _serverConfig = new ServerConfiguration(_config);
+ _serverConfig.initialise();
+ assertEquals("unexpected number of port/authmanager mappings", 1, _serverConfig.getPortAuthenticationMappings().size());
+ assertEquals("unexpected mapping for port", testAuthManager, _serverConfig.getPortAuthenticationMappings().get(1234));
+ }
+
+ public void testPortAuthenticationMappingsWithManyMapping() throws Exception
+ {
+ String testAuthManager1 = "myauthmanager1";
+ String testAuthManager2 = "myauthmanager2";
+ _config.addProperty("security.port-mappings.port-mapping(-1).port", 1234);
+ _config.addProperty("security.port-mappings.port-mapping.auth-manager", testAuthManager1);
+
+ _config.addProperty("security.port-mappings.port-mapping(-1).port", 2345);
+ _config.addProperty("security.port-mappings.port-mapping.auth-manager", testAuthManager2);
+
+ _serverConfig = new ServerConfiguration(_config);
+ _serverConfig.initialise();
+
+ assertEquals("unexpected number of port/authmanager mappings", 2, _serverConfig.getPortAuthenticationMappings().size());
+ assertEquals("unexpected mapping for port", testAuthManager1, _serverConfig.getPortAuthenticationMappings().get(1234));
+ assertEquals("unexpected mapping for port", testAuthManager2, _serverConfig.getPortAuthenticationMappings().get(2345));
+ }
+
+ public void testPortAuthenticationMappingWithMissingAuthManager() throws Exception
+ {
+ _config.addProperty("security.port-mappings.port-mapping(-1).port", 1234);
+ // no auth manager defined for port
+ _serverConfig = new ServerConfiguration(_config);
+ try
+ {
+ _serverConfig.initialise();
+ fail("Exception not thrown");
+ }
+ catch(ConfigurationException ce)
+ {
+ // PASS
+ assertEquals("Incorrect error message",
+ "Validation error: Each port-mapping must have exactly one port and exactly one auth-manager.",
+ ce.getMessage());
+ }
+ }
+
/**
* Convenience method to output required security preamble for broker config
*/
@@ -1699,7 +1768,6 @@ public class ServerConfigurationTest extends QpidTestCase
out.write("\t\t\t\t\t</attribute>\n");
out.write("\t\t\t\t</attributes>\n");
out.write("\t\t\t</principal-database>\n");
- out.write("\t\t\t<jmx-access>/dev/null</jmx-access>\n");
out.write("\t\t</pd-auth-manager>\n");
out.write("\t</security>\n");
}
diff --git a/qpid/java/broker/src/test/java/org/apache/qpid/server/security/auth/manager/AuthenticationManagerRegistryTest.java b/qpid/java/broker/src/test/java/org/apache/qpid/server/security/auth/manager/AuthenticationManagerRegistryTest.java
index 213039a7fb..efb8df3a38 100644
--- a/qpid/java/broker/src/test/java/org/apache/qpid/server/security/auth/manager/AuthenticationManagerRegistryTest.java
+++ b/qpid/java/broker/src/test/java/org/apache/qpid/server/security/auth/manager/AuthenticationManagerRegistryTest.java
@@ -189,7 +189,7 @@ public class AuthenticationManagerRegistryTest extends TestCase
AuthenticationManagerRegistry registry = new AuthenticationManagerRegistry(_serverConfiguration, _pluginManager);
- AuthenticationManager authenticationManager = registry.getAuthenticationManagerFor(new InetSocketAddress(1234));
+ AuthenticationManager authenticationManager = registry.getAuthenticationManager(new InetSocketAddress(1234));
assertEquals("TestAuthenticationManager1", authenticationManager.getMechanisms());
registry.close();
@@ -204,7 +204,7 @@ public class AuthenticationManagerRegistryTest extends TestCase
AuthenticationManagerRegistry registry = new AuthenticationManagerRegistry(_serverConfiguration, _pluginManager);
- AuthenticationManager authenticationManager = registry.getAuthenticationManagerFor(mock(SocketAddress.class));
+ AuthenticationManager authenticationManager = registry.getAuthenticationManager(mock(SocketAddress.class));
assertEquals("TestAuthenticationManager1", authenticationManager.getMechanisms());
registry.close();
@@ -227,10 +227,10 @@ public class AuthenticationManagerRegistryTest extends TestCase
AuthenticationManagerRegistry registry = new AuthenticationManagerRegistry(_serverConfiguration, _pluginManager);
- AuthenticationManager authenticationManager1 = registry.getAuthenticationManagerFor(new InetSocketAddress(unmappedPortNumber));
+ AuthenticationManager authenticationManager1 = registry.getAuthenticationManager(new InetSocketAddress(unmappedPortNumber));
assertEquals("TestAuthenticationManager1", authenticationManager1.getMechanisms());
- AuthenticationManager authenticationManager2 = registry.getAuthenticationManagerFor(new InetSocketAddress(mappedPortNumber));
+ AuthenticationManager authenticationManager2 = registry.getAuthenticationManager(new InetSocketAddress(mappedPortNumber));
assertEquals("TestAuthenticationManager2", authenticationManager2.getMechanisms());
registry.close();
diff --git a/qpid/java/broker/src/test/java/org/apache/qpid/server/util/TestApplicationRegistry.java b/qpid/java/broker/src/test/java/org/apache/qpid/server/util/TestApplicationRegistry.java
index 4bb468e823..9bd69e3889 100644
--- a/qpid/java/broker/src/test/java/org/apache/qpid/server/util/TestApplicationRegistry.java
+++ b/qpid/java/broker/src/test/java/org/apache/qpid/server/util/TestApplicationRegistry.java
@@ -96,7 +96,7 @@ public class TestApplicationRegistry extends ApplicationRegistry
}
@Override
- public AuthenticationManager getAuthenticationManagerFor(
+ public AuthenticationManager getAuthenticationManager(
SocketAddress address)
{
return pdam;