-
Notifications
You must be signed in to change notification settings - Fork 188
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
Incorrectly converted AD objectGUID #7449
Comments
Was already discussed here: https://central.owncloud.org/t/ocis-with-samba-ldap-without-owncloud-schema/41377/18 For some reason MS decided to use a different byte-order on the upper 8 Bytes, for binary encoded UUIDs than what is defined in RFC4122. The golang UUID module we're using (github.com/google/uuid) doesn't know about that and produces a wrong string representation. IMO the biggest issue of this is that it makes it particularly hard to find the right value to set @kenodai I am pretty sure the error you're seeing is not caused by this. For using the objectGUID in LDAP filters, we are using the (hex-escaped) binary value of the objectGUID (which should be in the right byte-order again). Can you share more details about your config? |
Sorry, missed that Thread. Both error messages contain the incorrect GUID in the opaque_id fields. But since you mentioned, that's probably not an issue for the first two and just an output issue on the DBG message? Setup is more or less still whats mention here: Except for the schema part, which is now:
To be quite honest, I don't see anything failing on my side. But seeing an error running through your console during testing is always something to take a dive in. |
Yes and no. Technically oCIS should just work fine even with those wrongly decoded UUID strings. All ocis needs is a unique string identifying a users. And as converting its wrongly decoded string UUID back into binary will still result in the correct binary representation functionality wise we should be fine. However it can be quite an annoyance if you're trying to match those wrongly decoded UUID string against your AD users my means of other tools (e.g. Apache DS). So if possible we should try to fix that somehow. Which is going to be tricky (if not impossible) for the reasons I stated above.
Ok. Good to know.
Might it just be that the user with the GUID |
That's what triggered me.
Maybe just add an option, if one is dealing with RFC or MS GUIDs.
The GUID is a member of that group.
That's from my samba log. That search does not look correct. Just noticed, ocis-charts are still referencing 4.0.1. Has anything been changed in that area in 4.0.2? |
No. Not that I am aware of.
True. Something is borked there. Btw, where/how did you set that |
You are right. Here is the full version:
That's the config I'm playing with right now. The S3 part was added somewhen today, after I've opened the ticket. But it doesn't really change anything. |
Thanks for the updated config.
What is really weird that you shouldn't be seeing the string formatted UUID in the LDAP filter coming from ocis. When
It looks a bit as if somewhere in the helmcharts (or in ocis) the |
Judging by that. The charts provide the correct values. Which version are you running in your lab? Your search string is constructed differently as well. |
Did some further digging within the logs. Found this line: That's the graph service, but everything related to users is always using the formatted string. Meanwhile I've also switched to 4.0.2, but the issue remains. |
Yes
I tried with 4.0.1, 4.0.2 and master. I probably just tried the wrong thing, it seems to only show up after uploading. And I was just able to reproduce it. There's still a bug remaining in the |
Hi oCIS-Team,
oCIS is incorrectly converting an Active Directory objectGUID.
Raw data: xPYr6y1Rf0SKoM8kmfaYDw==
oCIS: c4f62beb-2d51-7f44-8aa0-cf2499f6980f
Apache Directory Studio: {eb2bf6c4-512d-447f-8aa0-cf2499f6980f}
$ echo "xPYr6y1Rf0SKoM8kmfaYDw==" |base64 -d -i |xxd
00000000: c4f6 2beb 2d51 7f44 8aa0 cf24 99f6 980f ..+.-Q.D...$....
2023-10-10T08:58:35Z ERR error using machine auth error="error: not found: unknown client id" authRes={"status":{"code":6,"message":"unknown client id","trace":"00000000000000000000000000000000"}} line=github.com/owncloud/ocis/v2/services/search/pkg/search/search.go:93 owner={"id":{"idp":"https:///application/o/ocis-web/","opaque_id":"c4f62beb-2d51-7f44-8aa0-cf2499f6980f","type":1}} service=search
2023-10-10T08:58:35Z ERR error while indexing a space error="error: not found: unknown client id" line=github.com/owncloud/ocis/v2/services/search/pkg/search/events.go:69 service=search spaceID={"opaque_id":"b358e147-b109-4a7e-82b3-018d8d138342$c4f62beb-2d51-7f44-8aa0-cf2499f6980f"} userID={"idp":"https:///application/o/ocis-web/","opaque_id":"c4f62beb-2d51-7f44-8aa0-cf2499f6980f","type":1}
2023-10-10T08:58:35Z DBG GetUserByClaim error="error: not found: (&(memberOf=CN=oCIS-User,OU=oCIS,OU=Applications,DC=*)(objectclass=user)(objectGUID=c4f62beb-2d51-7f44-8aa0-cf2499f6980f))" line=github.com/cs3org/reva/v2@v2.16.0/pkg/user/manager/ldap/ldap.go:140 pkg=rgrpc service=users traceid=00000000000000000000000000000000
Regards,
Marc
The text was updated successfully, but these errors were encountered: