diff options
| author | Robert Gemmell <robbie@apache.org> | 2013-04-29 15:39:20 +0000 |
|---|---|---|
| committer | Robert Gemmell <robbie@apache.org> | 2013-04-29 15:39:20 +0000 |
| commit | 32dd95e7a08eed5865542904f6579e69e850b754 (patch) | |
| tree | e9880cbf5014fae7c3152911ff0030319d722208 /java | |
| parent | 56599e381b7e89ad4d97f44112f7f2cfd11e1f50 (diff) | |
| download | qpid-python-32dd95e7a08eed5865542904f6579e69e850b754.tar.gz | |
QPID-4753: set vhost SecurityManager _managementMode boolean to equal the parent/broker SecurityManager, validate the ACL file during onCreate to ensure it is usable before allowing it to be added
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1477155 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java')
2 files changed, 6 insertions, 1 deletions
diff --git a/java/broker-plugins/access-control/src/main/java/org/apache/qpid/server/security/access/plugins/DefaultAccessControl.java b/java/broker-plugins/access-control/src/main/java/org/apache/qpid/server/security/access/plugins/DefaultAccessControl.java index 451b1f9c40..6beeef2f18 100644 --- a/java/broker-plugins/access-control/src/main/java/org/apache/qpid/server/security/access/plugins/DefaultAccessControl.java +++ b/java/broker-plugins/access-control/src/main/java/org/apache/qpid/server/security/access/plugins/DefaultAccessControl.java @@ -91,13 +91,16 @@ public class DefaultAccessControl implements AccessControl @Override public void onCreate() { - //verify file exists if(_aclFile != null) { + //verify it exists if (!_aclFile.exists()) { throw new IllegalConfigurationException("ACL file '" + _aclFile + "' is not found"); } + + //verify it is parsable + new PlainConfiguration(_aclFile).load(); } } diff --git a/java/broker/src/main/java/org/apache/qpid/server/security/SecurityManager.java b/java/broker/src/main/java/org/apache/qpid/server/security/SecurityManager.java index 375b731d85..f0570943cf 100755 --- a/java/broker/src/main/java/org/apache/qpid/server/security/SecurityManager.java +++ b/java/broker/src/main/java/org/apache/qpid/server/security/SecurityManager.java @@ -137,6 +137,8 @@ public class SecurityManager implements ConfigurationChangeListener */ public SecurityManager(SecurityManager parent, String aclFile, String vhostName) { + _managementMode = parent._managementMode; + if(!_managementMode) { configureVirtualHostAclPlugin(aclFile, vhostName); |
