1.7 KiB
Implementing cutom backends
API
The backend modules must respect the following API:
ldapcherry.backend.Backend
Configuration
Configuration for your backend is declared in the main ini file, inside [backends] section:
For example with the configuration:
[backends]
# class path to module
b_id.module = "my.backend.module"
b_id.param1 = "my value 1"
b_id.param2 = "my value 2"
Note
One module can be instanciated several times, the prefix b_id permits to differenciate instances and their specific configuration.
The following hash will be passed as configuration to the module constructor as parameter config:
{'param1': "my value 1",
'param2': "my value 2",
}
After having set self.config to config in the constructor, parameters can be recovered by self.get_param:
ldapcherry.backend.Backend
Exceptions
The following exception can be used in your module
ldapcherry.exceptions
These exceptions permit a nicer error handling and avoid a generic message to be thrown at the user.
Example
Here is the ldap backend module that comes with LdapCherry:
../ldapcherry/backend/backendLdap.py