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 | c5e7ad88fdb11e8c80d67989417a049e88142985 (patch) | |
| tree | e9880cbf5014fae7c3152911ff0030319d722208 /java | |
| parent | d7423a45e1c98d313d742b99276e31d898397a73 (diff) | |
| download | qpid-python-c5e7ad88fdb11e8c80d67989417a049e88142985.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); |
