Bugzilla will be upgraded to version 5.0. The upgrade date is tentatively scheduled for 2 December 2018, pending final testing and feedback.
Bug 1301425 - OpenShift v3's LDAP authentication doesn't handle inheritance group (groups-in-groups)
OpenShift v3's LDAP authentication doesn't handle inheritance group (groups-i...
Status: CLOSED ERRATA
Product: OpenShift Container Platform
Classification: Red Hat
Component: Auth (Show other bugs)
3.1.0
Unspecified Unspecified
medium Severity medium
: ---
: ---
Assigned To: Jordan Liggitt
weiwei jiang
:
Depends On:
Blocks: 1267746
  Show dependency treegraph
 
Reported: 2016-01-24 20:40 EST by Kenjiro Nakayama
Modified: 2016-10-30 18:55 EDT (History)
8 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2016-05-12 12:27:17 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)


External Trackers
Tracker ID Priority Status Summary Last Updated
Red Hat Product Errata RHSA-2016:1064 normal SHIPPED_LIVE Important: Red Hat OpenShift Enterprise 3.2 security, bug fix, and enhancement update 2016-05-12 16:19:17 EDT

  None (edit)
Description Kenjiro Nakayama 2016-01-24 20:40:52 EST
Description of problem:

- OpenShift's LDAP authentication doesn't handle inheritance group (groups-in-groups) on AD.
- Even if we added "1.2.840.113556.1.4.1941"[1] to the OID, the query doesn't find any user under the inheritance group.

(Although The user tested and provided useful output, I will file them as *private comment* since the results contain a lot of private information.

Version-Release number of selected component (if applicable):

- OpenShift Enterprise v3.1

How reproducible:

(In private - The user provided the steps. And I will commented it on private.)

Actual results:

- atomic-openshift-master log (loglevel=4)

  Jan 22 17:51:11 foo.com atomic-openshift-master[119664]: I0122 17:51:11.918597  119664 ldap.go:122] searching for (&(memberOf:1.2.840.113556.1.4.1941:=CN=openshift,OU=FooGroups,DC=xx,DC=groupA,DC=com)(sAMAccountName=userA))
  Jan 22 17:51:11 foo.com atomic-openshift-master[119664]: I0122 17:51:11.919606  119664 ldap.go:130] no entries matching (&(memberOf:1.2.840.113556.1.4.1941:=CN=openshift,OU=FooGroups,DC=xx,DC=groupA,DC=com)(sAMAccountName=userA))

Expected results:

- Find userA with the filter (&(memberOf:1.2.840.113556.1.4.1941:=CN=openshift,OU=FooGroups,DC=xx,DC=groupA,DC=com)(sAMAccountName=userA))

Additional info:

- Workaround is to add all users to the DN, instead of just being able to use their groups. However it is too much work.

[1] https://msdn.microsoft.com/en-us/library/windows/desktop/aa746475%28v=vs.85%29.aspx
Comment 2 Jordan Liggitt 2016-01-26 11:32:42 EST
Can you provide the LDAP sync config they are using (with any private information redacted)
Comment 5 Jordan Liggitt 2016-01-27 21:34:53 EST
Extensible match support is fixed in 3.1.1.
Comment 9 Jordan Liggitt 2016-02-25 10:49:38 EST
That user story is for group sync, not authentication.
Comment 10 weiwei jiang 2016-02-29 05:50:54 EST
(In reply to Jordan Liggitt from comment #9)
> That user story is for group sync, not authentication.

Checked with:
# openshift version 
openshift v3.1.1.907-1-g0755947
kubernetes v1.2.0-alpha.7-703-gbc4550d
etcd 2.2.5
and work well.

And the fake data is
user1 is a member of group2
group2 is a member of group1(nested group)

Am I right?
Comment 11 Jordan Liggitt 2016-02-29 10:35:10 EST
> And the fake data is: 
>   user1 is a member of group2
>   group2 is a member of group1 (nested group)

That is the correct structure. The test is to ensure a user lookup filter like this would find that user:

url: "ldap://ldap.example.com/o=Acme?sAMAccountName?sub?(memberOf:1.2.840.113556.1.4.1941:=CN=group1,OU=...,DC=...)"
Comment 12 weiwei jiang 2016-02-29 20:57:49 EST
(In reply to Jordan Liggitt from comment #11)
> > And the fake data is: 
> >   user1 is a member of group2
> >   group2 is a member of group1 (nested group)
> 
> That is the correct structure. The test is to ensure a user lookup filter
> like this would find that user:
> 
> url:
> "ldap://ldap.example.com/o=Acme?sAMAccountName?sub?(memberOf:1.2.840.113556.
> 1.4.1941:=CN=group1,OU=...,DC=...)"

Thanks.
Comment 16 errata-xmlrpc 2016-05-12 12:27:17 EDT
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHSA-2016:1064

Note You need to log in before you can comment on or make changes to this bug.