blob: e77bb79c91e87e091194e37257308c4035c3703d [file] [log] [blame]
grant codebase "file:/-" {
permission java.util.PropertyPermission "jmx.wait", "read";
permission java.util.PropertyPermission "jmx.rmi.port", "read";
permission java.net.SocketPermission "*", "accept,connect,resolve";
permission java.security.SecurityPermission "*";
// Attribute Caption: allow get everywhere
// ==================
// allow getAttribute(*:*,Caption) in all MBeanServers
permission javax.management.MBeanPermission "#Caption", "getAttribute";
// allow getAttribute(*:*,Caption) in all namespaces recursively.
permission javax.management.namespace.JMXNamespacePermission "Caption",
"getAttribute";
// Attribute Mood: allow get only in MBeanServers named rmi*
// ===============
// allow to get attribute Mood of Wombat MBeans only in namespaces
// whose name match rmi*, wherever they are.
// for this we need two permissions:
permission javax.management.namespace.JMXNamespacePermission
"*::Mood[**//rmi*//wombat:*]",
"getAttribute";
permission javax.management.namespace.JMXNamespacePermission
"*::Mood[rmi*//wombat:*]",
"getAttribute";
// allow to get attribute mood in any MBeanServer whose name starts with
// rmi
permission javax.management.MBeanPermission "rmi*::#Mood",
"getAttribute";
// Attribute UUID:
// ===============
// allow to get attribute "UUID" everywhere.
permission javax.management.namespace.JMXNamespacePermission
"*::UUID[*//**//:*]",
"getAttribute";
permission javax.management.MBeanPermission
"#UUID[*//:*]",
"getAttribute";
// Let getMBeanInfo and queryNames through everywhere...
//
permission javax.management.namespace.JMXNamespacePermission "[]",
"getMBeanInfo,queryNames";
permission javax.management.MBeanPermission "*",
"getMBeanInfo,queryNames";
// special permission for all wombats:
//
permission javax.management.namespace.JMXNamespacePermission
"[**//*:type=Wombat,*]",
"getObjectInstance,isInstanceOf,queryMBeans";
permission javax.management.MBeanPermission "[*:type=Wombat,*]",
"getObjectInstance,isInstanceOf,queryMBeans";
// allow JMXNamespace::getDefaultDomain
permission javax.management.namespace.JMXNamespacePermission
"*::DefaultDomain",
"getAttribute";
// These permissions are required to connect visualvm.
//
permission javax.management.MBeanPermission "default::[java.lang:*]",
"getObjectInstance,isInstanceOf,getAttribute,getMBeanInfo,queryNames,queryMBeans";
permission javax.management.MBeanPermission "root::",
"isInstanceOf,queryNames,queryMBeans,getAttribute,getMBeanInfo,getObjectInstance,getDomains";
permission javax.management.namespace.JMXNamespacePermission
"[**//JMImplementation:type=MBeanServerDelegate]",
"addNotificationListener,removeNotificationListener,isInstanceOf,queryNames,queryMBeans,getAttribute,getMBeanInfo,getObjectInstance";
permission javax.management.MBeanPermission
"javax.management.MBeanServerDelegate",
"addNotificationListener,removeNotificationListener,isInstanceOf,queryNames,queryMBeans,getAttribute,getMBeanInfo,getObjectInstance";
// Thread monitoring
permission java.lang.management.ManagementPermission "monitor";
permission javax.management.MBeanPermission "*::sun.management.*#*[java.lang:*]", "invoke";
};