Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Build Status Code Coverage

A LDAP-backed key-value store backend for Indicium.

Usage

# Instantiate and write some data.
from indicium.ldap import LDAPStore
store = LDAPStore("ldap://localhost")
store.put("/dc=org/dc=test", { "dc": "test", "o": "My organization",
        "objectClass": ["top", "dcObject", "organization"] })

# Read the data back.
org = store.get("/dc=org/dc=test")

# Using the DN directly is also possible.
assert org == store.get("/dc=test,dc=org")

Note that a directory service accessed using LDAP is supposed to have a certain structure, so depending on the schema and structure used by the directory server, and therefore the set of useable keys (and whether they are writeable or not) will vary. In particular:

  • Path components of keys are mapped to the DN components of the LDAP entities, in reversed order.

  • When using .put() is is mandatory to specify an objectClass attribute. Note that when writing to existing objects it is possible to specify a different objectClass value to mutate the object, but this is discouraged and may not work with some directory servers—it may be needed to .delete() the entity first.

  • Using .put() to modify an existing object uses MODIFY_REPLACE change operations, which means that values of attributes will be replaced, or added, but never removed. For now the only way of deleting entity attributes is to .delete() the entity first, and then re-create it.

Installation

All stable releases are uploaded to PyPI, so you can install them and upgrade using pip:

pip install indicium-ldap

Alternatively, you can install the latest development code —at your own risk— directly from the Git repository:

pip install git://github.com/aperezdc/indicium-ldap

Development

If you want to contribute, please use the usual GitHub workflow:

  1. Clone the repository.

  2. Hack on your clone.

  3. Send a pull request for review.

If you do not have programming skills, you can still contribute by reporting issues that you may encounter. Contributions to the documentation are very welcome, too!

Metadata

Release files for indicium-ldap 0.1.0a0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for indicium-ldap 0.1.0a0
File Size Uploaded
indicium-ldap-0.1.0a0.tar.gz 5.7 kB Details

Release files / indicium-ldap-0.1.0a0.tar.gz

Download URL indicium-ldap-0.1.0a0.tar.gz
Size 5.7 kB
Tags Source
SHA-256 checksum
How to use checksums
70388a69c6cdf20f2e247978cc15c8c3dbc6e70cd09391b7915b150b19f0a290
BLAKE2b-256 checksum
How to use checksums
ceeed3abebfbabec0f6e8d8753be0f2b94bb976212b608620a739781c624d906
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.1.0a0 This release

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page