summary refs log tree commit diff
path: root/synapse/python_dependencies.py
diff options
context:
space:
mode:
authorMartin Weinelt <mweinelt@gmail.com>2016-06-06 02:05:57 +0200
committerMartin Weinelt <mweinelt@gmail.com>2016-06-22 17:51:59 +0200
commit0a32208e5dde4980a5962f17e9b27f2e28e1f3f1 (patch)
treea4645bede5b25546246eea46c969c67e8ac79899 /synapse/python_dependencies.py
parentMerge pull request #888 from matrix-org/markjh/content_repo (diff)
downloadsynapse-0a32208e5dde4980a5962f17e9b27f2e28e1f3f1.tar.xz
Rework ldap integration with ldap3
Use the pure-python ldap3 library, which eliminates the need for a
system dependency.

Offer both a `search` and `simple_bind` mode, for more sophisticated
ldap scenarios.
- `search` tries to find a matching DN within the `user_base` while
  employing the `user_filter`, then tries the bind when a single
  matching DN was found.
- `simple_bind` tries the bind against a specific DN by combining the
  localpart and `user_base`

Offer support for STARTTLS on a plain connection.

The configuration was changed to reflect these new possibilities.

Signed-off-by: Martin Weinelt <hexa@darmstadt.ccc.de>
Diffstat (limited to 'synapse/python_dependencies.py')
-rw-r--r--synapse/python_dependencies.py3
1 files changed, 3 insertions, 0 deletions
diff --git a/synapse/python_dependencies.py b/synapse/python_dependencies.py
index e0a7a19777..e024cec0a2 100644
--- a/synapse/python_dependencies.py
+++ b/synapse/python_dependencies.py
@@ -48,6 +48,9 @@ CONDITIONAL_REQUIREMENTS = {
         "Jinja2>=2.8": ["Jinja2>=2.8"],
         "bleach>=1.4.2": ["bleach>=1.4.2"],
     },
+    "ldap": {
+        "ldap3>=1.0": ["ldap3>=1.0"],
+    },
 }