ILIAS
release_8 Revision v8.19
|
Public Member Functions | |
__construct (ilLDAPServer $a_server, string $a_url='') | |
getServer () | |
Get server. More... | |
fetchUser (string $a_name) | |
Get one user by login name. More... | |
fetchUsers () | |
Fetch all users. More... | |
query (string $a_search_base, string $a_filter, int $a_scope, array $a_attributes) | |
Perform a query. More... | |
modAdd (string $a_dn, array $a_attribute) | |
Add value to an existing attribute. More... | |
modDelete (string $a_dn, array $a_attribute) | |
Delete value from an existing attribute. More... | |
checkGroupMembership (string $a_ldap_user_name, array $ldap_user_data) | |
check group membership More... | |
bind (int $a_binding_type=ilLDAPQuery::LDAP_BIND_DEFAULT, string $a_user_dn='', string $a_password='') | |
Bind to LDAP server. More... | |
__destruct () | |
Destructor unbind from ldap server. More... | |
checkPaginationEnabled () | |
Check if pagination is enabled (rfc: 2696) More... | |
Data Fields | |
const | LDAP_BIND_DEFAULT = 0 |
const | LDAP_BIND_ADMIN = 1 |
const | LDAP_BIND_TEST = 2 |
const | LDAP_BIND_AUTH = 10 |
Private Member Functions | |
readAllUsers () | |
Fetch all users This function splits the query to filters like e.g (uid=a*) (uid=b*)... More... | |
runReadAllUsersPaged (string $dn) | |
read all users with ldap paging More... | |
runReadAllUsersPartial (string $dn) | |
Read all users partial by alphabet. More... | |
fetchGroupMembers (string $a_name='') | |
Fetch group member ids. More... | |
readUserData (string $a_name, bool $a_check_dn=false, bool $a_try_group_user_filter=false) | |
Read user data. More... | |
queryByScope (int $a_scope, string $a_base_dn, string $a_filter, array $a_attributes, array $controls=[]) | |
Query by scope IL_SCOPE_SUB => ldap_search IL_SCOPE_ONE => ldap_list. More... | |
connect () | |
Connect to LDAP server. More... | |
fetchUserProfileFields () | |
fetch required fields of user profile data More... | |
Private Attributes | |
const | IL_LDAP_SUPPORTED_CONTROL = 'supportedControl' |
const | PAGINATION_SIZE = 100 |
string | $ldap_server_url |
ilLDAPServer | $settings |
ilLogger | $logger |
ilLDAPAttributeMapping | $mapping |
array | $user_fields = [] |
array | $users = [] |
$lh = false | |
Definition at line 25 of file class.ilLDAPQuery.php.
ilLDAPQuery::__construct | ( | ilLDAPServer | $a_server, |
string | $a_url = '' |
||
) |
ilLDAPQueryException |
Definition at line 53 of file class.ilLDAPQuery.php.
References $DIC, ilLDAPAttributeMapping\_getInstanceByServerId(), connect(), fetchUserProfileFields(), ILIAS\Repository\logger(), and ILIAS\Repository\settings().
ilLDAPQuery::__destruct | ( | ) |
Destructor unbind from ldap server.
Definition at line 721 of file class.ilLDAPQuery.php.
ilLDAPQuery::bind | ( | int | $a_binding_type = ilLDAPQuery::LDAP_BIND_DEFAULT , |
string | $a_user_dn = '' , |
||
string | $a_password = '' |
||
) |
Bind to LDAP server.
public
int | binding_type ilLDAPQuery::LDAP_BIND_DEFAULT || ilLDAPQuery::LDAP_BIND_ADMIN |
ilLDAPQueryException | on connection failure. |
PhpMissingBreakStatementInspection
Definition at line 643 of file class.ilLDAPQuery.php.
References Vendor\Package\$e, $message, ilLDAPServer\DEFAULT_NETWORK_TIMEOUT, ilLDAPServer\LDAP_BIND_USER, ILIAS\Repository\logger(), and ILIAS\Repository\settings().
ilLDAPQuery::checkGroupMembership | ( | string | $a_ldap_user_name, |
array | $ldap_user_data | ||
) |
check group membership
string | login name |
array | user data |
Definition at line 318 of file class.ilLDAPQuery.php.
References $res, ilLogLevel\DEBUG, getServer(), ILIAS\Repository\logger(), queryByScope(), and readUserData().
ilLDAPQuery::checkPaginationEnabled | ( | ) |
Check if pagination is enabled (rfc: 2696)
Definition at line 731 of file class.ilLDAPQuery.php.
References getServer(), and ILIAS\Repository\logger().
Referenced by readAllUsers().
|
private |
Connect to LDAP server.
ilLDAPQueryException |
Definition at line 608 of file class.ilLDAPQuery.php.
References ILIAS\Repository\logger(), and ILIAS\Repository\settings().
Referenced by __construct().
|
private |
Fetch group member ids.
list<string> | $members |
Definition at line 394 of file class.ilLDAPQuery.php.
References $data, $res, ILIAS\Repository\logger(), queryByScope(), readUserData(), and ILIAS\Repository\settings().
Referenced by fetchUsers().
ilLDAPQuery::fetchUser | ( | string | $a_name | ) |
Get one user by login name.
string | $a_name | login name |
Definition at line 86 of file class.ilLDAPQuery.php.
References $users, and readUserData().
|
private |
fetch required fields of user profile data
Definition at line 708 of file class.ilLDAPQuery.php.
References ilLDAPRoleAssignmentRules\getAttributeNames(), getServer(), and ILIAS\Repository\settings().
Referenced by __construct().
ilLDAPQuery::fetchUsers | ( | ) |
Fetch all users.
Definition at line 101 of file class.ilLDAPQuery.php.
References $users, fetchGroupMembers(), ILIAS\Repository\logger(), readAllUsers(), and ILIAS\Repository\settings().
ilLDAPQuery::getServer | ( | ) |
Get server.
Definition at line 75 of file class.ilLDAPQuery.php.
References $settings.
Referenced by checkGroupMembership(), checkPaginationEnabled(), and fetchUserProfileFields().
ilLDAPQuery::modAdd | ( | string | $a_dn, |
array | $a_attribute | ||
) |
Add value to an existing attribute.
ilLDAPQueryException |
Definition at line 151 of file class.ilLDAPQuery.php.
ilLDAPQuery::modDelete | ( | string | $a_dn, |
array | $a_attribute | ||
) |
Delete value from an existing attribute.
ilLDAPQueryException |
Definition at line 165 of file class.ilLDAPQuery.php.
ilLDAPQuery::query | ( | string | $a_search_base, |
string | $a_filter, | ||
int | $a_scope, | ||
array | $a_attributes | ||
) |
Perform a query.
ilLDAPQueryException |
Definition at line 130 of file class.ilLDAPQuery.php.
References $res, and queryByScope().
|
private |
Query by scope IL_SCOPE_SUB => ldap_search IL_SCOPE_ONE => ldap_list.
array | null | $controls | LDAP Control to be passed on the the ldap functions |
Definition at line 545 of file class.ilLDAPQuery.php.
References Vendor\Package\$e, $message, ilLDAPServer\LDAP_SCOPE_BASE, ilLDAPServer\LDAP_SCOPE_ONE, ilLDAPServer\LDAP_SCOPE_SUB, and ILIAS\Repository\logger().
Referenced by checkGroupMembership(), fetchGroupMembers(), query(), readUserData(), runReadAllUsersPaged(), and runReadAllUsersPartial().
|
private |
Fetch all users This function splits the query to filters like e.g (uid=a*) (uid=b*)...
This avoids AD page_size_limit
Definition at line 178 of file class.ilLDAPQuery.php.
References $data, Vendor\Package\$e, checkPaginationEnabled(), ILIAS\Repository\logger(), readUserData(), runReadAllUsersPaged(), runReadAllUsersPartial(), and ILIAS\Repository\settings().
Referenced by fetchUsers().
|
private |
Read user data.
bool | $a_check_dn | check dn |
bool | $a_try_group_user_filter | use group filter |
Definition at line 474 of file class.ilLDAPQuery.php.
References $res, ilObjUser\_checkExternalAuthAccount(), ilLDAPServer\LDAP_SCOPE_BASE, ILIAS\Repository\logger(), queryByScope(), and ILIAS\Repository\settings().
Referenced by checkGroupMembership(), fetchGroupMembers(), fetchUser(), and readAllUsers().
|
private |
read all users with ldap paging
ilLDAPPagingException |
Definition at line 223 of file class.ilLDAPQuery.php.
References Vendor\Package\$e, $res, ILIAS\Repository\logger(), queryByScope(), and ILIAS\Repository\settings().
Referenced by readAllUsers().
|
private |
Read all users partial by alphabet.
string | $dn |
Definition at line 277 of file class.ilLDAPQuery.php.
References $res, ILIAS\Repository\logger(), queryByScope(), and ILIAS\Repository\settings().
Referenced by readAllUsers().
|
private |
Definition at line 35 of file class.ilLDAPQuery.php.
|
private |
Definition at line 48 of file class.ilLDAPQuery.php.
|
private |
Definition at line 38 of file class.ilLDAPQuery.php.
|
private |
Definition at line 40 of file class.ilLDAPQuery.php.
|
private |
Definition at line 36 of file class.ilLDAPQuery.php.
Referenced by getServer().
|
private |
Definition at line 42 of file class.ilLDAPQuery.php.
|
private |
Definition at line 43 of file class.ilLDAPQuery.php.
Referenced by fetchUser(), and fetchUsers().
|
private |
Definition at line 32 of file class.ilLDAPQuery.php.
const ilLDAPQuery::LDAP_BIND_ADMIN = 1 |
Definition at line 28 of file class.ilLDAPQuery.php.
Referenced by ilLDAPRoleGroupMapping\getLDAPQueryInstance().
const ilLDAPQuery::LDAP_BIND_AUTH = 10 |
Definition at line 30 of file class.ilLDAPQuery.php.
Referenced by ilAuthProviderLDAP\doAuthentication().
const ilLDAPQuery::LDAP_BIND_DEFAULT = 0 |
Definition at line 27 of file class.ilLDAPQuery.php.
Referenced by ilECSCmsCourseMemberCommandQueueHandler\createMember(), and ilLDAPUserSynchronisation\readUserData().
const ilLDAPQuery::LDAP_BIND_TEST = 2 |
Definition at line 29 of file class.ilLDAPQuery.php.
Referenced by ilLDAPServer\doConnectionCheck().
|
private |
Definition at line 33 of file class.ilLDAPQuery.php.