diff --git a/src/ldap.js b/src/ldap.js index 5c1fd4421..f45bf1a28 100644 --- a/src/ldap.js +++ b/src/ldap.js @@ -209,37 +209,6 @@ async function groupSearch(req, res, next) { const results = []; - // those are the old virtual groups for backwards compat - const virtualGroups = [{ - name: 'users', - admin: false - }, { - name: 'admins', - admin: true - }]; - - virtualGroups.forEach(function (group) { - const dn = ldap.parseDN('cn=' + group.name + ',ou=groups,dc=cloudron'); - const members = group.admin ? usersWithAccess.filter(function (user) { return users.compareRoles(user.role, users.ROLE_ADMIN) >= 0; }) : usersWithAccess; - - const obj = { - dn: dn.toString(), - attributes: { - objectclass: ['group'], - cn: group.name, - memberuid: members.map(function(entry) { return entry.id; }).sort() - } - }; - - // ensure all filter values are also lowercase - const lowerCaseFilter = safe(function () { return ldap.parseFilter(req.filter.toString().toLowerCase()); }, null); - if (!lowerCaseFilter) return next(new ldap.OperationsError(safe.error.toString())); - - if ((req.dn.equals(dn) || req.dn.parentOf(dn)) && lowerCaseFilter.matches(obj.attributes)) { - results.push(obj); - } - }); - let [errorGroups, resultGroups] = await safe(groups.listWithMembers()); if (errorGroups) return next(new ldap.OperationsError(errorGroups.toString())); diff --git a/src/userdirectory.js b/src/userdirectory.js index f468bb714..4df520e4b 100644 --- a/src/userdirectory.js +++ b/src/userdirectory.js @@ -207,37 +207,6 @@ async function groupSearch(req, res, next) { const results = []; - // those are the old virtual groups for backwards compat - const virtualGroups = [{ - name: 'users', - admin: false - }, { - name: 'admins', - admin: true - }]; - - virtualGroups.forEach(function (group) { - const dn = ldap.parseDN('cn=' + group.name + ',ou=groups,dc=cloudron'); - const members = group.admin ? result.filter(function (user) { return users.compareRoles(user.role, users.ROLE_ADMIN) >= 0; }) : result; - - const obj = { - dn: dn.toString(), - attributes: { - objectclass: ['group'], - cn: group.name, - memberuid: members.map(function(entry) { return entry.id; }).sort() - } - }; - - // ensure all filter values are also lowercase - const lowerCaseFilter = safe(function () { return ldap.parseFilter(req.filter.toString().toLowerCase()); }, null); - if (!lowerCaseFilter) return next(new ldap.OperationsError(safe.error.toString())); - - if ((req.dn.equals(dn) || req.dn.parentOf(dn)) && lowerCaseFilter.matches(obj.attributes)) { - results.push(obj); - } - }); - let [errorGroups, resultGroups] = await safe(groups.listWithMembers()); if (errorGroups) return next(new ldap.OperationsError(errorGroups.toString()));