Client principal class

OpenEdge provides a client principal class, com.progress.open4gl.javaproxy.ClientPrincipal. A ClientPrincipal object provides a means to store and transmit user credentials. The ClientPrincipal object supports the following use cases:

  • Creating an unsealed ClientPrincipal object containing a user's credentials and sending this object to an application server for a direct login.
  • Creating a sealed ClientPrincipal object (verified by an external authentication system) and sending this object to an application server for a single sign-on.

The Java client principal class mirrors the implementation of the client principal class in ABL. For more detailed information on the ABL implementation, see OpenEdge Getting Started: Identity Management.

The following constructor specifies the qualified user ID (composed of the user ID and domain), session ID, expiration date, and pass phrase:

Syntax

public ClientPrincipal(String qualifiedUserID, String sessionID,
                       GregorianCalendar expirationDateTime, 
                       String primaryPassphrase)

An alternate version of the constructor can initialize the object by passing a byte array that contains a serialized ClientPrincipal object:

Syntax

public ClientPrincipal(Byte[] serializedCP)

Calling the constructor with no parameters creates a ClientPrincipal object with all String-valued attributes set to null, all long integer-valued attributes set to 0, and the loginState attribute set to "INITIAL".