Univention Bugzilla – Bug 15168
krb5PrincipalName wird beim Ändern des Benutzernamens nicht mitgeändert
Last modified: 2012-12-12 21:10:45 CET
Ich habe versucht einen Benutzer über das UDM-Webfrontend und über die CLI Schnittstelle umzubenennen. In beiden fällen konnte der Benutzer sich per smbclient -U nur noch mit dem neuen Benutzernamen authentifizieren. Ein kinit ging jedoch nur mit dem alten Benutzernamen. Anbei mein vorgehen. (ein neustart des System wegen möglichen Caching-Problemen hat nichts geändert) udm users/user create --set username="ben" --set lastname="ben" --set password="univention" udm users/user modify --dn uid=ben,$ldap_base --set username="ben22" m230 > id ben22 uid=2006(ben22) gid=5001(Domain Users) Gruppen=5001(Domain Users) ##ggf. ein caching Problem m230 > id ben uid=2006(ben22) gid=5001(Domain Users) Gruppen=5001(Domain Users) m230 > kinit ben22 ben22@UNIVENTION.QA's Password: kinit: Password incorrect m230 > kinit ben ben@UNIVENTION.QA's Password: Anbei noch ein LDAP-Search nach dem umbenennen m230 > ldapsearch -x -D cn=admin,$ldap_base -w $(cat /etc/ldap.secret ) uid=ben22 # extended LDIF # # LDAPv3 # base <> with scope subtree # filter: uid=ben22 # requesting: ALL # # ben22, univention.qa dn: uid=ben22,dc=univention,dc=qa krb5PrincipalName: ben@UNIVENTION.QA objectClass: top objectClass: person objectClass: univentionPWHistory objectClass: posixAccount objectClass: shadowAccount objectClass: univentionMail objectClass: sambaSamAccount objectClass: organizationalPerson objectClass: inetOrgPerson objectClass: krb5Principal objectClass: krb5KDCEntry uidNumber: 2006 sambaAcctFlags: [U ] sambaPasswordHistory: E444664FE750CBA997D639B0B9855E862D82BC8C5203F79CBE71A574 75333D06 krb5MaxLife: 86400 cn: ben userPassword:: e2NyeXB0fSQxJG1Bd1pmTmZ0JHpqc2UxWFVTTG94dU9zNWFkMTNUOC4= krb5Key:: MC2hKzApoAMCARKhIgQgPWjpRqTttYNOq1kdU7oqifIoHDanS/h51uyN2CeXJCg= krb5Key:: MB2hGzAZoAMCARGhEgQQexDD9RO/sY018NQ7s7zLPA== krb5Key:: MCWhIzAhoAMCARChGgQYbpR2g0C56l5bI3CiqK0BpF7Hec5GXqEL krb5Key:: MCWhIzAhoAMCAQWhGgQYZ14jFp3pURNRDRXj8XzIqOMHYj4f3CDs krb5Key:: MB2hGzAZoAMCARehEgQQyqEjnUTaft+Sa8459cZdDw== krb5Key:: MBWhEzARoAMCAQOhCgQI+GFDeSYEy3A= krb5Key:: MBWhEzARoAMCAQKhCgQI+GFDeSYEy3A= krb5Key:: MBWhEzARoAMCAQGhCgQI+GFDeSYEy3A= krb5MaxRenew: 604800 sambaLMPassword: 3CC16AE8CE3F6C8A31283C286CD09B63 krb5KeyVersionNumber: 1 loginShell: /bin/bash krb5KDCFlags: 126 sambaPwdLastSet: 1247698270 sambaNTPassword: CAA1239D44DA7EDF926BCE39F5C65D0F displayName: ben sambaSID: S-1-5-21-2722036353-2009055846-386090948-5012 gecos: ben sn: ben pwhistory: D90F510238C5647261A1CF21D367B3DA28E2261E homeDirectory: /home/ben gidNumber: 5001 sambaPrimaryGroupSID: S-1-5-21-2722036353-2009055846-386090948-513 uid: ben22 # search result search: 2 result: 0 Success # numResponses: 2 # numEntries: 1
Aufgetreten ist das mit UCS 2.2-2.
(In reply to comment #0) > dn: uid=ben22,dc=univention,dc=qa > krb5PrincipalName: ben@UNIVENTION.QA Das Attribut krb5PrincipalName wird nicht mitgeändert.
Ich bin mir auch nicht sicher, ob wir das so einfach ändern können. Meines Wissens muss dann auch das Passwort neu gesetzt werden. Roman, du hattest da ein wenig getestet, kannst du etwas dazu sagen?
(In reply to comment #3) > Ich bin mir auch nicht sicher, ob wir das so einfach ändern können. Meines > Wissens muss dann auch das Passwort neu gesetzt werden. > > Roman, du hattest da ein wenig getestet, kannst du etwas dazu sagen? Bei der Umbenennung von Usernamen via UDM-CLI hatte ich das gleiche Problem. Der krb5PrincipalName bleibt erhalten und eine einfache Umbenennung reicht hier nicht aus. Es muss mit kerberize_user das Kerberos-Passwort des Users neu gesetzt werden.
Erneut aufgefallen an: 2010090710013438 Workaround von Roman funktioniert in meinem Test: 1. Ändern des Benutzernamens 2. Ändern des krb5PrincipalName per ldapmodify 3. Ausführen von "/usr/share/univention-samba/kerberize_user <Neue UID>" auf dem DC Master
*** Bug 21793 has been marked as a duplicate of this bug. ***
Erneut an Ticket #2011092610002171 aufgefallen.
(In reply to comment #7) > Erneut an Ticket #2011092610002171 aufgefallen. Und an Ticket #2012042321001379
In UCS 2.4 speichern wir den Kerberos Salt noch nicht mit. Das hat zur Folge, dass das Passwort nicht mehr stimmt, wenn der kerberosPrincipal geändert wird. Es gab ein Skript, welches beim Update auf 3.0 den Salt im Kerberos Passwort speichert. Ab 3.0 wird der Principal dann meines Wissens mit geändert.
UCS 3.1 will be the next release.
(In reply to comment #9) > In UCS 2.4 speichern wir den Kerberos Salt noch nicht mit. Das hat zur Folge, > dass das Passwort nicht mehr stimmt, wenn der kerberosPrincipal geändert wird. > Es gab ein Skript, welches beim Update auf 3.0 den Salt im Kerberos Passwort > speichert. Ab 3.0 wird der Principal dann meines Wissens mit geändert. Ja, das wird mittlerweile geändert.
Verified: * Funktion OK root@master7:~# udm users/user modify --dn uid=foo1,cn=users,cn=qwer,cn=asdf --set username=foo2 --set lastname=Ex-Foo1 Object modified: uid=foo2,cn=users,cn=qwer,cn=asdf root@master7:~# univention-ldapsearch uid=foo2 dn: uid=foo2,cn=users,cn=qwer,cn=asdf [...] krb5Key: 01<A1>^S0^Q<A0>^C^B^A^B<A1> ^D^HX<BC><DF>TX<A7><BF><97><A2>^Z0^X<A0>^C^B^A^C<A1>^Q^D^OXQWER.XASDFfoo1 krb5Key: 01<A1>^S0^Q<A0>^C^B^A^A<A1> ^D^HX<BC><DF>TX<A7><BF><97><A2>^Z0^X<A0>^C^B^A^C<A1>^Q^D^OXQWER.XASDFfoo1 [...] krb5PrincipalName: foo2@XQWER.XASDF root@master7:~# kinit foo2 foo4@XQWER.XASDF's Password: root@master7:~# klist Credentials cache: FILE:/tmp/krb5cc_0 Principal: foo2@XQWER.XASDF Issued Expires Principal Nov 19 14:54:55 2012 Nov 20 00:54:55 2012 krbtgt/XQWER.XASDF@XQWER.XASDF root@master7:~# ldbsearch -k yes -H ldap://$(hostname -f) \ -b "$samba4_ldap_base" samaccountname=foo1 userPrincipalName # record 1 dn: CN=foo1,CN=Users,DC=xqwer,DC=xasdf [...] userPrincipalName: foo1@XQWER.XASDF Im connector-s4.log findet sich: 19.11.2012 14:50:32,93 LDAP (PROCESS): sync from ucs: [ user] [ modify] cn=foo2,cn=users,dc=xqwer,dc=xasdf 19.11.2012 14:50:32,118 LDAP (WARNING): password_sync_ucs_to_s4: userPrincipalName != krb5Principal: 'foo1@XQWER.XASDF' != 'foo2@XQWER.XASDF' Der userPrincipalName wurde dann nach der Warnung direkt auch in Samba4 umbenannt.
UCS 3.1-0 has been released: http://forum.univention.de/viewtopic.php?f=54&t=2125 If this error occurs again, please use "Clone This Bug".