org.nees.authz.ogsi.impl
Class CASAImpl

java.lang.Object
  extended byorg.globus.ogsa.impl.core.service.ServicePropertiesImpl
      extended byorg.globus.ogsa.impl.ogsi.GridServiceImpl
          extended byorg.nees.authz.ogsi.impl.CASAImpl
All Implemented Interfaces:
org.gridforum.ogsi.GridService, org.globus.ogsa.GridServiceBase, org.globus.ogsa.GridServiceCallback, java.rmi.Remote, org.globus.ogsa.ServiceDataValueCallback, org.globus.ogsa.ServiceProperties

public class CASAImpl
extends org.globus.ogsa.impl.ogsi.GridServiceImpl


Field Summary
 
Fields inherited from class org.globus.ogsa.impl.ogsi.GridServiceImpl
queryEngine, serviceData
 
Fields inherited from interface org.globus.ogsa.ServiceProperties
ACTIVATE_ON_STARTUP, ACTIVATION, BASE_CLASS_NAME, BOOTSTRAP, CONFIG_PATH, CONTAINS_REFERENCE, CREATION_EXTENSIBILITY, CREATION_EXTENSIBILITY_OUTPUT, CUSTOM_EXTENSIBILITY_DESERIALIZER, CUSTOM_EXTENSIBILITY_SERIALIZER, CUSTOM_MAPPING_REGISTERED, DEACTIVATED_PERSISTENT, DEACTIVATED_STATE, DEACTIVATED_TRANSIENT, DEACTIVATION, DESTROY_LISTENER, DESTRUCTION_SKELETON, DISABLE_FACTORY_REGISTRY, ENDPOINT, ENTRY_INSTANCE_CREATION, FACTORY, FACTORY_CALLBACK, FACTORY_HANDLE, FACTORY_PROVIDER, FACTORY_REGISTRY, GSR_DESCRIPTION, HANDLE, HANDLE_PORT, HANDLE_PROTOCOL, INSTANCE_CLASS, INSTANCE_DEACTIVATION, INSTANCE_GSR_DESCRIPTION, INSTANCE_LIFECYCLE, INSTANCE_PORT_TYPE, INSTANCE_PORT_TYPE_NS, INSTANCE_PREFIX, INSTANCE_REGISTRY, INSTANCE_SCHEMA_PATH, INSTANCE_WSDL, INTERFACE_CLASS_NAME, INVOCATION_ID, LAZY_CREATION, LIFECYCLE, LIFECYCLE_MONITOR, LIFECYCLE_MONITOR_CLASS, NAME, NOTIFICATION_ENGINE, NOTIFICATION_FACTORY, NOTIFICATION_SOURCE, OPERATION_PROVIDERS, PERSISTENT, PERSISTENT_PROPERTIES, PORT, PORT_TYPE, PORT_TYPE_NS, PRIMARY_KEY, PROTOCOL, QUERY_ENGINE, REDIRECT_RESOLVER, REGISTRY, RESOLVER_CACHE, ROUTER_HEADER, ROUTER_VIA, SCHEMA_LOCATION, SCHEMA_PATH, SERVICE_ACTIVATOR, SERVICE_DATA, SERVICE_DEPLOYMENT, SERVICE_GROUP_ENTRY, SERVICE_GROUP_PROVIDER, SERVICE_LOADER, SERVICE_NODE, SERVICE_PATH, SINK_ID, STARTUP_STATE, SWEEP_SERVICE_DATA, TIMEOUT, TIMESTAMP, TRANSIENT, TYPE, USER, WEBSTART_PANEL_NAME, WEBSTART_URL, WSDL
 
Constructor Summary
CASAImpl()
           
CASAImpl(java.lang.String s)
           
 
Method Summary
 void addToGroups(java.lang.String dn, javax.xml.namespace.QName[] gids, boolean admin)
          Assert that a user is in a set of groups.
protected  void delegateId()
          Set the CAS caller ID to the delegated cred
 javax.xml.namespace.QName[] getAllGroups()
          Returns all groups.
protected  AuthenticIdentity getAuthenticIdentity(javax.security.auth.Subject subject)
           
