Patent ID: 7631344

Claim:
A method of authenticating end-user clients requiring access to services available in a computer-based communication system having an authentication server and an end-user client, comprising the steps of: at said authentication server, defining a plurality of authentication modules available in said communication system, wherein at least one of said authentication modules is a local authentication module executable on said authentication server, and at least one of said authentication modules is a remote authentication module, executable on a communication system node remote from said authentication server; mapping each of a plurality of authentication domain identifiers to a corresponding configuration of said authentication modules associated with the authenticating domain identifiers, wherein at least one of said authenticating domain identifiers comprises an application service identifier; sending one of said authentication domain identifiers from said end-user client to said authentication server; creating, by the authentication server an authentication stack based on the configuration of authentication modules corresponding to the authentication domain identifier according to said mapping step, wherein said authentication stack comprises a plurality of stack entries, each of said stack entries mapped to a respective authentication module from among said plurality of authentication modules; initiating a distributed authentication process at said authentication server according to each of said stack entries of said authentication stack, said initiating comprising: i) determining, for each of stack entries from said stack entries, whether the stack entry is mapped to any of the local authentication modules and whether the stack entry is mapped to any of the remote authentication modules, ii) for each stack entry determined as mapped to a local authentication process, triggering a local authentication process corresponding to said local authentication module, and iii) for each stack entry determined as mapped to any of the remote authentication modules, triggering a remote authentication process, corresponding to said remote authentication module, at a node of said communication system remote from said authentication server; consolidating results of said authentication process, including receiving a result of all local authentication processes and of all remote authentication processes triggered by said step of initiating an authentication process, and generating a consolidated result; and determining an authentication status for the end-user client to be one of a successful authentication and a not successful authentication, based on said consolidated result.