diff options
author | rcritten@redhat.com <rcritten@redhat.com> | 2007-08-23 11:57:25 -0400 |
---|---|---|
committer | rcritten@redhat.com <rcritten@redhat.com> | 2007-08-23 11:57:25 -0400 |
commit | 240a99b6f35fe7a7de37c83e69471b84298d0f56 (patch) | |
tree | 73f91f4c6e829ecdfe320413d2ad5d817cabf185 /ipa-server/xmlrpc-server | |
parent | 8879ee173ec6814da701464c562471a3c8c5d846 (diff) | |
download | freeipa-240a99b6f35fe7a7de37c83e69471b84298d0f56.tar.gz freeipa-240a99b6f35fe7a7de37c83e69471b84298d0f56.tar.xz freeipa-240a99b6f35fe7a7de37c83e69471b84298d0f56.zip |
Move add user logic to the server side
Diffstat (limited to 'ipa-server/xmlrpc-server')
-rw-r--r-- | ipa-server/xmlrpc-server/funcs.py | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/ipa-server/xmlrpc-server/funcs.py b/ipa-server/xmlrpc-server/funcs.py index 0af0f5ef4..aa5633453 100644 --- a/ipa-server/xmlrpc-server/funcs.py +++ b/ipa-server/xmlrpc-server/funcs.py @@ -172,6 +172,34 @@ class IPAServer: dn="uid=%s,%s,%s" % (user['uid'], user_container,self.basedn) entry = ipaserver.ipaldap.Entry(dn) + # FIXME: This should be dynamic and can include just about anything + + # Let us add in some missing attributes + if user.get('homedirectory') is None: + user['homedirectory'] = '/home/%s' % user.get('uid') + if not user.get('gecos') is None: + user['gecos'] = user['uid'] + + # FIXME: This can be removed once the DS plugin is installed + user['uidnumber'] = '501' + + # FIXME: What is the default group for users? + user['gidnumber'] = '501' + + realm = ipa.config.config.get_realm() + user['krbprincipalname'] = "%s@%s" % (user.get('uid'), realm) + + # FIXME. This is a hack so we can request separate First and Last + # name in the GUI. + if user.get('cn') is None: + user['cn'] = "%s %s" % (user.get('givenname'), + user.get('sn')) + + if user.get('gn'): + del user['gn'] + if user.get('givenname'): + del user['givenname'] + # some required objectclasses entry.setValues('objectClass', 'top', 'posixAccount', 'shadowAccount', 'account', 'person', 'inetOrgPerson', 'organizationalPerson', 'krbPrincipalAux', 'krbTicketPolicyAux') |