public interface JMXAuthorizationChecker
This interface represents a set of authorization checks for a given authenticated subject.
A check is available for each method available in the MBeanServerConnection interface
and is implemented as a method whose name is made of the "check" prefix, followed by the name of the method to check.
An authorization failure is raised by throwing an exception in a checkXXX() method.
Subject getSubject()
Subject, if any.void setSubject(Subject subject)
subject - the authenticated Subject to set.void checkCreateMBean(String className, ObjectName name) throws Exception
MBeanServerConnection.createMBean(String, ObjectName) method on the mbean server.className - the class name of the MBean to instantiate.name - the object name of the MBean. May be null.Exception - if the subject is not authorized.void checkCreateMBean(String className, ObjectName name, ObjectName loaderName) throws Exception
MBeanServerConnection.createMBean(String, ObjectName, ObjectName) method on the mbean server.className - the class name of the MBean to be instantiated.name - the object name of the MBean. May be null.loaderName - the object name of the class loader to be used.Exception - if the subject is not authorized.void checkCreateMBean(String className, ObjectName name, Object[] params, String[] signature) throws Exception
MBeanServerConnection.createMBean(String, ObjectName, Object[], String[]) method on the mbean server.className - the class name of the MBean to instantiate.name - the object name of the MBean. May be null.params - an array containing the parameters of the constructor to invoke.signature - an array containing the signature of the constructor to invoke.Exception - if the subject is not authorized.void checkCreateMBean(String className, ObjectName name, ObjectName loaderName, Object[] params, String[] signature) throws Exception
MBeanServerConnection.createMBean(String, ObjectName, ObjectName, Object[], String[]) method on the mbean server.className - The class name of the MBean to instantiate.name - the object name of the MBean. May be null.loaderName - the object name of the class loader to use.params - an array containing the parameters of the constructor to invoke.signature - an array containing the signature of the constructor to invoke.Exception - if the subject is not authorized.void checkUnregisterMBean(ObjectName name) throws Exception
MBeanServerConnection.unregisterMBean(ObjectName) method on the mbean server.name - the object name of the MBean to unregister.Exception - if the subject is not authorized.void checkGetObjectInstance(ObjectName name) throws Exception
MBeanServerConnection.getObjectInstance(ObjectName) method on the mbean server.name - the object name of the MBean.Exception - if the subject is not authorized.void checkQueryMBeans(ObjectName name, QueryExp query) throws Exception
MBeanServerConnection.queryMBeans(ObjectName, QueryExp) method on the mbean server.name - the object name pattern identifying the MBeans to retrieve.query - the query expression to apply for selecting MBeans.Exception - if the subject is not authorized.void checkQueryNames(ObjectName name, QueryExp query) throws Exception
MBeanServerConnection.queryNames(ObjectName, QueryExp) method on the mbean server.name - the object name pattern identifying the MBean names to retrieve.query - the query expression to apply for selecting MBeans.Exception - if the subject is not authorized.void checkIsRegistered(ObjectName name) throws Exception
MBeanServerConnection.isRegistered(ObjectName) method on the mbean server.name - the object name of the MBean to check.Exception - if the subject is not authorized.void checkGetMBeanCount()
throws Exception
MBeanServerConnection.getMBeanCount() method on the mbean server.Exception - if the subject is not authorized.void checkGetAttribute(ObjectName name, String attribute) throws Exception
MBeanServerConnection.getAttribute(ObjectName, String) method on the mbean server.name - the object name of the MBean from which the attribute is to be retrieved.attribute - A String specifying the name of the attribute to retrieve.Exception - if the subject is not authorized.void checkGetAttributes(ObjectName name, String[] attributes) throws Exception
MBeanServerConnection.getAttributes(ObjectName, String[]) method on the mbean server.name - the object name of the MBean from which the attributes are retrieved.attributes - a list of the attributes to retrieve.Exception - if the subject is not authorized.void checkSetAttribute(ObjectName name, Attribute attribute) throws Exception
MBeanServerConnection.setAttribute(ObjectName, Attribute) method on the mbean server.name - the name of the MBean within which the attribute is to be set.attribute - The identification of the attribute to set and the value to set it to.Exception - if the subject is not authorized.void checkSetAttributes(ObjectName name, AttributeList attributes) throws Exception
MBeanServerConnection.setAttributes(ObjectName, AttributeList) method on the mbean server.name - The object name of the MBean within which the attributes are to be set.attributes - A list of attributes: the identification of the attributes to set and the values to set them to.Exception - if the subject is not authorized.void checkInvoke(ObjectName name, String operationName, Object[] params, String[] signature) throws Exception
MBeanServerConnection.invoke(ObjectName, String, Object[], String[]) method on the mbean server.name - the object name of the MBean on which the method is invoked.operationName - the name of the operation to invoke.params - an array containing the parameters to set when the operation is invoked.signature - an array containing the signature of the operation, an array of class names in the format returned by Class.getName().Exception - if the subject is not authorized.void checkGetDefaultDomain()
throws Exception
MBeanServerConnection.getDefaultDomain() method on the mbean server.Exception - if the subject is not authorized.void checkGetDomains()
throws Exception
MBeanServerConnection.getDomains() method on the mbean server.Exception - if the subject is not authorized.void checkAddNotificationListener(ObjectName name, NotificationListener listener, NotificationFilter filter, Object handback) throws Exception
MBeanServerConnection.addNotificationListener(ObjectName, NotificationListener, NotificationFilter, Object) method on the mbean server.name - the name of the MBean on which the listener should be added.listener - the listener object which will handle the notifications emitted by the registered MBean.filter - the filter object.handback - the context to send to the listener when a notification is emitted.Exception - if the subject is not authorized.void checkAddNotificationListener(ObjectName name, ObjectName listener, NotificationFilter filter, Object handback) throws Exception
MBeanServerConnection.addNotificationListener(ObjectName, ObjectName, NotificationFilter, Object) method on the mbean server.name - the name of the MBean on which the listener should be added.listener - the object name of the listener object which will handle the notifications emitted by the registered MBean.filter - the filter object.handback - the context to send to the listener when a notification is emitted.Exception - if the subject is not authorized.void checkRemoveNotificationListener(ObjectName name, ObjectName listener) throws Exception
MBeanServerConnection.removeNotificationListener(ObjectName, ObjectName) method on the mbean server.name - the name of the MBean on which the listener should be added.listener - the object name of the listener object which will handle the notifications emitted by the registered MBean.Exception - if the subject is not authorized.void checkRemoveNotificationListener(ObjectName name, ObjectName listener, NotificationFilter filter, Object handback) throws Exception
MBeanServerConnection.removeNotificationListener(ObjectName, ObjectName, NotificationFilter, Object) method on the mbean server.name - the name of the MBean on which the listener should be removed.listener - the object name of the listener to remove.filter - the filter that was specified when the listener was added.handback - the handback that was specified when the listener was added.Exception - if the subject is not authorized.void checkRemoveNotificationListener(ObjectName name, NotificationListener listener) throws Exception
MBeanServerConnection.removeNotificationListener(ObjectName, NotificationListener) method on the mbean server.name - the name of the MBean on which the listener should be removed.listener - the listener object to remove.Exception - if the subject is not authorized.void checkRemoveNotificationListener(ObjectName name, NotificationListener listener, NotificationFilter filter, Object handback) throws Exception
MBeanServerConnection.removeNotificationListener(ObjectName, NotificationListener, NotificationFilter, Object) method on the mbean server.name - the name of the MBean on which the listener should be removed.listener - the listener object to remove.filter - the filter that was specified when the listener was added.handback - the handback that was specified when the listener was added.Exception - if the subject is not authorized.void checkGetMBeanInfo(ObjectName name) throws Exception
MBeanServerConnection.getMBeanInfo(ObjectName) method on the mbean server.name - the name of the MBean to analyzeException - if the subject is not authorized.void checkIsInstanceOf(ObjectName name, String className) throws Exception
MBeanServerConnection.isInstanceOf(ObjectName, String) method on the mbean server.name - the object name of the MBean.className - the name of the class.Exception - if the subject is not authorized.Copyright © 2005-2018 JPPF Team.