You're Invited:Meet the Socket Team at BlackHat and DEF CON in Las Vegas, Aug 7-8.RSVP
Socket
Socket
Sign inDemoInstall

simpleldap

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

simpleldap

A module that makes simple LDAP usage simple.


Maintainers
1

Readme

============== simpleldap

About

A small wrapper around the python-ldap library that provides a more Pythonic interface for LDAP server connections, LDAP objects, and the common get and search operations.

Installation

Install using pip::

pip install simpleldap

Examples

A quick and easy example using simpleldap::

>>> import simpleldap
>>> conn = simpleldap.Connection('directory.example.com')
>>> user = conn.get("uid=myuser")
>>> user.dn
'uid=myuser,dc=directory,dc=example,dc=com'
>>> user['cn']
['Joe Smith', 'Joe M. Smith']
>>> user.first('cn')
'Joe Smith'
>>> conn.close()

The Connection object can also be used as a context manager, e.g.::

with simpleldap.Connection('directory.example.com') as conn:
    users = conn.search("(&(givenName=Joe)(sn=Smith))")

A common method for authenticating users is to connect to an LDAP server using a service user/account and then attempt a bind operation using the user's credentials (i.e. DN and password). The authenticate method makes this simple::

with simpleldap.Connection('directory.example.com') as conn:
    is_valid = conn.authenticate('uid=myuser,dc=directory,dc=example,dc=com', 'password')

.. note:: The authentication method does not perform an unbind and does not bind again using the original connection's credentials; therefore, any further actions following a successful authenticate call will be performed as the authenticated user.

LDAP also offers a feature to compare an attribute's value with a given string. This can occasionally be more efficient and expressive than grabbing an entire object from the LDAP store. simpleldap offers a compare method for this feature::

>>> conn = simpleldap.Connection('directory.example.com')
>>> user_dn = 'uid=myuser,dc=directory,dc=example,dc=com'
>>> conn.compare(user_dn, 'cn', 'Joe Smith')
True

Keywords

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc