Difference between revisions of "Authentication API"

Jump to: navigation, search
m (Moodle authentication interface)
(See also)
 
(17 intermediate revisions by 6 users not shown)
Line 1: Line 1:
==Moodle authentication interface==
+
The '''Authentication API''' describes Moodle's interface functions to authentication plugins.
 +
(This page is incomplete , I'll update it after I have phpdoc commented auth/ldap/lib.php)
  
Authentication API This file describes Moodle interface functions to authentication modules. (This page is incomplete , I'll update it after I have phpdoc commented auth/ldap/lib.php)
+
Most of the functions are from the [[LDAP_authentication|ldap-authentication module]] and are not implemented (yet?) on other modules. Please feel free to extend other modules to support same features or roll your own module.
 
 
Most of functions are from ldap-authentication module and are not implemented (yet?) on other modules. Please feel free to extend other modules to support same features or roll your own module.
 
  
 
Some of new function are still tested and are not documented here yet.
 
Some of new function are still tested and are not documented here yet.
Line 11: Line 10:
 
Basic functions to authenticate users with external db
 
Basic functions to authenticate users with external db
  
Mandatory:
 
  
auth_user_login ($username, $password)
+
===Mandatory:===
 +
 
 +
<code>auth_user_login ($username, $password)</code>
  
 
Authenticate username, password with userdatabase.
 
Authenticate username, password with userdatabase.
  
Returns: true if the username and password work and false if they don't
+
;Returns:true if the username and password work and false if they don't
 +
 
  
Optional:
+
===Optional:===
  
Following functions are optional , but if present they extends module asability with Moodle.
+
The following functions are optional , but if present they extend module usability with Moodle.
  
auth_get_userinfo($username)
+
 
 +
<code>auth_get_userinfo($username)</code>
  
 
Query other userinformation from database.
 
Query other userinformation from database.
  
Returns:
+
;Returns:User information in array ''(name => value, ...)'' or ''false'' in case of error. Function honors update-flags so if  <code>$CFG->auth_user_(atribute)_updatelocal</code> is present, it will return value only if flag is true.
  
Userinformation in array ( name => value, .... or false in case of error Function honors update-flags so if
+
===COURSE CREATING===
$CFG->auth_user_(atribute)_updatelocal
 
is present, it will return value anly if flag is true.
 
  
COURSE CREATING
 
  
auth_iscreator($username)
+
<code>auth_iscreator($username)</code>
  
 
should user have rights to create courses
 
should user have rights to create courses
  
Returns: True if user have rights to create cources otherwise false
+
;Returns:<code>true</code> if user has rights to create cources otherwise false
  
USER CREATION
+
===USER CREATION===
  
Functions that enable usercreation, activation and deactivation from moodle to external database
+
Functions that enable user creation, activation and deactivation from moodle to external database
  
auth_user_exists ($username)
 
  
Checks if given username exist on external db
+
<code>auth_user_exists ($username)</code>
  
Returns: true if given usernname exist or false
+
Checks if given username exists on external db
  
auth_user_create ($userobject,$plainpass)
+
;Returns:<code>true</code> if given usernname exist or false
 +
 
 +
 
 +
<code>auth_user_create ($userobject,$plainpass)</code>
  
 
Creates new user to external db. User should be created in inactive stage until confirmed by email.
 
Creates new user to external db. User should be created in inactive stage until confirmed by email.
  
Returns: True on success otherwise false
+
;Returns:<code>true</code> on success otherwise <code>false</code>
  
auth_user_activate ($username)
+
 
 +
<code>auth_user_activate ($username)</code>
  
 
activate new user after email-address is confirmed
 
activate new user after email-address is confirmed
  
Returns: True on success otherwise false
+
;Returns:<code>true</code> on success otherwise <code>false</code>
  
auth_user_disable ($username) {
+
 
 +
<code>auth_user_disable ($username)</code>
  
 
deactivate user in external db.
 
deactivate user in external db.
  
Returns: True on success otherwise false
+
;Returns:<code>true</code> on success otherwise <code>false</code>
  
USER INFORMATION AND SYNCRONIZATION
+
=== USER INFORMATION AND SYNCRONIZATION ===
  
auth_get_userlist ()
+
<code>auth_get_userlist ()</code>
  
 
Get list of usernames in external db.
 
Get list of usernames in external db.
  
Returns: All usernames in array or false on error.
+
;Returns:All usernames in array or <code>false</code> on error.
  
auth_get_users($filter='*')
+
 
 +
<code>auth_get_users($filter='*')</code>
  
 
Get ALL USEROBJECTS FROM EXTERNAL DB.
 
Get ALL USEROBJECTS FROM EXTERNAL DB.
  
Returns: Array of all users as objects from external db
+
;Returns:Array of all users as objects from external db  
 +
 
 +
 
 +
== See also ==
 +
 
 +
* [[Authentication plugins]]
 +
* Using Moodle [http://moodle.org/mod/forum/discuss.php?d=102070 Overview of entire authentication code flow] forum discussion
 +
* Using Moodle [http://moodle.org/mod/forum/view.php?id=42 User authentication forum]
 +
* Moodle Docs [[Manage authentication]]
 +
* [[Authentication FAQ]]
 +
 
 +
[[Category:Authentication]]

Latest revision as of 07:42, 10 June 2011

The Authentication API describes Moodle's interface functions to authentication plugins. (This page is incomplete , I'll update it after I have phpdoc commented auth/ldap/lib.php)

Most of the functions are from the ldap-authentication module and are not implemented (yet?) on other modules. Please feel free to extend other modules to support same features or roll your own module.

Some of new function are still tested and are not documented here yet.

Authentication functions

Basic functions to authenticate users with external db


Mandatory:

auth_user_login ($username, $password)

Authenticate username, password with userdatabase.

Returns
true if the username and password work and false if they don't


Optional:

The following functions are optional , but if present they extend module usability with Moodle.


auth_get_userinfo($username)

Query other userinformation from database.

Returns
User information in array (name => value, ...) or false in case of error. Function honors update-flags so if
$CFG->auth_user_(atribute)_updatelocal
is present, it will return value only if flag is true.

COURSE CREATING

auth_iscreator($username)

should user have rights to create courses

Returns
true
if user has rights to create cources otherwise false

USER CREATION

Functions that enable user creation, activation and deactivation from moodle to external database


auth_user_exists ($username)

Checks if given username exists on external db

Returns
true
if given usernname exist or false


auth_user_create ($userobject,$plainpass)

Creates new user to external db. User should be created in inactive stage until confirmed by email.

Returns
true
on success otherwise
false


auth_user_activate ($username)

activate new user after email-address is confirmed

Returns
true
on success otherwise
false


auth_user_disable ($username)

deactivate user in external db.

Returns
true
on success otherwise
false

USER INFORMATION AND SYNCRONIZATION

auth_get_userlist ()

Get list of usernames in external db.

Returns
All usernames in array or
false
on error.


auth_get_users($filter='*')

Get ALL USEROBJECTS FROM EXTERNAL DB.

Returns
Array of all users as objects from external db


See also