Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Deprecate LDAP support #393

Open
sergeyklay opened this issue Jun 15, 2022 · 1 comment
Open

Deprecate LDAP support #393

sergeyklay opened this issue Jun 15, 2022 · 1 comment
Assignees
Labels
deprecation The labeled subject is related to deprecated functionality tech debt Technical debt issues - which point out issues we should resolve long-term

Comments

@sergeyklay
Copy link
Collaborator

sergeyklay commented Jun 15, 2022

The current LDAP URL Schema parsing does not work well. It can't even handle canonical RFC examples, let alone be capable of validation.

Given that the maintainers of this project are not strong in this area, and that there are more professional solutions for parsing LDAP URLs, I want to suggest deprecating and removing LDAP parsing support from the project.

The responsibility of the project should be to work with environment variables and do it well, not to be able to parse every conceivable URL schema. I wouldn't want to spend more time on this to deal with a subject area from which I am too far away. In addition, I would like to strive to ensure that the project becomes simpler, more stable and more predictable.

As for the current users (if there are any at all). Migrating to another solution is quite simple, for example using python-ldap:

import environ
from ldapurl import LDAPUrl

env = environ.Env()
ldap_url = LDAPUrl(ldapUrl=env.str('SOPHISTICATED_LDAP_URL'))

db_url = {
    'ENGINE':   'ldapdb.backends.ldap',
    'HOST':     ldap_url.hostport.rsplit(':')[0],
    'PASSWORD': ldap_url.cred,
    'PORT':     ldap_url.hostport.rsplit(':')[1],
    'USER':     ldap_url.who,
    # Other options ... 
}

Some projects that obviously have a better understanding of this area:

@sergeyklay sergeyklay self-assigned this Jun 15, 2022
@sergeyklay sergeyklay added deprecation The labeled subject is related to deprecated functionality tech debt Technical debt issues - which point out issues we should resolve long-term labels Jun 15, 2022
@sergeyklay
Copy link
Collaborator Author

/cc @joke2k

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
deprecation The labeled subject is related to deprecated functionality tech debt Technical debt issues - which point out issues we should resolve long-term
Projects
None yet
Development

No branches or pull requests

1 participant