From Fedora Project Wiki
External authentication
The normal login process will call your custom authentication when the built in login process fails.
The process is as follows:
- user submits login information
- drupal checks if user is blocked, if so message is displayed and login fails
- drupal then attempts to load the user locally
- if this is successful then the user object is loaded and drupal fires the load and login hooks. the user is then directed towards the 'user' page.
- if user is not found locally then drupal will call external authentication
External authentication involves firing the auth hook, and on success either validating an existing user or creating a new user object. When a user is created this way a record is stored in the authmap table that confirms which module validates this user login.