A simple LDAP server for BUT FIT ISA course.
The server requires CSV database file with three columnts separated by semicolons.
- the first colunmn is represented as an attribute cn (common name)
- the second column is represented as an attribute uid or userid
- the third colimn is represented as an atrribude mail
You can find an example at static/example.csv
Run make
from the project root
The database file is the only required attribute. Specify it as:
- -f $PATH_TO_FILE
You can also specify a port as:
- -p $PORT
A default port is 389 - may require superuser privileges
This usage guide can be also printed using a help switch
- -h
$ ./myldap -f static/example.csv -p 1234
ldapsearch utility may be used for server testing
$ ldapsearch -x -h localhost -p 1234
Parameter -x
must be supplied for client to use simple bind method.
Client may use following operations
- bind
- searchRequest
- present: match all entries in the database
""
- equalityMatch: string match
"uid=psveter"
- substrings: match substring
"cn=Peter*"
- not: filter negation
"(!(cn=*er))"
- or: filter disjunction
"(|(cn=Pet*)(cn=Joz*))"
- and: filter conjunction
"(&(cn=Pet*)(uid=psv*))"
- unbind
- present: match all entries in the database
Server provides following responses
- bindResponse
- searchResEntry
- searchResDone
See docs/
.
Detailed documentation is available only in Slovak.
See LICENSE
Eduard Čuba xcubae00@stud.fit.vutbr.cz
November 2017