blob: 863be6d12acf5d31b64ad9304763ce5db8a89901 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
|
A Repsys plugin for obtaining users from a LDAP server.
In order to enable the plugin, the user must define the following
options in the [global] section of repsys.conf:
ldap-server [required]
the host name of the LDAP server
ldap-port [optional] [default: 389]
the port of the LDAP server
ldap-base [required]
the base DN where the search will be performed
ldap-binddn [optional] [default: empty]
the DN used to bind
ldap-bindpw [optional] [default: empty]
the password used to bind
ldap-filterformat [optional]
[default: (&(objectClass=inetOrgPerson)(uid=$username))]
RFC-2254 filter string used in the search of the user entry.
Note that this is a python template string and will have the
user name as parameter. For example:
ldap-filterformat = (&(objectClass=inetOrgPerson)(uid=$username))
Will result in the search filter:
(&(objectClass=inetOrgPerson)(uid=john))
ldap-resultformat [optional] [default: $cn <$mail>]
This is a python template string. This string will be
formatted using one dict object containing the fields
returned in the LDAP search, for example:
>>> format = Template("$cn <$mail>")
>>> d = search(basedn, filter)
>>> d
{"cn": "John Doe", "mail": "john@mandriva.org",
"uidNumber": "1290", "loginShell": "/bin/bash",
... many other attributes ... }
>>> value = format.substitute(d)
>>> print value
John Doe <john@mandriva.org>
Note that only the first value of the attributes will be
used.
When the searched option is not found, it will try in repsys.conf. All
the values found. (including from repsys.conf) will be cached between
each configuration access.
This plugin requires the package python-ldap.
For more information, look http://qa.mandriva.com/show_bug.cgi?id=30549
|