LDAP Attributes Selector
This command line program, allows you to query an LDAP server and retrieve a custom set of provided attributes.
Features
This program offers the following features:
- Support for both anonymous and authenticated LDAP queries.
- Encrypted queries with SSL.
- Support for LDAP filters and LDAP paging (retrieve the total amount of entries, regardless of limitations imposed by the server)!.
- Export results to CSV.
Requirements
Make sure you meet the following requirements:
- Python 3
- python-ldap library (tested with v3.2.0).
Installation
You can install it with pip:
pip install ldap-attributes-selector
Usage
First, some aspects of this tool to take into account:
- Results are shown in CSV format, but they aren't written to a file by default!.
- Note that whenever an LDAP entry doesn't have any of the provided attributes,
a
Nonevalue is set, instead!. - When establishing an SSL connection, depending on the security settings on your LDAP server, you might gonna need to perform some additional configuration on your LDAP client!.
- As a general rule, if you are able to make an LDAP query with the
ldapsearchtool, this program should work as well!.
Here's the complete help output:
usage: ldap-attributes-selector [-h] [-u USERDN] [-S SIZELIMIT] [-f FILTER]
[-w WRITETOCSV] [-v]
SERVER BASEDN ATTRIBUTES
Get a CSV formatted list, based on a custom set of LDAP attributes
positional arguments:
SERVER URI formatted address (IP or domain name) of the LDAP
server
BASEDN Specify the searchbase or base DN of the LDAP server
ATTRIBUTES A set of comma separated LDAP attributes to list
optional arguments:
-h, --help show this help message and exit
-u USERDN, --userdn USERDN
Distinguished Name (DN) of the user to bind to the
LDAP directory
-S SIZELIMIT, --sizelimit SIZELIMIT
The amount of per-page entries to retrieve (Default:
500)
-f FILTER, --filter FILTER
Specify an LDAP filter (Default: 'objectClass=*')
-w WRITETOCSV, --writetocsv WRITETOCSV
Write results to a CSV file!.
-v, --version Show current version
Examples
In the following example, an encrypted LDAP query (note the ldaps:// when specifying the LDAP server) is made, and the attributes name, mail and ipPhone are retrieved. Also, LDAP filter objectClass=person is set:
ldap-attributes-selector ldaps://somecorp.com "dc=somecorp,dc=com" -u "cn=Joe,ou=Users,dc=somecorp,dc=com" "name,mail,ipPhone" -f objectClass=person
Unlike the previous example, on the following one, the query isn't encrypted and a different LDAP filter is used:
ldap-attributes-selector ldap://somecorp.com "dc=somecorp,dc=com" -u "uid=zimbra,cn=admins,cn=zimbra" "givenName,mail,zimbraAccountStatus" -f 'objectClass=inetOrgPerson'
This one is similar to the first one except that, this time, the retrieved results, are gonna be exported to a CSV file!:
ldap-attributes-selector ldaps://somecorp.com "dc=somecorp,dc=com" -u "cn=joe,ou=Users,dc=somecorp,dc=com" "name,mail,ipPhone" -f objectClass=person -w users.csv
If no user identity (in DN format!) is specified (-u argument), an anonymous LDAP query is performed, as in the following example:
ldap-attributes-selector ldap://somecorp.com "dc=somecorp,dc=com" "sn,givenName,mail"
License
This program is licensed under the GPLv3.
Release files for ldap-attributes-selector 0.2.7
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| ldap-attributes-selector-0.2.7.tar.gz | 6.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| ldap_attributes_selector-0.2.7-py3-none-any.whl | Python 3 | none | any | Details |
Total release size:27.4 kB
Release files / ldap-attributes-selector-0.2.7.tar.gz
| Download URL | ldap-attributes-selector-0.2.7.tar.gz |
|---|---|
| Size | 6.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
280b2c01a0c69827514f4fc1c107de0434c931c48ab21f3c0ebfed715656cb25
|
|
BLAKE2b-256 checksum How to use checksums |
b0966ef3653533f5e54f9f08ed8a71cde571aaa55f48cfaa3f1b1e7358da7367
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.4.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.7.3
|
Release files / ldap_attributes_selector-0.2.7-py3-none-any.whl
| Download URL | ldap_attributes_selector-0.2.7-py3-none-any.whl |
|---|---|
| Size | 20.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d70bdd7975d0cbeef4ced0d46823c55a5a8cdee9e79253136b22d05da5065b3c
|
|
BLAKE2b-256 checksum How to use checksums |
c29ea939279adbade2616a3f7a3a58bade66ac9bb0cec60cc1541dd793c21aa6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.4.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.7.3
|