summaryrefslogtreecommitdiff
path: root/java/broker/src/main/java/org/apache
diff options
context:
space:
mode:
authorRobert Gemmell <robbie@apache.org>2012-02-16 11:49:14 +0000
committerRobert Gemmell <robbie@apache.org>2012-02-16 11:49:14 +0000
commit1c852f049a9b21ed0ef614f8481710f9071933ae (patch)
treebe5925ba28653464800f3fcf552f5408185999fd /java/broker/src/main/java/org/apache
parenta3b5991ac1f4d0e7ffd856ae714c089bb0ed238a (diff)
downloadqpid-python-1c852f049a9b21ed0ef614f8481710f9071933ae.tar.gz
QPID-3844: allow queryMBeans to succeed without ACL checking, tools like JConsole / Qpid MC need this to function at all
Applied patch from Oleksandr Rudyy <orudyy@gmail.com> git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1244946 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'java/broker/src/main/java/org/apache')
-rw-r--r--java/broker/src/main/java/org/apache/qpid/server/management/MBeanInvocationHandlerImpl.java7
1 files changed, 4 insertions, 3 deletions
diff --git a/java/broker/src/main/java/org/apache/qpid/server/management/MBeanInvocationHandlerImpl.java b/java/broker/src/main/java/org/apache/qpid/server/management/MBeanInvocationHandlerImpl.java
index 2aeef1c2a4..651372db16 100644
--- a/java/broker/src/main/java/org/apache/qpid/server/management/MBeanInvocationHandlerImpl.java
+++ b/java/broker/src/main/java/org/apache/qpid/server/management/MBeanInvocationHandlerImpl.java
@@ -87,8 +87,8 @@ public class MBeanInvocationHandlerImpl implements InvocationHandler, Notificati
return true;
}
- // Allow querying available object names
- if (methodName.equals("queryNames"))
+ // Allow querying available object names and mbeans
+ if (methodName.equals("queryNames") || methodName.equals("queryMBeans"))
{
return true;
}
@@ -108,7 +108,7 @@ public class MBeanInvocationHandlerImpl implements InvocationHandler, Notificati
public Object invoke(Object proxy, Method method, Object[] args) throws Throwable
{
- final String methodName = getMethodName(method, args);
+ String methodName = method.getName();
if (methodName.equals("getMBeanServer"))
{
@@ -173,6 +173,7 @@ public class MBeanInvocationHandlerImpl implements InvocationHandler, Notificati
security = _appRegistry.getVirtualHostRegistry().getVirtualHost(vhost).getSecurityManager();
}
+ methodName = getMethodName(method, args);
if (isAccessMethod(methodName) || impact == MBeanOperationInfo.INFO)
{
// Check for read-only method invocation permission