{"action":"created","issue":{"url":"https://api.github.com/repos/owncloud/core/issues/17759","labels_url":"https://api.github.com/repos/owncloud/core/issues/17759/labels{/name}","comments_url":"https://api.github.com/repos/owncloud/core/issues/17759/comments","events_url":"https://api.github.com/repos/owncloud/core/issues/17759/events","html_url":"https://github.com/owncloud/core/issues/17759","id":96129236,"number":17759,"title":"8.1 - LDAP: Having memberOf enabled breaks nested groups","user":{"login":"GreenArchon","id":5545257,"avatar_url":"https://avatars.githubusercontent.com/u/5545257?v=3","gravatar_id":"","url":"https://api.github.com/users/GreenArchon","html_url":"https://github.com/GreenArchon","followers_url":"https://api.github.com/users/GreenArchon/followers","following_url":"https://api.github.com/users/GreenArchon/following{/other_user}","gists_url":"https://api.github.com/users/GreenArchon/gists{/gist_id}","starred_url":"https://api.github.com/users/GreenArchon/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/GreenArchon/subscriptions","organizations_url":"https://api.github.com/users/GreenArchon/orgs","repos_url":"https://api.github.com/users/GreenArchon/repos","events_url":"https://api.github.com/users/GreenArchon/events{/privacy}","received_events_url":"https://api.github.com/users/GreenArchon/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/owncloud/core/labels/3%20-%20To%20Review","name":"3 - To Review","color":"ededed"},{"url":"https://api.github.com/repos/owncloud/core/labels/8.1.4-current","name":"8.1.4-current","color":"996633"},{"url":"https://api.github.com/repos/owncloud/core/labels/app:user_ldap","name":"app:user_ldap","color":"02d7e1"},{"url":"https://api.github.com/repos/owncloud/core/labels/bug","name":"bug","color":"fc2929"}],"state":"closed","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/owncloud/core/milestones/37","html_url":"https://github.com/owncloud/core/milestones/8.2-current","labels_url":"https://api.github.com/repos/owncloud/core/milestones/37/labels","id":993629,"number":37,"title":"8.2-current","description":"","creator":{"login":"craigpg","id":160667,"avatar_url":"https://avatars.githubusercontent.com/u/160667?v=3","gravatar_id":"","url":"https://api.github.com/users/craigpg","html_url":"https://github.com/craigpg","followers_url":"https://api.github.com/users/craigpg/followers","following_url":"https://api.github.com/users/craigpg/following{/other_user}","gists_url":"https://api.github.com/users/craigpg/gists{/gist_id}","starred_url":"https://api.github.com/users/craigpg/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/craigpg/subscriptions","organizations_url":"https://api.github.com/users/craigpg/orgs","repos_url":"https://api.github.com/users/craigpg/repos","events_url":"https://api.github.com/users/craigpg/events{/privacy}","received_events_url":"https://api.github.com/users/craigpg/received_events","type":"User","site_admin":false},"open_issues":1,"closed_issues":1257,"state":"open","created_at":"2015-02-24T16:19:37Z","updated_at":"2015-10-15T14:38:29Z","due_on":"2015-10-20T04:00:00Z","closed_at":null},"comments":15,"created_at":"2015-07-20T18:36:01Z","updated_at":"2015-10-15T14:38:29Z","closed_at":"2015-10-15T14:38:29Z","body":"### Steps to reproduce\r\n1. Have an LDAP server, with memberOf enabled\r\n2. Have owncloud configured for said LDAP server, with \"Nested groups\" enabled in the  \"advanced settings\"\r\n3. Put LDAP user u1 in LDAP group g2\r\n4. Put LDAP group g2 in LDAP group g1\r\n\r\n### Expected behaviour\r\nOwncloud should see the user u1 as a member of g1 (as well as g2)\r\n\r\n### Actual behaviour\r\nOwncloud only sees the user u1 as a member of g2\r\n\r\n### Server configuration\r\n**Operating system**: CentOS 7\r\n**ownCloud version:** 8.1\r\n**Are you using an external user-backend, if yes which one:** LDAP\r\n**LDAP Server** OpenLDAP\r\n\r\n### A bit of debugging...\r\n\r\n090478a95e1adc904cd8971158c848b9c00374f6 added a speedup to the apps/user_ldap/group_ldap.php' getUserGroups() function, by using the memberOf attribute if possible (instead of checking all groups to see if the user's there, recursively if the nested groups option is enabled in the settings). However, memberOf itself is not recursive, thus nested groups are missed.\r\n\r\nThe code checks for memberOf support as well as the config option 'useMemberOfToDetectMembership', however, the said option is not exposed anywhere in the user interface...\r\n\r\nI'd provide a PR but I'm unsure what would be the best solution between adding an option in the settings and not using memberOf if nested groups are enabled (or some third option I didn't think of)\r\n\r\n@blizzz Thoughts, since you wrote that code?"},"comment":{"url":"https://api.github.com/repos/owncloud/core/issues/comments/148406447","html_url":"https://github.com/owncloud/core/issues/17759#issuecomment-148406447","issue_url":"https://api.github.com/repos/owncloud/core/issues/17759","id":148406447,"user":{"login":"PVince81","id":277525,"avatar_url":"https://avatars.githubusercontent.com/u/277525?v=3","gravatar_id":"","url":"https://api.github.com/users/PVince81","html_url":"https://github.com/PVince81","followers_url":"https://api.github.com/users/PVince81/followers","following_url":"https://api.github.com/users/PVince81/following{/other_user}","gists_url":"https://api.github.com/users/PVince81/gists{/gist_id}","starred_url":"https://api.github.com/users/PVince81/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PVince81/subscriptions","organizations_url":"https://api.github.com/users/PVince81/orgs","repos_url":"https://api.github.com/users/PVince81/repos","events_url":"https://api.github.com/users/PVince81/events{/privacy}","received_events_url":"https://api.github.com/users/PVince81/received_events","type":"User","site_admin":false},"created_at":"2015-10-15T14:38:29Z","updated_at":"2015-10-15T14:38:29Z","body":"Raised 8.2 regression here https://github.com/owncloud/core/issues/19816"}}