Infos:
- Used Zammad version: 2.7.0
- Installation method (source, package, …): source
- Operating system: Debian
- Database + version: MariaDB
- Elasticsearch version: any
- Browser + version: any
Expected behavior:
- The LDAP synchronization should finish successfully
Actual behavior:
- The LDAP synchronization fails with the following error:
An error occurred: Minimum one user needs to have admin permissions.
Steps to reproduce the behavior:
- Configure the LDAP integration as following:
Settings:
UID | objectguid
User Filter | (&(objectClass=user)(samaccountname=*)(!(samaccountname=*$)))
GID | dn
Group Filter | (objectClass=group)
Assignments:
User:
givenname firstname sn lastname userprincipalname login
Roles:
cn=administratoren,cn=builtin,dc=my,dc=domain - Admin
cn=agent,cn=zammad,dc=my,dc=domain - Agent
When configuring this, the LDAP configuration already says(!):
Mit Ihre aktuellen Konfiguration werden sich folgende Änderungen ergeben: LDAP Benutzer zu Zammad Benutzer (649): Benutzer: 0 erstellt, 62 aktualisierte, 410 nicht verändert, 56 übersprungen, 121 fehlgeschlagen, 0 deaktiviert LDAP Gruppen zu Zammad Rolle Zuweisung: Agent: 0 erstellt, 0 aktualisierte, 14 nicht verändert, 0 fehlgeschlagen, 0 deaktiviert Kunde: 0 erstellt, 62 aktualisierte, 394 nicht verändert, 0 fehlgeschlagen, 0 deaktiviert
Which means, that the configuration won’t sync the admin user! But, in our Active Directory is an admin, which matches the filter (&(objectClass=user)(samaccountname=*)(!(samaccountname=*$))) and is in the group cn=administratoren,cn=builtin,dc=my,dc=domain !

Seems like I got the wrong payload for the test. To get the proper one: When does the error occur? Does it happen while doing the dry/test run or while syncing the live data afterwards? Could you please go and reproduce the error as you did before and then right after the error occurs start the script?

I added these attributes to the administrator account in the Active Directory and restarted the sync.