|
Here's an overview of how it works: |
|
< < | Early in TWiki::new, the login manager is created. The creation of the login manager does two things:
- If sessions are in use, it loads CGI::Session but doesn't initialise the session yet.
- Creates the login manager object
|
> > | Early in TWiki::new, the login manager is created. The creation of the login
manager does two things:
- If sessions are in use, it loads CGI::Session but doesn't initialise the session yet.
- Creates the login manager object
|
| Slightly later in TWiki::new, loginManager->loadSession is called. |
|
< < |
- Calls loginManager->getUser to get the username before the session is created
|
> > |
- Calls loginManager->getUser to get the username before the session is created
|
|
-
- TWiki::LoginManager::ApacheLogin looks at REMOTE_USER (only for authenticated scripts)
- TWiki::LoginManager::TemplateLogin just returns undef
|
|
< < |
- reads the TWIKISID cookie to get the SID (or the TWIKISID parameters in the CGI query if cookies aren't available, or IP2SID mapping if that's enabled).
- Creates the CGI::Session object, and the session is thereby read.
- If the username still isn't known, reads it from the cookie. Thus TWiki::LoginManager::ApacheLogin overrides the cookie using REMOTE_USER, and TWiki::LoginManager::TemplateLogin always uses the session.
|
> > |
- reads the TWIKISID cookie to get the SID (or the TWIKISID parameters in the CGI query if cookies aren't available, or IP2SID mapping if that's enabled).
- Creates the CGI::Session object, and the session is thereby read.
- If the username still isn't known, reads it from the cookie. Thus TWiki::LoginManager::ApacheLogin overrides the cookie using REMOTE_USER, and TWiki::LoginManager::TemplateLogin always uses the session.
|
| |
|
< < | Later again in TWiki::new, plugins are given a chance to override the username found from the loginManager. |
> > | Later again in TWiki::new, plugins are given a chance to override the username
found from the loginManager. |
| |
|
< < | The last step in TWiki::new is to find the user, using whatever user mapping manager is in place. |
> > | The last step in TWiki::new is to find the user, using whatever user mapping
manager is in place. |
|
|
| |
|
< < | This package has smell factor of 7 |
> > | This package has smell factor of 5 |
|
|
| This package doesn't smell |
|
< < | There were a total of 206 smells |
> > | There were a total of 204 smells |