def activate_user(self, person): person = super(PersonalDataStore, self).activate_user(person) attrs = {} attrs['uid'] = str(person.username) attrs['givenName'] = str(person.first_name) attrs['sn'] = str(person.last_name) attrs['telephoneNumber'] = str(person.telephone) attrs['mail'] = str(person.email) attrs['o'] = str(person.institute.name) attrs['title'] = str(person.title) attrs['userPassword'] = str(person.user.password) conn = LDAPClient() conn.add_user(**attrs) person.user.set_unusable_password() person.user.save() person.save(update_datastore=False) del(conn) return person
def activate_user(self, person): person = super(PersonalDataStore, self).activate_user(person) attrs = {} attrs['sAMAccountName'] = str(person.username) attrs['givenName'] = str(person.first_name) attrs['sn'] = str(person.last_name) attrs['telephoneNumber'] = str(person.telephone) attrs['mail'] = str(person.email) attrs['o'] = str(person.institute.name) conn = LDAPClient() dn = conn.add_user(**attrs) person.save(update_datastore=False) # Set password then unlock account if person.user.password != '!': import ldap mod_attrs = [(ldap.MOD_REPLACE, 'unicodePwd', str(person.user.password)), (ldap.MOD_REPLACE, 'unicodePwd', str(person.user.password))] conn.conn.modify_s(dn, mod_attrs) conn.update_user('sAMAccountName=%s' % str(person.username), userAccountControl=512) person.user.set_unusable_password() person.user.save() del(conn) return person