Comments (5)
I read more carefully, and of course, you are right. For the record, I ran into this issue because someone from work (whom I haven't found... yet) renamed a number of AD users, who suddenly lost access to an application I wrote.
Oh, and the parenthesis were closed. Like this : cn=Some Guy (foo),dc=bar,dc=com
from go-ad-auth.
@BZValoche good catch! You found an edge case that I certainly didn't expect.
I believe this issue is fixed in v3.1.3. I've also added a test case for this issue. Can you please test the new version and reopen this case if it didn't fix the issue for you?
from go-ad-auth.
Actually, after further research, this doesn't fully resolve the issue, though it does seem to cover some cases. See this go-ldap issue.
I think this issue would be better resolved in go-ldap, but I'll entertain a PR if someone wants to send one. As of right now, I don't have the time to devote to this.
from go-ad-auth.
I just tested, it resolves the issue.
I don't think the issue you are mentioning is worth talking about. When you send a LDAP query, your filter must be properly formed, i.e. parenthesis escaped where needed. go-ldap just cannot guess which parenthesis should be escaped, and which should not. The fix in your package is the proper way to go IMHO. And as a matter of fact, it... just... works... ;-)
Thanks for the good work.
from go-ad-auth.
Good to hear!
In testing, there are still issues with CNs like (test
, test=
, and probably whatever other special symbols should be escaped in the DN. The filter compiles, but since the library doesn't properly escape those characters, searches and modifies will fail on them with a "not found" error. While I'd love this library to be feature complete, you're the first who's ever had an issues with special characters. Honestly, if you're naming your objects with weird characters or unclosed parenthesis, you're probably having issues with more than just this library.
I'll keep this issue open if anyone wants to send a PR, or maybe I'll have some time to mess with this in the future.
from go-ad-auth.
Related Issues (13)
- Authenticates multiple passwords HOT 3
- Unable to change password with TLS not enabled in domain
- Unable to change user password if TLS is not enabled in domain HOT 3
- adauth.AuthenticateExtended call is not returning an expected ldap group HOT 1
- Connection error: LDAP Result Code 2 "Protocol Error": unsupported extended operation HOT 3
- Wrong keyword HOT 1
- Authentication on LDAP over TLS does not work HOT 2
- Thanks for package HOT 1
- LDAP Error : Amount Of Entries Returned was not one. HOT 5
- Get user groups HOT 6
- checking other users username and password HOT 2
- ObjectGroups HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from go-ad-auth.