org.jboss.security
Class JaasSecurityManagerService
java.lang.Object
|
+--javax.management.NotificationBroadcasterSupport
|
+--org.jboss.util.ServiceMBeanSupport
|
+--org.jboss.security.JaasSecurityManagerService
- All Implemented Interfaces:
- JaasSecurityManagerServiceMBean, javax.management.MBeanRegistration, javax.management.NotificationBroadcaster, javax.naming.spi.ObjectFactory, Service, ServiceMBean
- public class JaasSecurityManagerService
- extends ServiceMBeanSupport
- implements JaasSecurityManagerServiceMBean, javax.naming.spi.ObjectFactory
This is a JMX service which manages JaasSecurityManagers.
JaasSecurityManagers are responsible for validating credentials
associated with principals.
- Author:
- Oleg Nitz, Rickard Oberg
- See Also:
JaasSecurityManager
Method Summary |
java.lang.String |
getName()
|
java.lang.Object |
getObjectInstance(java.lang.Object obj,
javax.naming.Name name,
javax.naming.Context nameCtx,
java.util.Hashtable environment)
Object factory implementation. |
protected javax.management.ObjectName |
getObjectName(javax.management.MBeanServer server,
javax.management.ObjectName name)
|
protected void |
initService()
|
protected void |
startService()
|
protected void |
stopService()
|
Methods inherited from class org.jboss.util.ServiceMBeanSupport |
destroy, destroyService, getState, getStateString, init, postDeregister, postRegister, preDeregister, preRegister, start, stop |
Methods inherited from class javax.management.NotificationBroadcasterSupport |
addNotificationListener, getNotificationInfo, removeNotificationListener, sendNotification |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
JaasSecurityManagerService
public JaasSecurityManagerService()
getName
public java.lang.String getName()
- Specified by:
getName
in interface ServiceMBean
- Overrides:
getName
in class ServiceMBeanSupport
getObjectName
protected javax.management.ObjectName getObjectName(javax.management.MBeanServer server,
javax.management.ObjectName name)
throws javax.management.MalformedObjectNameException
- Overrides:
getObjectName
in class ServiceMBeanSupport
initService
protected void initService()
throws java.lang.Exception
- Overrides:
initService
in class ServiceMBeanSupport
startService
protected void startService()
throws java.lang.Exception
- Overrides:
startService
in class ServiceMBeanSupport
stopService
protected void stopService()
- Overrides:
stopService
in class ServiceMBeanSupport
getObjectInstance
public java.lang.Object getObjectInstance(java.lang.Object obj,
javax.naming.Name name,
javax.naming.Context nameCtx,
java.util.Hashtable environment)
throws java.lang.Exception
- Object factory implementation. This method is a bit tricky as it is called twice for each
JSM lookup. Let's say the lookup is for "java:jaas/MySecurity". Then this will first be
called as JNDI starts the "jaas" federation. In that call we make sure that the next call
will go through, i.e. we check that the "MySecurity" binding is availble. Then we return
the implementation of the "jaas" context. Then, when the "MySecurity" is dereferenced we
look up the JSM from an internal static hash table.
Note: it is possible to break this by doing the lookup in two phases: first lookup "java:jaas"
and then do a second lookup of "MySecurity". If that is done then the first lookup has no way of
knowing what name to check (i.e. it can't make sure that "MySecurity" is available in the
"java:jaas" context!
- Specified by:
getObjectInstance
in interface javax.naming.spi.ObjectFactory
- Parameters:
obj
- name
- nameCtx
- environment
- - Returns:
-
- Throws:
java.lang.Exception
-
Copyright © 2000 The jBoss Organization. All Rights Reserved.