ILIAS  release_5-2 Revision v5.2.25-18-g3f80b828510
ilAuthContainerMDB2 Class Reference

Authentication against ILIAS database. More...

+ Inheritance diagram for ilAuthContainerMDB2:
+ Collaboration diagram for ilAuthContainerMDB2:

Public Member Functions

 __construct ()
 Constructor. More...
 
 loginObserver ($a_username, $a_auth)
 Called from fetchData after successful login. More...
 
 supportsCaptchaVerification ()
 

Static Public Member Functions

static toUsernameWithoutDomain ($username)
 Static function removes Microsoft domain name from username. More...
 

Detailed Description

Authentication against ILIAS database.

Author
Stefan Meyer meyer.nosp@m.@lei.nosp@m.fos.c.nosp@m.om
Version
$Id$

Definition at line 35 of file class.ilAuthContainerMDB2.php.

Constructor & Destructor Documentation

◆ __construct()

ilAuthContainerMDB2::__construct ( )

Constructor.

Definition at line 41 of file class.ilAuthContainerMDB2.php.

References $_POST, $ilDB, $ilIliasIniFile, and $options.

42  {
43  global $ilClientIniFile, $ilDB, $ilIliasIniFile;
44 
45  $options['dsn'] = $ilDB->getDSN();
46  $options['table'] = $ilClientIniFile->readVariable('auth', 'table');
47  $options['usernamecol'] = $ilClientIniFile->readVariable('auth', 'usercol');
48  $options['passwordcol'] = $ilClientIniFile->readVariable('auth', 'passcol');
49 
50  // studip mode: check against submitted md5 password for ilSoapUserAdministration::login()
51  // todo: check whether we should put this to another place
52  if (isset($_POST['password']) && preg_match('/^[a-f0-9]{32,32}$/i', $_POST['password']))
53  {
54  if ($ilIliasIniFile->readVariable('server', 'studip'))
55  {
56  $options['cryptType'] = 'none';
57  }
58  }
59 
60  parent::__construct($options);
61  }
if(!is_array($argv)) $options
global $ilDB
$ilIliasIniFile
$_POST["username"]

Member Function Documentation

◆ loginObserver()

ilAuthContainerMDB2::loginObserver (   $a_username,
  $a_auth 
)

Called from fetchData after successful login.

Parameters
stringusername

Definition at line 90 of file class.ilAuthContainerMDB2.php.

References $GLOBALS, ilAuthUtils\_getAuthMode(), ilObjUser\_lookupAuthMode(), ilObjUser\_lookupId(), AUTH_APACHE, AUTH_LOCAL, and ilAuthUtils\isPasswordModificationEnabled().

91  {
92  $usr_id = ilObjUser::_lookupId($a_username);
93  $auth_mode = ilObjUser::_lookupAuthMode($usr_id);
94  $auth_id = ilAuthUtils::_getAuthMode($auth_mode);
95 
96  $GLOBALS['ilLog']->write(__METHOD__.': auth id = ' . $auth_id);
97 
98  switch($auth_id)
99  {
100  case AUTH_APACHE:
101  case AUTH_LOCAL:
102  return true;
103 
104  default:
106  {
107  return true;
108  }
109  }
110 
111 
112  $a_auth->status = AUTH_WRONG_LOGIN;
113  $a_auth->logout();
114 
115  return false;
116  }
$GLOBALS['loaded']
Global hash that tracks already loaded includes.
static _lookupId($a_user_str)
Lookup id by login.
const AUTH_APACHE
static _getAuthMode($a_auth_mode, $a_db_handler='')
const AUTH_LOCAL
static _lookupAuthMode($a_usr_id)
lookup auth mode
static isPasswordModificationEnabled($a_authmode)
Check if password modification is enabled.
+ Here is the call graph for this function:

◆ supportsCaptchaVerification()

ilAuthContainerMDB2::supportsCaptchaVerification ( )
Returns
bool

Definition at line 121 of file class.ilAuthContainerMDB2.php.

References ilObjUser\_loginExists(), array, ilUserPasswordManager\getInstance(), ilObjectFactory\getInstanceByObjId(), and IL_PASSWD_CRYPTED.

122  {
123  return true;
124  }
+ Here is the call graph for this function:

◆ toUsernameWithoutDomain()

static ilAuthContainerMDB2::toUsernameWithoutDomain (   $username)
static

Static function removes Microsoft domain name from username.

Definition at line 67 of file class.ilAuthContainerMDB2.php.

68  {
69  // Remove all characters including the last slash or the last backslash
70  // in the username
71  $pos = strrpos($username, '/');
72  $pos2 = strrpos($username, '\\');
73  if ($pos === false || $pos < $pos2)
74  {
75  $pos = $pos2;
76  }
77  if ($pos !== false)
78  {
79  $username = substr($username, $pos + 1);
80  }
81  return $username;
82  }

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