Problem:
User cannot change his password via self-service
Passwort ändern fehlgeschlagen. Der Grund konnte nicht festgestellt werden. Für den Fall, dass es hilft, hier die originale Fehlernachricht: Die Operation ist nicht erlaubt. Errorcode 20: Das neue Passwort konnte nicht gesetzt werden.
Investigation:
check /var/log/auth.log
/var/log/auth.log.1:May 10 17:37:41 ucs01 kpasswdd[1818]: Check ACL failed for c-s.scheinig001@SCHULE.UNIVENTION.INT for changing c-s.schein@SCHULE.UNIVENTION.INT password: Operation requires `change-password' privilege
Solution:
The kerberosPrincipalName was wrong:
c-s.scheinig001@SCHULE.UNIVENTION.INT
So we have to modify this entry:
ldapmodify -x -D "cn=admin,$(ucr get ldap/base)" -y /etc/ldap.secret <<EOR
dn: uid=c-s.schein,cn=users,ou=school,dc=univention,dc=int
changetype: modify
replace: krb5PrincipalName
krb5PrincipalName: c-s.schein@SCHULE.UNIVENTION.INT
EOR