diff options
Diffstat (limited to 'qpid/java')
| -rwxr-xr-x | qpid/java/broker-core/src/main/java/org/apache/qpid/server/security/SecurityManager.java | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/security/SecurityManager.java b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/security/SecurityManager.java index 922d64e6ee..754f6074e3 100755 --- a/qpid/java/broker-core/src/main/java/org/apache/qpid/server/security/SecurityManager.java +++ b/qpid/java/broker-core/src/main/java/org/apache/qpid/server/security/SecurityManager.java @@ -532,6 +532,13 @@ public class SecurityManager public void authoriseUserUpdate(final String userName) { + AuthenticatedPrincipal principal = getCurrentUser(); + if (principal != null && principal.getName().equals(userName)) + { + // allow user to update its own data + return; + } + final Operation operation = Operation.UPDATE; if(! checkAllPlugins(new AccessCheck() { |
