org.globus.gsi.jaas
Class JaasGssUtil

java.lang.Object
  extended byorg.globus.gsi.jaas.JaasGssUtil

public class JaasGssUtil
extends Object

An utility class for handling JAAS Subject with GSSCredential.


Constructor Summary
JaasGssUtil()
           
 
Method Summary
static Subject createSubject(GSSCredential cred)
          Creates a new Subject object from specified GSSCredential.
static Subject createSubject(GSSName name, GSSCredential cred)
          Creates a new Subject object from specified GSSCredential and GSSName.
static GSSCredential getCredential(Subject subject)
          Retrieves the first GSSCredential from the private credential set of the specified Subject object.
static GlobusPrincipal toGlobusPrincipal(GSSName name)
          Converts the specified GSSName to GlobusPrincipal.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JaasGssUtil

public JaasGssUtil()
Method Detail

createSubject

public static Subject createSubject(GSSCredential cred)
                             throws GSSException
Creates a new Subject object from specified GSSCredential. The GSSCredential is added to the private credential set of the Subject object. Also, if the GSSCredential.getName() is of type org.globus.gsi.gssapi.GlobusGSSName a org.globus.gsi.jaas.GlobusPrincipal is added to the principals set of the Subject object.

Throws:
GSSException

createSubject

public static Subject createSubject(GSSName name,
                                    GSSCredential cred)
                             throws GSSException
Creates a new Subject object from specified GSSCredential and GSSName. If the GSSCredential is specified it is added to the private credential set of the Subject object. Also, if the GSSCredential.getName() is of type org.globus.gsi.gssapi.GlobusGSSName and the GSSName parameter was not specified a org.globus.gsi.jaas.GlobusPrincipal is added to the principals set of the Subject object. If the GSSName parameter was specified of type org.globus.gsi.gssapi.GlobusGSSName a org.globus.gsi.jaas.GlobusPrincipal is added to the principals set of the Subject object.

Throws:
GSSException

toGlobusPrincipal

public static GlobusPrincipal toGlobusPrincipal(GSSName name)
Converts the specified GSSName to GlobusPrincipal. The GSSName is converted into the GlobusPrincipal only if the GSSName is of type org.globus.gsi.gssapi.GlobusGSSName and the name is not anonymous.


getCredential

public static GSSCredential getCredential(Subject subject)
Retrieves the first GSSCredential from the private credential set of the specified Subject object.

Returns:
the GSSCredential. Might be null.