Copyright (C) 2000 Phillip Eby and Tyler Sarna - All Rights Reserved. This software may be used, modified, and distributed, under the same terms as Zope itself.
See CHANGES.txt for important information about upgrading from earlier releases of LoginManager.
LoginManager is a User Folder workalike and replacement which solves the "N * M" problem seen with previous User Folders. Because of its PlugIn-based architecture, it will almost never need to be subclassed to implement custom functionality. (For more information on the PlugIn system, see the Products.ZPatterns.PlugIns module source.)
LoginManager uses two kinds of PlugIns, the "User Source" and the "Login Method". User Sources provide an interface to an arbitrary store of user records. A LoginManager may contain multiple User Sources, and will search them in user-defined order until one returns a valid user object.
Login Methods are responsible for examining a REQUEST for identification and credentials. They are also indirectly responsible for authenticating the user. In most cases, they simply call user.authenticate(), passing the credentials (typically a password) they extracted from the REQUEST. A single LoginManager may contain multiple Login Methods, which are tried in user-defined order, and the result of the last Login Method is used. (Most Login Methods simply return the result of the previous Login Method if it had already validated a user. But the sequence is chained to allow for voting, multi-credential requirements, etc.)
If you're using Zope 2.2, you can use the help system to read LoginManager and ZPatterns documentation. If not, see the Products/LoginManager/help directory for documentation.