ldap3-dev


Nameldap3-dev JSON
Version 2.10.5 PyPI version JSON
download
home_pagehttps://github.com/cannatag/ldap3
SummaryA strictly RFC 4510 conforming LDAP V3 pure Python client library
upload_time2024-12-06 14:25:30
maintainerNone
docs_urlNone
authorGiovanni Cannata
requires_pythonNone
licenseLGPL v3
keywords python3 python2 ldap
VCS
bugtrack_url
requirements pyasn1 pycryptodomex winkerberos
Travis-CI
coveralls test coverage No coveralls.
            LDAP3
=====

.. image:: https://img.shields.io/pypi/v/ldap3.svg
    :target: https://pypi.python.org/pypi/ldap3/
    :alt: Latest Version

.. image:: https://img.shields.io/pypi/l/ldap3.svg
    :target: https://pypi.python.org/pypi/ldap3/
    :alt: License

.. image:: https://img.shields.io/travis/cannatag/ldap3/master.svg
    :target: https://travis-ci.org/cannatag/ldap3
    :alt: TRAVIS-CI build status for master branch


ldap3 is a strictly RFC 4510 conforming **LDAP V3 pure Python client** library. The same codebase runs in Python 2, Python 3, PyPy and PyPy3.


A more pythonic LDAP
--------------------

LDAP operations look clumsy and hard-to-use because they reflect the old-age idea that time-consuming operations should be performed client-side
to not hog the server with heavy elaborations. To alleviate this ldap3 includes a fully functional **Abstraction Layer** that lets you
interact with the LDAP server in a modern and *pythonic* way. With the Abstraction Layer you don't need to directly issue any LDAP operation at all.


Thread safe strategies
----------------------

In multithreaded programs you must use one of **SAFE_SYNC** (synchronous connection strategy), **SAFE_RESTARTABLE** (restartable syncronous connection strategy) or **ASYNC** (asynchronous connection strategy).
   Each LDAP operation with SAFE_SYNC or SAFE_RESTARTABLE strategies returns a tuple of four elements: status, result, response and request.

   * status: states if the operation was successful

   * result: the LDAP result of the operation

   * response: the response of a LDAP Search Operation

   * request: the original request of the operation

   The SafeSync strategy can be used with the Abstract Layer, but the Abstract Layer currently is NOT thread safe.
   For example, to use *SAFE_SYNC*::

      from ldap3 import Server, Connection, SAFE_SYNC
      server = Server('my_server')
      conn = Connection(server, 'my_user', 'my_password', client_strategy=SAFE_SYNC, auto_bind=True)
      status, result, response, _ = conn.search('o=test', '(objectclass=*)')  # usually you don't need the original request (4th element of the returned tuple)


  With *ASYNC* you must request the response with the *get_response()* method.

Home Page
---------

The home page of the ldap3 project is https://github.com/cannatag/ldap3


Documentation
-------------

Documentation is available at http://ldap3.readthedocs.io


License
-------

The ldap3 project is open source software released under the **LGPL v3 license**.
Copyright 2013 - 2020 Giovanni Cannata


PEP8 Compliance
---------------

ldap3 is PEP8 compliant, except for line length.


Download
--------

Package download is available at https://pypi.python.org/pypi/ldap3.


Install
-------

Install with **pip install ldap3**


Git repository
--------------

You can download the latest source at https://github.com/cannatag/ldap3


Continuous integration
----------------------

Continuous integration for testing is at https://travis-ci.org/cannatag/ldap3


Support & Development
---------------------

You can submit support tickets on https://github.com/cannatag/ldap3/issues/new
You can submit pull request on the **dev** branch at https://github.com/cannatag/ldap3/tree/dev


Thanks to
---------

* **Ilya Etingof**, the author of the *pyasn1* package for his excellent work and support.

* **Mark Lutz** for his *Learning Python* and *Programming Python* excellent books series and **John Goerzen** and **Brandon Rhodes** for their book *Foundations of Python Network Programming*. These books are wonderful tools for learning Python and this project owes a lot to them.

* **JetBrains** for donating to this project the Open Source license of *PyCharm Professional*.

