... | ... | @@ -57,6 +57,19 @@ Diese Einstellungen sind zwingend notwendig, wenn Zugriffsberechtigungen über N |
|
|
* `$ldap_configs['users_one']` und `$ldap_configs['users_two']`: Durchsucht die Nutzer nach einer (Teil-)Kennung oder einem (Teil-)Namen. Falls eine Zeichenkette ohne Leerzeichen übergeben wird, wird `users_one` verwendet und es werden die Attribute `cn`, `sn` und `givenname` nach dem Suchbegriff durchsucht. Bei Zeichenketten mit Leerzeichen wird `users_two` verwendet und die Zeichenkette aufgeteilt in Vor- und Nachname und die Attribute `givenname` und `sn` mit der Kombination durchsucht. Wie immer können die Filter-Attribute verändert werden, aber die ursprüngliche Zuordnung der Platzhalter muss beachtet werden. Die abgefragten Attribute sind identisch zur `users_id` Abfrage.
|
|
|
* `$ldap_configs['usermail']`: Fragt die E-Mail Adresse zu einer Nutzerkennung ab. Wie bei den anderen Personenabfragen kann der Filter von `cn` auf andere Attribute geändert werden.
|
|
|
|
|
|
**Beispiel für eine angepasste Konfiguration:**
|
|
|
```php
|
|
|
$ldap_configs = [
|
|
|
'groups' => ['ldap_base' => 'OU=groups,DC=wwu,DC=de', 'ldap_filter' => '(&(objectClass=group)(|(cn=*$*)(description=*$*)))', 'ldap_attributes' => ['cn', 'description']],
|
|
|
'usergroups' => ['ldap_base' => 'OU=users,DC=wwu,DC=de', 'ldap_filter' => '(&(objectClass=user)(samaccountname=$))', 'ldap_attributes' => ['memberof']],
|
|
|
'groupname' => ['ldap_base' => 'OU=groups,DC=wwu,DC=de', 'ldap_filter' => '(&(objectClass=group)(cn=$))', 'ldap_attributes' => ['description']],
|
|
|
'users_id' => ['ldap_base' => 'OU=users,DC=wwu,DC=de', 'ldap_filter' => '(&(objectClass=user)(samaccountname=$))', 'ldap_attributes' => ['samaccountname', 'givenname', 'sn', 'gecos', 'telephonenumber', 'mail']],
|
|
|
'users_one' => ['ldap_base' => 'OU=users,DC=wwu,DC=de', 'ldap_filter' => '(&(objectClass=user)(|(samaccountname=$*)(sn=$*)(givenname=$*)))', 'ldap_attributes' => ['samaccountname', 'givenname', 'sn', 'gecos', 'telephonenumber', 'mail']],
|
|
|
'users_two' => ['ldap_base' => 'OU=users,DC=wwu,DC=de', 'ldap_filter' => '(&(objectClass=user)(|(&(sn=$*)(givenname=$*))(&(sn=$*)(givenname=$*))))', 'ldap_attributes' => ['samaccountname', 'givenname', 'sn', 'gecos', 'telephonenumber', 'mail']],
|
|
|
'usermail' => ['ldap_base' => 'OU=users,DC=wwu,DC=de', 'ldap_filter' => '(&(objectClass=user)(samaccountname=$))', 'ldap_attributes' => ['mail']],
|
|
|
];
|
|
|
```
|
|
|
|
|
|
#### Erläuterungen zu den Filtern
|
|
|
Damit bei Personensuchen an unterschiedlchen Stellen in SecDoc verschiedene Werte genutzt werden können, z.B. nur Mitarbeiter als verantwortliche Personen gesucht werden können, aber auch studentische Hilfskräfte in der Nutzersuche für Zugriffsrechte auftauchen, werden die `$ldap_user_filter` Variablen genutzt. Die Filter werden an die vorhandenen LDAP-Filter aus den `$ldap_configs` Variablen angehangen.
|
|
|
|
... | ... | |