×

System and method for authenticating a subject

  • US 7,610,618 B2
  • Filed: 02/24/2003
  • Issued: 10/27/2009
  • Est. Priority Date: 02/24/2003
  • Status: Active Grant
First Claim
Patent Images

1. A method for authenticating a subject based on authentication information, comprising the steps of:

  • providing a front-end application programming interface (API), a back-end service provider interface (SPI), and a configuration file, wherein a client application accesses authentication services via the front-end API, wherein a set of authentication providers write to the back-end SPI, and wherein the configuration file specifies one or more authentication providers to perform authentication for the client application;

    receiving authentication information containing a user name and password associated with the subject by the client application;

    initiating a stacked login sequence including the one or more authentication providers specified in the configuration file to authenticate said subject, each authentication provider having a control flag that indicates whether said authentication provider is one of;

    required, requisite, optional and sufficient in said stacked login sequence;

    generating a callback handler containing the authentication information by said client application;

    passing the callback handler to a remote method invocation (RMI) container of a server;

    providing the callback handler by the RMI container to a security service framework of the server wherein the security service framework creates an internal callback handler for each authentication provider in the stacked login sequence and invokes said each authentication provider;

    performing, by each said authentication provider, authentication of the subject based on the authentication information contained in the internal callback handler, wherein successful authentication of the subject results in creating a principal for the subject, the principal providing an identity for the subject that has been authenticated;

    ensuring the authenticity of the principal between programmatic server invocations by signing the principal that has been created during successful authentication, wherein signing is performed by including an algorithm within a sign method or by having the sign method call out to the server for a token containing a keV that is used to sign said principal, wherein an authentication code is determined for the principal that is a function of the principal and the key;

    storing the principal that has been signed into the subject that has been authenticated;

    reading said control flag of said authentication provider in order to determine whether to proceed with said stacked login sequence and invoke a next authentication provider in said stacked login sequence;

    receiving a programmatic server invocation from the client application a period of time after the stacked login sequence completes; and

    determining whether the principal was tampered with between a time of associating the principal with the subject and receiving the programmatic server invocation, wherein determining includes generating a second code and comparing the second code to the authentication code which was originally computed upon signing the principal, wherein a change to the principal is detected based on the signing.

View all claims
  • 2 Assignments
Timeline View
Assignment View
    ×
    ×