1.2.1 Background Information

The web.auth module performs three main tasks and can be thought of as three separate parts in the same module. These tasks are:

In order to fulfil these tasks four different types of object are provided by the web.auth module. These are:

Driver
These provide the interface to the storage medium for the AuthSession and AuthManager objects. For example the DatabaseAuthDriver object is used to allow auth information to be stored in SQL databases.
AuthSession
These objects use the web.session session module to store and manage information about who is currently signed in.
AuthManager
These are the objects are used to manage the application and user information. For example to add applications and users, test if applications or users exist and change passwords.
Handlers
These objects are found in the web.auth.handlers sub package and are designed to help to automate tasks such as providing a sign in form, checking details and signing in users to reduce the code needed to be written for each application.

If you simply want to password protect a CGI script there is also a web.auth.start() function to handle everything for you, but most of the time you will want control over the process yourself.

If you simply want to get started using the module quickly there is an example later on in the documentation demonstrating some important features and a full API reference.