Hauptmenü

kix18 LDAP (AD) Sync

Begonnen von buhlmann.rix, 15.05.2020 14:29:08

⏪ vorheriges - nächstes ⏩

buhlmann.rix

Moin zusammen,
der LDAP/AD Sync unserer neuen kix18 Installation läuft nicht richtig. Versucht sich ein Benutzer anzumelden, wird er mit einer Fehlermeldung abgewiesen.
Guckt man in das Log von kix sieht man, dass der User zwar angelegt wird und auch die Rollen werden korrekt zugewiesen (die Verbindung zum AD funktioniert also grundlegend), allerdings bestimmte andere Felder nicht gesetzt werden. So fehlen zum Beispiel Name und E-Mail Adresse, obwohl diese Übertragung im Sync-Modul konfiguriert wurde:
{"UserEmail":"mail","UserFirstname":"givenName","UserLastname":"sn","UserLogin":"sAMAccountName"}

Weiterhin wird dem User zwar korrekt die Rolle "Agent User" und "Ticket Agent" zugewiesen, im Log von kix findet sich aber folgende Fehlermeldung:
[Fri May 15 14:01:14 2020][Notice][Kernel::System::Auth::Auth] Login failed. User is not allowed for usage context "Agent".

In den Details des Users fehlt zudem der Zugang für das "Agentenportal", was vermutlich die Ursache für die obige Fehlermeldung ist. Nun würde ich davon ausgehen, dass dieser beim Sync angelegt wird, da ja die entsprechenden Rollen zugewiesen werden. Damit ergeben sich zwei Fragen:


       
  • Wie bekomme ich den Namen und die E-Mail Adresse für den User synchronisiert?
  • Wie kann beim Synchronisieren automatisch der Zugang zum "Agentenportal" aktiviert werden?

Torsten Thau

Hallo,


da, wenn ich das richtig verstanden habe, der Nutzer angelegt wurde, fehlt vermutlich nur dessen Nutzungskontext. Dies wurde leider bei der Restrukturierung des Nutzer-Kontakt-Datenmodells übersehen. Als Workaround (und zur Bestätigung dieser Hypothese) bitte in der manuellen Nutzerpflege via GUI den Nutzungskontext manuell ergänzen und dann eine erneute Anmeldung versuchen.


Es gibt seit KIX Pro/Cloud 18 v07 eine separate Möglichkeit Kontaktdaten zu synchronisieren. Dies geschieht getrennt von der Authentisierung die hier benutzt wird. Die UserSync wird mittelfristig ggf. zurück gebaut werden.

Wie dem auch sei, werden zusätzliche AD-/LDAP-Attribute die die Werte "0" oder "1" tragen, in das Mapping aufgenommen und den KIX-Internen Kontaktattributen "IsAgent" oder "IsCustomer" zugeordnet, sollte das Problem des fehlenden Nutzungskontexts gelöst sein.

{
  "UserEmail":     "mail",
  "UserFirstname": "givenName",
  "UserLastname":  "sn",
  "UserLogin":     "sAMAccountName",
  "IsAgent":       "<Some AD Attribute which is either 0 or 1>",
  "IsCustomer":    "<Some AD Attribute which is either 0 or 1>"
}


Warum der Kontakt ohne Vor-/Nachname- oder Email-Angaben angelegt wird, müssen wir prüfen. Das sollte eigentlich immer noch so funktionieren (trotz der "Deprecation" des User-Sync-Vorgehens).




vG, T.


buhlmann.rix

"Es gibt seit KIX Pro/Cloud 18 v07 eine separate Möglichkeit Kontaktdaten zu synchronisieren."
Heißt das, diese Möglichkeit besteht in KIX Start nicht? Falls doch: Wie richtet man das ein? Im Adminhandbuch habe ich nichts dazu gefunden.

"Wie dem auch sei, werden zusätzliche AD-/LDAP-Attribute die die Werte "0" oder "1" tragen, in das Mapping aufgenommen und den KIX-Internen Kontaktattributen "IsAgent" oder "IsCustomer" zugeordnet, sollte das Problem des fehlenden Nutzungskontexts gelöst sein."
Ist ein Workaround, aber ich glaube kaum, dass ich unsere AD Admins davon überzeugt bekomme neue Custom-Attribute für die Nutzer einzuführen. Wir haben hier alle Berechtigungen über Gruppen gelöst, auch in unserer (zugegeben sehr alten) KIX4OTRS Installation funktioniert das ohne Probleme über den Sync der AD Gruppen.
Warum kann das denn nicht über die Rollen (welche sich ja aus den Gruppen ergeben) abgebildet werden? Es ist doch irgendwie total unlogisch einem User die Rollen "Agent User" und "Ticket Agent" zu geben und dabei nicht automatisch den Agentenzugang freizuschalten.

Torsten Thau

Hallo,


In KIX-Start gibt es keine Möglichkeit des Imports von Kontaktdaten aus einem AD/LDAP. Dies ist aktuell KIX Pro und Cloud vorbehalten. Die REST-API steht aber frei zur Verfügung, so dass auch ein einfaches Skript Daten von außen an KIX senden könnte.


Der Fehler ist bereits erfasst und wird in einem der nächsten Releases korrigiert werden. Für die schnelle Lösung kann ich erstmal nur die benannten Workarounds anbieten.


Die Frontend-Zuordnung so wie die Rollen via der LDAP-/AD-Gruppen zu setzen ist eine gute Idee (die wir schlichtweg bislang nicht auf dem Schirm hatten). Ich nehme das als eine Anregung auf. Evtl. kann das direkt im Zuge der Fehlerkorrektur umgesetzt werden. Danke für die Anregung!


vG, Torsten



Sebastian

1.) Eine Frage zum Mapping bei Agenten: Unter welchem Schlüssel muss dies erfolgen? Weil meine Änderungen unter "ContactUserSync" funktionieren nicht.


"ContactUserSync": {
    "UserTitle": "gender",
    "UserFirstname": "givenName",
    "UserLastname": "sn",
    "UserEmail": "mail"
},


2.) Aktuell muss ich Accounts lokal anlegen damit der Login über LDAP funktioniert. Wie lässt sich das ändern?

Torsten Thau

Hi Sebastian,


die Dokumentation zum Auth-Sync findest Du hier:


https://docs.kixdesk.com/kix18Administration/kix-start/nutzerverwaltung/nutzer/verzeichnisdienste-nutzen


IMHO fehlt UserLogin im Mapping, das könnte die Ursache sein:


          "ContactUserSync": {
            "Email": "mail",
            "Firstname": "cn",
            "Lastname": "sn",
            "UserLogin": "uid",           

            "PrimaryOrganisationID": "SET:1",
            "IsAgent": "SET:1",
          },


PrimaryOrganisationID ist aktuell fixiert auf "1" (wird bald geändert, dass es wie oben funktioniert), aber "IsAgent" sollte ebenfalls verwendet werden, damit der Nutzer sich auch am Agentenportal anmelden kann ("Nutzungskontext").

CU, T.