ILIAS
trunk Revision v11.0_alpha-1761-g6dbbfa7b760
|
Synchronization of user accounts used in auth container ldap, cas,... More...
Public Member Functions | |
__construct (string $a_authmode, int $a_server_id) | |
getServer () | |
Get current ldap server. More... | |
getAuthMode () | |
Get Auth Mode. More... | |
setExternalAccount (string $a_ext) | |
Set external account (unique for each auth mode) More... | |
getExternalAccount () | |
Get external accocunt. More... | |
getInternalAccount () | |
Get ILIAS unique internal account name. More... | |
forceCreation (bool $a_force) | |
Force cration of user accounts (Account migration enabled) More... | |
forceReadLdapData (bool $a_status) | |
getUserData () | |
Get user data. More... | |
setUserData (array $a_data) | |
Set user data. More... | |
sync () | |
Synchronize user account. More... | |
Protected Member Functions | |
handleCreation () | |
Handle creation of user accounts. More... | |
performUpdate () | |
Update user account and role assignments. More... | |
readUserData () | |
Read user data. More... | |
readInternalAccount () | |
Read internal account of user. More... | |
isUpdateRequired () | |
Check if an update is required. More... | |
initServer (string $a_auth_mode, int $a_server_id) | |
Init LDAP server. More... | |
Private Attributes | |
string | $authmode |
ilLDAPServer | $server |
string | $extaccount |
string | $intaccount |
array | $user_data = array() |
bool | $force_creation = false |
bool | $force_read_ldap_data = false |
ilLogger | $logger |
Synchronization of user accounts used in auth container ldap, cas,...
Definition at line 26 of file class.ilLDAPUserSynchronisation.php.
ilLDAPUserSynchronisation::__construct | ( | string | $a_authmode, |
int | $a_server_id | ||
) |
Definition at line 38 of file class.ilLDAPUserSynchronisation.php.
References $DIC, initServer(), and ILIAS\Repository\logger().
ilLDAPUserSynchronisation::forceCreation | ( | bool | $a_force | ) |
Force cration of user accounts (Account migration enabled)
Definition at line 91 of file class.ilLDAPUserSynchronisation.php.
ilLDAPUserSynchronisation::forceReadLdapData | ( | bool | $a_status | ) |
Definition at line 96 of file class.ilLDAPUserSynchronisation.php.
ilLDAPUserSynchronisation::getAuthMode | ( | ) |
Get Auth Mode.
Definition at line 58 of file class.ilLDAPUserSynchronisation.php.
References $authmode.
Referenced by performUpdate(), readInternalAccount(), and readUserData().
ilLDAPUserSynchronisation::getExternalAccount | ( | ) |
Get external accocunt.
Definition at line 74 of file class.ilLDAPUserSynchronisation.php.
References $extaccount.
Referenced by performUpdate(), readInternalAccount(), and readUserData().
ilLDAPUserSynchronisation::getInternalAccount | ( | ) |
Get ILIAS unique internal account name.
Definition at line 83 of file class.ilLDAPUserSynchronisation.php.
References $intaccount.
Referenced by isUpdateRequired(), readUserData(), and sync().
ilLDAPUserSynchronisation::getServer | ( | ) |
Get current ldap server.
Definition at line 50 of file class.ilLDAPUserSynchronisation.php.
References $server.
Referenced by handleCreation(), isUpdateRequired(), performUpdate(), readUserData(), and sync().
ilLDAPUserSynchronisation::getUserData | ( | ) |
Get user data.
Definition at line 105 of file class.ilLDAPUserSynchronisation.php.
References $user_data.
Referenced by performUpdate().
|
protected |
Handle creation of user accounts.
Definition at line 153 of file class.ilLDAPUserSynchronisation.php.
References getServer(), and readUserData().
Referenced by sync().
|
protected |
Init LDAP server.
Definition at line 262 of file class.ilLDAPUserSynchronisation.php.
References ilLDAPServer\getInstanceByServerId(), and ILIAS\UI\examples\Progress\Bar\server().
Referenced by __construct().
|
protected |
Check if an update is required.
Definition at line 237 of file class.ilLDAPUserSynchronisation.php.
References getInternalAccount(), getServer(), ilLDAPRoleAssignmentRule\hasRulesForUpdate(), and ilLDAPAttributeMapping\hasRulesForUpdate().
Referenced by sync().
|
protected |
Update user account and role assignments.
Definition at line 169 of file class.ilLDAPUserSynchronisation.php.
References ilUserCreationContext\CONTEXT_LDAP, getAuthMode(), getExternalAccount(), ilUserCreationContext\getInstance(), getServer(), getUserData(), ilLDAPAttributeToUser\MODE_INITIALIZE_ROLES, and readInternalAccount().
Referenced by sync().
|
protected |
Read internal account of user.
UnexpectedValueException |
Definition at line 223 of file class.ilLDAPUserSynchronisation.php.
References ilObjUser\_checkExternalAuthAccount(), getAuthMode(), and getExternalAccount().
Referenced by performUpdate(), and sync().
|
protected |
Read user data.
In case of auth mode != 'ldap' start a query with external account name against ldap server
ilLDAPSynchronisationFailedException |
Definition at line 196 of file class.ilLDAPUserSynchronisation.php.
References Vendor\Package\$e, ilLogLevel\DEBUG, getAuthMode(), getExternalAccount(), getInternalAccount(), getServer(), ilLDAPQuery\LDAP_BIND_DEFAULT, and ILIAS\Repository\logger().
Referenced by handleCreation(), and sync().
ilLDAPUserSynchronisation::setExternalAccount | ( | string | $a_ext | ) |
Set external account (unique for each auth mode)
Definition at line 66 of file class.ilLDAPUserSynchronisation.php.
Referenced by ilAuthProviderCAS\handleLDAPDataSource(), and ilAuthProviderApache\handleLDAPDataSource().
ilLDAPUserSynchronisation::setUserData | ( | array | $a_data | ) |
Set user data.
Definition at line 113 of file class.ilLDAPUserSynchronisation.php.
ilLDAPUserSynchronisation::sync | ( | ) |
Synchronize user account.
UnexpectedValueException | missing or wrong external account given |
ilLDAPSynchronisationForbiddenException | if user synchronisation is disabled |
ilLDAPSynchronisationFailedException | bind failure |
Definition at line 125 of file class.ilLDAPUserSynchronisation.php.
References getInternalAccount(), ilLoggerFactory\getLogger(), getServer(), handleCreation(), isUpdateRequired(), performUpdate(), readInternalAccount(), and readUserData().
|
private |
Definition at line 28 of file class.ilLDAPUserSynchronisation.php.
Referenced by getAuthMode().
|
private |
Definition at line 30 of file class.ilLDAPUserSynchronisation.php.
Referenced by getExternalAccount().
|
private |
Definition at line 34 of file class.ilLDAPUserSynchronisation.php.
|
private |
Definition at line 35 of file class.ilLDAPUserSynchronisation.php.
|
private |
Definition at line 31 of file class.ilLDAPUserSynchronisation.php.
Referenced by getInternalAccount().
|
private |
Definition at line 36 of file class.ilLDAPUserSynchronisation.php.
|
private |
Definition at line 29 of file class.ilLDAPUserSynchronisation.php.
Referenced by getServer().
|
private |
Definition at line 33 of file class.ilLDAPUserSynchronisation.php.
Referenced by getUserData().