A method and apparatus for authenticating users. Prior art mechanisms
require each individual application (running on an "application server")
that the user is accessing to provide for the ability to use the various
authentication mechanisms. One or more embodiments of the invention
externalize the authentication mechanism from the application in the form
of a login server. Only the login server needs to be configured to handle
authentication mechanisms. The application server checks if a request has
an active and valid session (e.g., a valid session may exist when there is
active communication between a client and server that has not expired). If
there is not a valid session, the application server redirects the user to
the login server. The login server attempts to authenticate the user using
any desired authentication mechanism. Once authenticated, the login server
redirects the user back to the application server. The application server
verifies the authentication directly with the login server. Once verified,
the application server processes the user's request and responds
accordingly. One or more embodiments of the invention may utilize cookies
to aid in the authentication process. Thus, applications on the
application server need not be concerned about authenticating a given
user. The application server merely knows how to work with the login
server to authenticate the user. Further, communications between the
application server and login server are transparent (or without any
interaction from) the user (although the user may see the browser
communicating with each server).
Une méthode et un appareil pour les utilisateurs d'authentification. Les mécanismes d'art antérieur exigent chaque application individuelle (fonctionnant sur un "serveur d'application") que l'utilisateur accède pour fournir pour la capacité d'employer les divers mécanismes d'authentification. Un ou plusieurs modes de réalisation de l'invention extériorisent le mécanisme d'authentification de l'application sous forme de serveur d'ouverture. Seulement le serveur d'ouverture doit être configuré pour manipuler des mécanismes d'authentification. Le serveur d'application vérifie si une demande a une session active et valide (par exemple, une session valide peut exister quand il y a communication active entre un client et un serveur qui n'a pas expiré). S'il n'y a pas une session valide, le serveur d'application réoriente l'utilisateur au serveur d'ouverture. Le serveur d'ouverture essaye d'authentifier l'utilisateur en utilisant n'importe quel mécanisme désiré d'authentification. Une fois qu'authentifié, le serveur d'ouverture réoriente l'utilisateur de nouveau au serveur d'application. Le serveur d'application vérifie l'authentification directement avec le serveur d'ouverture. Une fois que vérifié, le serveur d'application traite la demande d'utilisateur et répond en conséquence. Un ou plusieurs modes de réalisation de l'invention peuvent utiliser des biscuits pour faciliter le procédé d'authentification. Ainsi, des applications sur le serveur d'application n'ont pas besoin d'être préoccupées par authentifier un utilisateur donné. Le serveur d'application sait simplement travailler avec le serveur d'ouverture pour authentifier l'utilisateur. De plus, les communications entre le serveur d'application et le serveur d'ouverture sont transparents (ou sans toute interaction de) l'utilisateur (bien que l'utilisateur peut voir le navigateur communiquer avec chaque serveur).