mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2025-02-25 18:55:28 -06:00
Use groupOfNames and member, not groupOfUniqueNames and uniqueMember
This commit is contained in:
@@ -77,17 +77,17 @@ gecos: Administrator
|
||||
dn: cn=admins,cn=groups,cn=accounts,$SUFFIX
|
||||
changetype: add
|
||||
objectClass: top
|
||||
objectClass: groupofuniquenames
|
||||
objectClass: groupofnames
|
||||
objectClass: posixGroup
|
||||
cn: admins
|
||||
description: Account administrators group
|
||||
gidNumber: 1001
|
||||
uniqueMember: uid=admin,cn=sysaccounts,cn=etc,$SUFFIX
|
||||
member: uid=admin,cn=sysaccounts,cn=etc,$SUFFIX
|
||||
|
||||
dn: cn=ipausers,cn=groups,cn=accounts,$SUFFIX
|
||||
changetype: add
|
||||
objectClass: top
|
||||
objectClass: groupofuniquenames
|
||||
objectClass: groupofnames
|
||||
objectClass: posixGroup
|
||||
gidNumber: 1002
|
||||
description: Default group for all users
|
||||
@@ -96,7 +96,7 @@ cn: ipausers
|
||||
dn: cn=editors,cn=groups,cn=accounts,$SUFFIX
|
||||
changetype: add
|
||||
objectClass: top
|
||||
objectClass: groupofuniquenames
|
||||
objectClass: groupofnames
|
||||
objectClass: posixGroup
|
||||
gidNumber: 1003
|
||||
description: Limited admins who can edit other users
|
||||
|
||||
@@ -70,7 +70,7 @@
|
||||
#include "string.h"
|
||||
#include "nspr.h"
|
||||
|
||||
#define IPA_GROUP_ATTR "uniquemember"
|
||||
#define IPA_GROUP_ATTR "member"
|
||||
#define IPA_MEMBEROF_ATTR "memberof"
|
||||
#define IPA_GROUP_ATTR_IS_DN 1
|
||||
#define IPA_GROUP_ATTR_TYPE "uid"
|
||||
|
||||
@@ -811,7 +811,7 @@ class IPAServer:
|
||||
"""
|
||||
|
||||
member_dn = self.__safe_filter(member_dn)
|
||||
filter = "(&(objectClass=posixGroup)(uniqueMember=%s))" % member_dn
|
||||
filter = "(&(objectClass=posixGroup)(member=%s))" % member_dn
|
||||
|
||||
try:
|
||||
return self.__get_list(self.basedn, filter, sattrs, opts)
|
||||
@@ -834,7 +834,7 @@ class IPAServer:
|
||||
entry = ipaserver.ipaldap.Entry(dn)
|
||||
|
||||
# some required objectclasses
|
||||
entry.setValues('objectClass', 'top', 'groupofuniquenames', 'posixGroup',
|
||||
entry.setValues('objectClass', 'top', 'groupofnames', 'posixGroup',
|
||||
'inetUser')
|
||||
|
||||
# No need to explicitly set gidNumber. The dna_plugin will do this
|
||||
@@ -940,12 +940,12 @@ class IPAServer:
|
||||
# check to make sure member_dn exists
|
||||
member_entry = self.__get_base_entry(member_dn, "(objectClass=*)", ['dn','uid'], opts)
|
||||
|
||||
if new_group.get('uniquemember') is not None:
|
||||
if ((isinstance(new_group.get('uniquemember'), str)) or (isinstance(new_group.get('uniquemember'), unicode))):
|
||||
new_group['uniquemember'] = [new_group['uniquemember']]
|
||||
new_group['uniquemember'].append(member_dn)
|
||||
if new_group.get('member') is not None:
|
||||
if ((isinstance(new_group.get('member'), str)) or (isinstance(new_group.get('member'), unicode))):
|
||||
new_group['member'] = [new_group['member']]
|
||||
new_group['member'].append(member_dn)
|
||||
else:
|
||||
new_group['uniquemember'] = member_dn
|
||||
new_group['member'] = member_dn
|
||||
|
||||
try:
|
||||
ret = self.__update_entry(old_group, new_group, opts)
|
||||
@@ -984,11 +984,11 @@ class IPAServer:
|
||||
raise ipaerror.gen_exception(ipaerror.LDAP_NOT_FOUND)
|
||||
new_group = copy.deepcopy(old_group)
|
||||
|
||||
if new_group.get('uniquemember') is not None:
|
||||
if ((isinstance(new_group.get('uniquemember'), str)) or (isinstance(new_group.get('uniquemember'), unicode))):
|
||||
new_group['uniquemember'] = [new_group['uniquemember']]
|
||||
if new_group.get('member') is not None:
|
||||
if ((isinstance(new_group.get('member'), str)) or (isinstance(new_group.get('member'), unicode))):
|
||||
new_group['member'] = [new_group['member']]
|
||||
try:
|
||||
new_group['uniquemember'].remove(member_dn)
|
||||
new_group['member'].remove(member_dn)
|
||||
except ValueError:
|
||||
# member is not in the group
|
||||
# FIXME: raise more specific error?
|
||||
@@ -1221,12 +1221,12 @@ class IPAServer:
|
||||
if group_dn is None:
|
||||
raise ipaerror.gen_exception(ipaerror.LDAP_NOT_FOUND)
|
||||
|
||||
if new_group.get('uniquemember') is not None:
|
||||
if ((isinstance(new_group.get('uniquemember'), str)) or (isinstance(new_group.get('uniquemember'), unicode))):
|
||||
new_group['uniquemember'] = [new_group['uniquemember']]
|
||||
new_group['uniquemember'].append(group_dn['dn'])
|
||||
if new_group.get('member') is not None:
|
||||
if ((isinstance(new_group.get('member'), str)) or (isinstance(new_group.get('member'), unicode))):
|
||||
new_group['member'] = [new_group['member']]
|
||||
new_group['member'].append(group_dn['dn'])
|
||||
else:
|
||||
new_group['uniquemember'] = group_dn['dn']
|
||||
new_group['member'] = group_dn['dn']
|
||||
|
||||
try:
|
||||
ret = self.__update_entry(old_group, new_group, opts)
|
||||
|
||||
Reference in New Issue
Block a user