Interface SSOToken

  • All Known Implementing Classes:
    AuthSSOToken

    public interface SSOToken
    The SSOToken class represents a "single sign on"(SSO) token. It contains SSO token-related information such as authentication method used for authentication, authentication level of the authentication method, host name of the client that sent the request (browser). It also contains session-related information such as maximum session time, maximum session idle time and session idle time.
    • Method Detail

      • getPrincipal

        Principal getPrincipal()
                        throws SSOException
        Returns the value of the property "Principal" set to the single sign on token.
        Returns:
        The principal name
        Throws:
        SSOException - if the single sign on token is not valid or if there are errors in getting the principal
      • getAuthType

        String getAuthType()
                    throws SSOException
        Returns the authentication method used for authentication.
        Returns:
        The authentication method
        Throws:
        SSOException - if the single sign on token is not valid or if there are errors in getting the authentication method
      • getAuthLevel

        int getAuthLevel()
                  throws SSOException
        Returns the authentication level of the authentication method used for authentication.
        Returns:
        The authentication level
        Throws:
        SSOException - if the single sign on token is not valid or if there are errors in getting the authentication level
      • getIPAddress

        InetAddress getIPAddress()
                          throws SSOException
        Returns the IP Address of the client (browser) that sent the request.
        Returns:
        The IP Address of the client
        Throws:
        SSOException - if the single sign on token is not valid or if there are errors in getting the IP Address of the client
      • getHostName

        String getHostName()
                    throws SSOException
        Returns the host name of the client (browser) that sent the request.
        Returns:
        The host name of the client
        Throws:
        SSOException - if the single sign on token is not valid or if there are errors in getting the host name of the client
      • getTimeLeft

        long getTimeLeft()
                  throws SSOException
        Returns the time left in seconds on the session based on max session time.
        Returns:
        The time left in seconds on the session.
        Throws:
        SSOException - if the single sign on token is not valid or if there are errors in getting the maximum session time.
      • getMaxSessionTime

        long getMaxSessionTime()
                        throws SSOException
        Returns the maximum session time in minutes.
        Returns:
        The maximum session time in minutes
        Throws:
        SSOException - if the single sign on token is not valid or if there are errors in getting the maximum session time
      • getIdleTime

        long getIdleTime()
                  throws SSOException
        Returns the session idle time in seconds.
        Returns:
        The session idle time in seconds
        Throws:
        SSOException - if the single sign on token is not valid or if there are errors in getting the session idle time
      • getMaxIdleTime

        long getMaxIdleTime()
                     throws SSOException
        Returns the maximum session idle time in minutes.
        Returns:
        The maximum session idle time in minutes
        Throws:
        SSOException - if the single sign on token is not valid or if there are errors in getting the maximum idle time
      • getTokenID

        SSOTokenID getTokenID()
        Returns single sign on token ID object.
        Returns:
        single sign on token ID.
      • setProperty

        void setProperty​(String name,
                         String value)
                  throws SSOException
        Sets a property for this token.
        Parameters:
        name - The property name.
        value - The property value.
        Throws:
        SSOException - if the single sign on token is not valid or if there are errors in setting the property name and value
      • getProperty

        String getProperty​(String name)
                    throws SSOException
        Gets the property stored in this token.
        Parameters:
        name - The property name.
        Returns:
        The property value in string format.
        Throws:
        SSOException - if the single sign on token is not valid or if there are errors in getting the property value
      • getProperty

        String getProperty​(String name,
                           boolean ignoreState)
                    throws SSOException
        Gets the property stored in this token. When ignoreState is set to true, it will return the session property value without refreshing the session even if the session state is invalid but it should be running in the server mode
        Parameters:
        name - The property name.
        ignoreState - The ignoreState flag.
        Returns:
        The property value in string format.
        Throws:
        SSOException - if the SSOToken is not VALID and if ignoreState is set to false.
      • addSSOTokenListener

        void addSSOTokenListener​(SSOTokenListener listener)
                          throws SSOException
        Adds an SSO token listener for the token change events.
        Parameters:
        listener - A reference to an SSOTokenListener object.
        Throws:
        SSOException - if the token is not valid or if there are errors in setting the SSO token listener.
      • encodeURL

        String encodeURL​(String url)
                  throws SSOException
        Returns the encoded URL , rewritten to include the session id. The session id will be encoded in the URL as a query string with entity escaping of ampersand when appending the session id to the query string if the query string has other query parameters.

        Encoded URL format if query string in the original URL passed is present will be :

           protocol://server:port/path?queryString&cookieName=cookieValue
         
        Encoded URL format if query string in the original URL passed is not present will be:
           protocol://server:port/path?cookieName=cookieValue
         
        Parameters:
        url - the URL to be encoded
        Returns:
        the encoded URL if cookies are not supported or the URL if cookies are supported. Note: We should not use this method for encoding the image URLs
        Throws:
        SSOException - if URL cannot be encoded.
      • isTokenRestricted

        boolean isTokenRestricted()
                           throws SSOException
        Returns true if the SSOTokenID associated with this SSOToken is a restricted token, false otherwise.
        Returns:
        true if the token is restricted
        Throws:
        SSOException - If we are unable to determine if the session is restricted
      • dereferenceRestrictedTokenID

        String dereferenceRestrictedTokenID​(SSOToken requester,
                                            String restrictedId)
                                     throws SSOException
        Given a restricted token, returns the SSOTokenID of the master token can only be used if the requester is an app token
        Parameters:
        requester - Must be an app token
        restrictedId - The SSOTokenID of the restricted token
        Returns:
        The SSOTokenID string of the master token
        Throws:
        SSOException - If the master token cannot be dereferenced