https://www.dokuwiki.org/devel:overview
doku.php calls init.php
init.php calls:
- includes
preload.php
- includes configuration files, inclusive
conf/local.protected.php useful for
https://www.dokuwiki.org/devel:auth_plugins#start_session_customization
- init session at about line 142
- initiate plugin controller and autoloader stuff
- setup authentication system by calling
auth_setup()
- tries to instantiate the desired auth plugin (calls constructor)
- auth plugin is extending base class DokuWiki_Auth_Plugin, see its PHPDocs for explaination per function!
- attribute
$auth->success was set to false if checks fail in constructor
- if
$auth->canDo('external')[/m] is true, the [m]$auth->trustExternal() is called.
This handles login attempt to non-dokuwiki environments.
- otherwise the AUTH_LOGIN_CHECK event is triggered which calls default
auth_login_wrapper()[/m] which calls [m]auth_login()
-
auth_login() performs the default DokuWiki login mechanism, based at password (for first visit) or if no username/password provided with cookies if available.
A quick outline of some authentication relevant parts.
Does this helps?
General docs about developing an authentication plugin:
https://www.dokuwiki.org/devel:auth_plugins
Latest PDO plugin docs (substitute of authmysql plugin):
https://www.dokuwiki.org/plugin:authpdo:moodle