summaryrefslogtreecommitdiff
path: root/qpid/java/broker/src
diff options
context:
space:
mode:
authorRobert Gemmell <robbie@apache.org>2011-07-21 10:57:07 +0000
committerRobert Gemmell <robbie@apache.org>2011-07-21 10:57:07 +0000
commit9bae28b28d9c6dc41f8bbb1590792e6e75567a8e (patch)
treeef3021e47a4aa15148286826816507b1ab014798 /qpid/java/broker/src
parent66e1048af0c740632764a6ce8004a773eeb01f42 (diff)
downloadqpid-python-9bae28b28d9c6dc41f8bbb1590792e6e75567a8e.tar.gz
QPID-3255: update management console to remove redundant user management functionality, move legacy methods from UserManagement to an extension interface
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1149109 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'qpid/java/broker/src')
-rw-r--r--qpid/java/broker/src/main/java/org/apache/qpid/server/security/auth/management/AMQUserManagementMBean.java27
-rw-r--r--qpid/java/broker/src/main/java/org/apache/qpid/server/security/auth/manager/PrincipalDatabaseAuthenticationManager.java4
-rw-r--r--qpid/java/broker/src/test/java/org/apache/qpid/server/management/AMQUserManagementMBeanTest.java34
3 files changed, 5 insertions, 60 deletions
diff --git a/qpid/java/broker/src/main/java/org/apache/qpid/server/security/auth/management/AMQUserManagementMBean.java b/qpid/java/broker/src/main/java/org/apache/qpid/server/security/auth/management/AMQUserManagementMBean.java
index a839315bcc..208130379e 100644
--- a/qpid/java/broker/src/main/java/org/apache/qpid/server/security/auth/management/AMQUserManagementMBean.java
+++ b/qpid/java/broker/src/main/java/org/apache/qpid/server/security/auth/management/AMQUserManagementMBean.java
@@ -91,15 +91,10 @@ public class AMQUserManagementMBean extends AMQManagedObject implements UserMana
public boolean setPassword(String username, String password)
{
- return setPassword(username, password.toCharArray());
- }
-
- public boolean setPassword(String username, char[] password)
- {
try
{
//delegate password changes to the Principal Database
- return _principalDatabase.updatePassword(new UsernamePrincipal(username), password);
+ return _principalDatabase.updatePassword(new UsernamePrincipal(username), password.toCharArray());
}
catch (AccountNotFoundException e)
{
@@ -108,11 +103,6 @@ public class AMQUserManagementMBean extends AMQManagedObject implements UserMana
}
}
- public boolean setRights(String username, boolean read, boolean write, boolean admin)
- {
- throw new UnsupportedOperationException("Support for setting access rights no longer supported.");
- }
-
public boolean createUser(String username, String password)
{
if (_principalDatabase.createPrincipal(new UsernamePrincipal(username), password.toCharArray()))
@@ -122,20 +112,6 @@ public class AMQUserManagementMBean extends AMQManagedObject implements UserMana
return false;
}
-
- public boolean createUser(String username, String password, boolean read, boolean write, boolean admin)
- {
- if (read || write || admin)
- {
- throw new UnsupportedOperationException("Support for setting access rights to true no longer supported.");
- }
- return createUser(username, password);
- }
-
- public boolean createUser(String username, char[] password, boolean read, boolean write, boolean admin)
- {
- return createUser(username, new String(password), read, write, admin);
- }
public boolean deleteUser(String username)
{
@@ -181,7 +157,6 @@ public class AMQUserManagementMBean extends AMQManagedObject implements UserMana
for (Principal user : users)
{
// Create header attributes list
-
// Read,Write,Admin items are depcreated and we return always false.
Object[] itemData = {user.getName(), false, false, false};
CompositeData messageData = new CompositeDataSupport(_userDataType, COMPOSITE_ITEM_NAMES.toArray(new String[COMPOSITE_ITEM_NAMES.size()]), itemData);
diff --git a/qpid/java/broker/src/main/java/org/apache/qpid/server/security/auth/manager/PrincipalDatabaseAuthenticationManager.java b/qpid/java/broker/src/main/java/org/apache/qpid/server/security/auth/manager/PrincipalDatabaseAuthenticationManager.java
index de0fd3d4e2..1945c2e15f 100644
--- a/qpid/java/broker/src/main/java/org/apache/qpid/server/security/auth/manager/PrincipalDatabaseAuthenticationManager.java
+++ b/qpid/java/broker/src/main/java/org/apache/qpid/server/security/auth/manager/PrincipalDatabaseAuthenticationManager.java
@@ -207,6 +207,8 @@ public class PrincipalDatabaseAuthenticationManager implements AuthenticationMan
{
_logger.warn("No additional SASL providers registered.");
}
+
+ registerManagement();
}
private void initialiseAuthenticationMechanisms(Map<String, Class<? extends SaslServerFactory>> providerMap, PrincipalDatabase database)
@@ -326,6 +328,8 @@ public class PrincipalDatabaseAuthenticationManager implements AuthenticationMan
{
_mechanisms = null;
Security.removeProvider(PROVIDER_NAME);
+
+ unregisterManagement();
}
private PrincipalDatabase createPrincipalDatabaseImpl(final String pdClazz) throws ConfigurationException
diff --git a/qpid/java/broker/src/test/java/org/apache/qpid/server/management/AMQUserManagementMBeanTest.java b/qpid/java/broker/src/test/java/org/apache/qpid/server/management/AMQUserManagementMBeanTest.java
index 21f79e4b69..f3ee2707b0 100644
--- a/qpid/java/broker/src/test/java/org/apache/qpid/server/management/AMQUserManagementMBeanTest.java
+++ b/qpid/java/broker/src/test/java/org/apache/qpid/server/management/AMQUserManagementMBeanTest.java
@@ -102,13 +102,6 @@ public class AMQUserManagementMBeanTest extends InternalBrokerBaseCase
assertEquals("Unexpected number of users before test", 1,_amqumMBean.viewUsers().size());
}
- public void testFiveArgCreateUserWithNegativeRightsRemainsSupported()
- {
- assertEquals("Unexpected number of users before test", 1,_amqumMBean.viewUsers().size());
- assertTrue("Create should return true to flag successful create", _amqumMBean.createUser("newuser", "mypass".toCharArray(), false, false, false));
- assertEquals("Unexpected number of users before test", 2,_amqumMBean.viewUsers().size());
- }
-
public void testSetPassword()
{
assertTrue("Set password should return true to flag successful change", _amqumMBean.setPassword(TEST_USERNAME, "newpassword"));
@@ -137,33 +130,6 @@ public class AMQUserManagementMBeanTest extends InternalBrokerBaseCase
assertEquals(false, userRec.get(UserManagement.RIGHTS_ADMIN));
}
- // TEST DEPRECATED METHODS
- public void testFiveArgCreateUserWithPositiveRightsThrowsUnsupportedOperation()
- {
- try
- {
- _amqumMBean.createUser(TEST_USERNAME, "mypass", true, false, false);
- fail("Exception not thrown");
- }
- catch (UnsupportedOperationException uoe)
- {
- // PASS
- }
- }
-
- public void testSetRightsThrowsUnsupportedOperation()
- {
- try
- {
- _amqumMBean.setRights("", false, false, false);
- fail("Exception not thrown");
- }
- catch(UnsupportedOperationException nie)
- {
- // PASS
- }
- }
-
// ============================ Utility methods =========================
private void loadFreshTestPasswordFile()