protected  javax.security.auth.Subject getDelegatedSubject()
           
 javax.xml.namespace.QName[] getGroups(java.lang.String dn)
          Returns which groups the user is in.
 boolean[] hasAdminPermission(java.lang.String dn, javax.xml.namespace.QName[] gids)
          Does this user have admin permission on these groups?
 void postCreate(org.globus.ogsa.GridContext context)
           
 void preCreate(org.globus.ogsa.GridServiceBase base)
           
 void removeFromGroups(java.lang.String dn, javax.xml.namespace.QName[] gids)
          Assert that a user is not in a set of groups.
 
Methods inherited from class org.globus.ogsa.impl.ogsi.GridServiceImpl
activate, addOperationProvider, deactivate, destroy, findServiceData, getInstanceProperty, getOperationProvider, getQueryEngine, getServiceDataSet, getServiceDataValues, getServiceInterface, getTerminationTime, populateInstanceProperties, preDestroy, removeOperationProvider, requestTerminationAfter, requestTerminationBefore, setDefaultTermination, setQueryEngine, setServiceData, setServiceDataSet
 
Methods inherited from class org.globus.ogsa.impl.core.service.ServicePropertiesImpl
flush, flush, getPersistentProperty, getProperty, keySet, setPersistentProperty, setProperty, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.globus.ogsa.ServiceProperties
flush, getPersistentProperty, getProperty, setPersistentProperty, setProperty
 

Constructor Detail

CASAImpl

public CASAImpl()

CASAImpl

public CASAImpl(java.lang.String s)
Method Detail

preCreate

public void preCreate(org.globus.ogsa.GridServiceBase base)
               throws org.globus.ogsa.GridServiceException
Throws:
org.globus.ogsa.GridServiceException

postCreate

public void postCreate(org.globus.ogsa.GridContext context)
                throws org.globus.ogsa.GridServiceException
Throws:
org.globus.ogsa.GridServiceException

getAuthenticIdentity

protected AuthenticIdentity getAuthenticIdentity(javax.security.auth.Subject subject)
                                          throws AuthenticationException
Throws:
AuthenticationException

getDelegatedSubject

protected javax.security.auth.Subject getDelegatedSubject()
                                                   throws org.globus.ogsa.impl.security.SecurityException
Throws:
org.globus.ogsa.impl.security.SecurityException

delegateId

protected void delegateId()
                   throws java.rmi.RemoteException
Set the CAS caller ID to the delegated cred

Throws:
java.rmi.RemoteException

getAllGroups

public javax.xml.namespace.QName[] getAllGroups()
                                         throws java.rmi.RemoteException
Returns all groups.

Returns:
the groups
Throws:
java.rmi.RemoteException

getGroups

public javax.xml.namespace.QName[] getGroups(java.lang.String dn)
                                      throws java.rmi.RemoteException
Returns which groups the user is in.

Parameters:
dn - the user's distinguished name
Returns:
the groups the user is in
Throws:
java.rmi.RemoteException

hasAdminPermission

public boolean[] hasAdminPermission(java.lang.String dn,
                                    javax.xml.namespace.QName[] gids)
                             throws java.rmi.RemoteException
Does this user have admin permission on these groups?

Parameters:
dn - the user's distinguished name
gids - the groups
Throws:
java.rmi.RemoteException

addToGroups

public void addToGroups(java.lang.String dn,
                        javax.xml.namespace.QName[] gids,
                        boolean admin)
                 throws java.rmi.RemoteException,
                        org.globus.ogsa.impl.security.SecurityException
Assert that a user is in a set of groups.

Parameters:
dn - the user's distinguished name
gids - the ID's of the groups
admin - true - allow user to administer the groups; false - disallow user from administering the groups
Throws:
java.rmi.RemoteException
org.globus.ogsa.impl.security.SecurityException

removeFromGroups

public void removeFromGroups(java.lang.String dn,
                             javax.xml.namespace.QName[] gids)
                      throws java.rmi.RemoteException,
                             org.globus.ogsa.impl.security.SecurityException
Assert that a user is not in a set of groups.

Parameters:
dn - the user's distinguished name
gids - the ID's of the groups
Throws:
java.rmi.RemoteException
org.globus.ogsa.impl.security.SecurityException