* **GitHub** for providing the *free source repository space and the tools* I use to develop this project.

* The **FreeIPA** team for letting me use their demo LDAP server in the ldap3 tutorial.


Contact me
----------

For information and suggestions you can contact me at cannatag@gmail.com. You can also open a support ticket on https://github.com/cannatag/ldap3/issues/new


Donate
------

If you want to keep this project up and running you can send me an Amazon gift card. I will use it to improve my skills in Information and Communication technologies.


Changelog
---------

Updated changelog at https://ldap3.readthedocs.io/changelog.html


            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/cannatag/ldap3",
    "name": "ldap3-dev",
    "maintainer": null,
    "docs_url": null,
    "requires_python": null,
    "maintainer_email": null,
    "keywords": "python3 python2 ldap",
    "author": "Giovanni Cannata",
    "author_email": "cannatag@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/f2/73/4a5230e1fff3d674ee25b6fa6e3f2887cd03588d88542f8939beb1085057/ldap3_dev-2.10.5.tar.gz",
    "platform": null,
    "description": "LDAP3\n=====\n\n.. image:: https://img.shields.io/pypi/v/ldap3.svg\n    :target: https://pypi.python.org/pypi/ldap3/\n    :alt: Latest Version\n\n.. image:: https://img.shields.io/pypi/l/ldap3.svg\n    :target: https://pypi.python.org/pypi/ldap3/\n    :alt: License\n\n.. image:: https://img.shields.io/travis/cannatag/ldap3/master.svg\n    :target: https://travis-ci.org/cannatag/ldap3\n    :alt: TRAVIS-CI build status for master branch\n\n\nldap3 is a strictly RFC 4510 conforming **LDAP V3 pure Python client** library. The same codebase runs in Python 2, Python 3, PyPy and PyPy3.\n\n\nA more pythonic LDAP\n--------------------\n\nLDAP operations look clumsy and hard-to-use because they reflect the old-age idea that time-consuming operations should be performed client-side\nto not hog the server with heavy elaborations. To alleviate this ldap3 includes a fully functional **Abstraction Layer** that lets you\ninteract with the LDAP server in a modern and *pythonic* way. With the Abstraction Layer you don't need to directly issue any LDAP operation at all.\n\n\nThread safe strategies\n----------------------\n\nIn multithreaded programs you must use one of **SAFE_SYNC** (synchronous connection strategy), **SAFE_RESTARTABLE** (restartable syncronous connection strategy) or **ASYNC** (asynchronous connection strategy).\n   Each LDAP operation with SAFE_SYNC or SAFE_RESTARTABLE strategies returns a tuple of four elements: status, result, response and request.\n\n   * status: states if the operation was successful\n\n   * result: the LDAP result of the operation\n\n   * response: the response of a LDAP Search Operation\n\n   * request: the original request of the operation\n\n   The SafeSync strategy can be used with the Abstract Layer, but the Abstract Layer currently is NOT thread safe.\n   For example, to use *SAFE_SYNC*::\n\n      from ldap3 import Server, Connection, SAFE_SYNC\n      server = Server('my_server')\n      conn = Connection(server, 'my_user', 'my_password', client_strategy=SAFE_SYNC, auto_bind=True)\n      status, result, response, _ = conn.search('o=test', '(objectclass=*)')  # usually you don't need the original request (4th element of the returned tuple)\n\n\n  With *ASYNC* you must request the response with the *get_response()* method.\n\nHome Page\n---------\n\nThe home page of the ldap3 project is https://github.com/cannatag/ldap3\n\n\nDocumentation\n-------------\n\nDocumentation is available at http://ldap3.readthedocs.io\n\n\nLicense\n-------\n\nThe ldap3 project is open source software released under the **LGPL v3 license**.\nCopyright 2013 - 2020 Giovanni Cannata\n\n\nPEP8 Compliance\n---------------\n\nldap3 is PEP8 compliant, except for line length.\n\n\nDownload\n--------\n\nPackage download is available at https://pypi.python.org/pypi/ldap3.\n\n\nInstall\n-------\n\nInstall with **pip install ldap3**\n\n\nGit repository\n--------------\n\nYou can download the latest source at https://github.com/cannatag/ldap3\n\n\nContinuous integration\n----------------------\n\nContinuous integration for testing is at https://travis-ci.org/cannatag/ldap3\n\n\nSupport & Development\n---------------------\n\nYou can submit support tickets on https://github.com/cannatag/ldap3/issues/new\nYou can submit pull request on the **dev** branch at https://github.com/cannatag/ldap3/tree/dev\n\n\nThanks to\n---------\n\n* **Ilya Etingof**, the author of the *pyasn1* package for his excellent work and support.\n\n* **Mark Lutz** for his *Learning Python* and *Programming Python* excellent books series and **John Goerzen** and **Brandon Rhodes** for their book *Foundations of Python Network Programming*. These books are wonderful tools for learning Python and this project owes a lot to them.\n\n* **JetBrains** for donating to this project the Open Source license of *PyCharm Professional*.\n\n* **GitHub** for providing the *free source repository space and the tools* I use to develop this project.\n\n* The **FreeIPA** team for letting me use their demo LDAP server in the ldap3 tutorial.\n\n\nContact me\n----------\n\nFor information and suggestions you can contact me at cannatag@gmail.com. You can also open a support ticket on https://github.com/cannatag/ldap3/issues/new\n\n\nDonate\n------\n\nIf you want to keep this project up and running you can send me an Amazon gift card. I will use it to improve my skills in Information and Communication technologies.\n\n\nChangelog\n---------\n\nUpdated changelog at https://ldap3.readthedocs.io/changelog.html\n\n",
    "bugtrack_url": null,
    "license": "LGPL v3",
    "summary": "A strictly RFC 4510 conforming LDAP V3 pure Python client library",
    "version": "2.10.5",
    "project_urls": {
        "Homepage": "https://github.com/cannatag/ldap3"
    },
    "split_keywords": [
        "python3",
        "python2",
        "ldap"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "7f00309636725f0db5fbfd0b33ded4f8a0167150b5a9d681f478f0b20f9197df",
                "md5": "4aa125c281bf641eb15e24b4cc879492",
                "sha256": "44cc0b2c5ced61a96159dea5b15e8aa499cde537802bf80cffe20cc166787d5b"
            },
            "downloads": -1,
            "filename": "ldap3_dev-2.10.5-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "4aa125c281bf641eb15e24b4cc879492",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 481929,
            "upload_time": "2024-12-06T14:25:27",
            "upload_time_iso_8601": "2024-12-06T14:25:27.907292Z",
            "url": "https://files.pythonhosted.org/packages/7f/00/309636725f0db5fbfd0b33ded4f8a0167150b5a9d681f478f0b20f9197df/ldap3_dev-2.10.5-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f2734a5230e1fff3d674ee25b6fa6e3f2887cd03588d88542f8939beb1085057",
                "md5": "4b13f7fb47cb950b29b1dcd8d44310db",
                "sha256": "a67f864ce5aaae28603347aae72edf0ddc9a21b6625967e8e7a4f458c3f76677"
            },
            "downloads": -1,
            "filename": "ldap3_dev-2.10.5.tar.gz",
            "has_sig": false,
            "md5_digest": "4b13f7fb47cb950b29b1dcd8d44310db",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 446133,
            "upload_time": "2024-12-06T14:25:30",
            "upload_time_iso_8601": "2024-12-06T14:25:30.373800Z",
            "url": "https://files.pythonhosted.org/packages/f2/73/4a5230e1fff3d674ee25b6fa6e3f2887cd03588d88542f8939beb1085057/ldap3_dev-2.10.5.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-12-06 14:25:30",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "cannatag",
    "github_project": "ldap3",
    "travis_ci": true,
    "coveralls": false,
    "github_actions": false,
    "requirements": [
        {
            "name": "pyasn1",
            "specs": [
                [
                    ">=",
                    "0.4.6"
                ]
            ]
        },
        {
            "name": "pycryptodomex",
            "specs": []
        },
        {
            "name": "winkerberos",
            "specs": []
        }
    ],
    "lcname": "ldap3-dev"
}
        
Elapsed time: 0.37077s