Stud.IP  2.0 Revision 48548
 All Data Structures Namespaces Files Functions Variables Pages
StudipAuthAbstract Class Reference
Inheritance diagram for StudipAuthAbstract:
Inheritance graph
Collaboration diagram for StudipAuthAbstract:
Collaboration graph

Public Member Functions

 StudipAuthAbstract ()
 authenticateUser ($username, $password, $jscript=false)
 getStudipUserid ($username)
 doNewUserInit ($uid)
 setUserDomains ($uid)
 getUserDomains ()
 doDataMapping ($uid)
 isMappedField ($name)
 verifyUsername ($username)
 isUsedUsername ($username)
 isAuthenticated ($username, $password, $jscript)

Static Public Member Functions

 GetInstance ($plugin_name=false)
 CheckAuthentication ($username, $password, $jscript=false)
 CheckUsername ($username)
 CheckField ($field_name, $plugin_name)

Data Fields

 $error_msg
 $is_new_user = false
 $user_domains
 $user_data_mapping = null
 $dbv
 $plugin_name
 $error_head

Member Function Documentation

authenticateUser (   $username,
  $password,
  $jscript = false 
)

authentication method

this method authenticates the passed username, it is used by StudipAuthAbstract::CheckAuthentication() if authentication succeeds it calls StudipAuthAbstract::doDataMapping() to map data fields if the authenticated user logs in for the first time it calls StudipAuthAbstract::doNewUserInit() to initialize the new user private

Parameters
stringthe username to check
stringthe password to check
boolindicates if javascript was enabled/disabled during the login process
Returns
string if authentication succeeds the Stud.IP user id, else false

Reimplemented in StudipAuthCAS.

Here is the call graph for this function:

CheckAuthentication (   $username,
  $password,
  $jscript = false 
)
static

static method to check authentication in all plugins

if authentication fails in one plugin, the error message is stored and the next plugin is used if authentication succeeds, the uid element in the returned array will contain the Stud.IP user id

public

Parameters
stringthe username to check
stringthe password to check
boolindicates if javascript was enabled/disabled during the login process
Returns
array structure: array('uid'=>'string <Stud.IP user id>','error'=>'string <error message>="">','is_new_user'=>'bool')

Here is the call graph for this function:

Here is the caller graph for this function:

CheckField (   $field_name,
  $plugin_name 
)
static

static method to check for a mapped field

this method checks in the plugin with the passed name, if the passed Stud.IP DB field is mapped to an external data source

public

Parameters
stringthe name of the db field must be in form '
<field name>="">'
stringthe name of the plugin to check
Returns
bool true if the field is mapped, else false

Here is the call graph for this function:

Here is the caller graph for this function:

CheckUsername (   $username)
static

static method to check if passed username is used in external data sources

all plugins are checked, the error messages are stored and returned

public

Parameters
stringthe username
Returns
array

Here is the call graph for this function:

Here is the caller graph for this function:

doDataMapping (   $uid)

this method handles the data mapping

for each entry in $this->user_data_mapping the according callback will be invoked the return value of the callback method is then written to the db field, which is specified in the key of the array

private

Parameters
stringthe user_id
Returns
bool

Reimplemented in StudipAuthLdapHSW.

Here is the caller graph for this function:

doNewUserInit (   $uid)

initialize a new user

this method is invoked for one time, if a new user logs in ($this->is_new_user is true) place special treatment of new users here private

Parameters
stringthe user id
Returns
bool

Here is the caller graph for this function:

GetInstance (   $plugin_name = false)
static

static method to instantiate and retrieve a reference to an object (singleton)

use always this method to instantiate a plugin object, it will ensure that only one object of each plugin will exist public

Parameters
stringname of plugin, if omitted an array with all plugin objects will be returned
Returns
mixed either a reference to the plugin with the passed name, or an array with references to all plugins

Here is the caller graph for this function:

getStudipUserid (   $username)

method to retrieve the Stud.IP user id to a given username

private

Parameters
stringthe username
Returns
string the Stud.IP user id or false if an error occurs

Here is the caller graph for this function:

getUserDomains ( )

Get the user domains to assign to the current user.

Reimplemented in StudipAuthShib.

Here is the caller graph for this function:

isAuthenticated (   $username,
  $password,
  $jscript 
)

method to check the authentication of a given username and a given password

abstract, MUST be realized

private

Parameters
stringthe username
stringthe password
boolis javascript used to hash password ?
Returns
bool true if authentication succeeds

Reimplemented in StudipAuthLdap, StudipAuthLdapReader, StudipAuthStandardExtern, StudipAuthStandard, StudipAuthCAS, and StudipAuthSSO.

Here is the caller graph for this function:

isMappedField (   $name)

method to check, if a given db field is mapped by the plugin

private

Parameters
stringthe name of the db field (<table_name>.<field_name>)
Returns
bool true if the field is mapped

Reimplemented in StudipAuthLdapHSW.

isUsedUsername (   $username)

method to check, if username is used

abstract MUST be realized

private

Parameters
stringthe username
Returns
bool true if the username exists

Reimplemented in StudipAuthLdap, StudipAuthLdapReader, StudipAuthLdapReadAndBind, StudipAuthStandard, and StudipAuthSSO.

setUserDomains (   $uid)

This method sets the user domains for the current user.

private

Parameters
stringthe user id

Here is the call graph for this function:

Here is the caller graph for this function:

Constructor

the constructor is private, you should use StudipAuthAbstract::GetInstance($plugin_name) to get a reference to a plugin object. Make sure the constructor in the base class is called when deriving your own plugin class, it assigns the settings from local.inc as members of the plugin each key of the $STUDIP_AUTH_CONFIG_<plugin name> array will become a member of the object

private

Here is the caller graph for this function:

verifyUsername (   $username)

method to eliminate bad characters in the given username

private

Parameters
stringthe username
Returns
string the username

Reimplemented in StudipAuthShib.

Here is the caller graph for this function:

Field Documentation

$dbv
$error_head
$error_msg
$is_new_user = false
$plugin_name
array $user_data_mapping = null

associative array with mapping for database fields

associative array with mapping for database fields, should be set in local.inc structure : array("<table name>.<field name>" => array( "callback" => "<name of callback method used for data retrieval>", "map_args" => "<arguments passed to callback method>")) public

array $user_domains

array of user domains to assign to each user, can be set in local.inc

public


The documentation for this class was generated from the following file: