Zammad: OTRS-Import nach LDAP-Importkapitalisierungsproblem

Erstellt am 23. Nov. 2017  ·  8Kommentare  ·  Quelle: zammad/zammad

Infos:

  • Verwendete Zammad-Version: zammad-2.1.0
  • Verwendete Zammad-Installationsquelle: RPM-Paket
  • Betriebssystem: CentOS 7
  • Browser + Version:

Erwartetes Verhalten:

Benutzer aus einem OTRS-Import sollten mit einem vorherigen LDAP-Import zusammengeführt werden.

Tatsächliches Verhalten:

Die Benutzer scheinen teilweise aktualisiert zu sein, aber nicht alle. Insbesondere sieht es so aus, als ob der LDAP-Import alles in Kleinbuchstaben konvertiert, wobei beim OTRS-Import die Anmeldung unverändert bleibt.

Wir können sehen, dass Benutzer mit userPrincipalName wie "Givenname. [email protected] " erstellt werden, während "givenname. [email protected] " aktualisiert wird. Der OTRS-Benutzer im ersten wird jedoch weiterhin mit einem Login in Kleinbuchstaben erstellt.

Ich kann auch sehen, dass im ersten Fall eine dreistellige Nummer an das Login angehängt ist, wie z

OTRS: [email protected] -> zammad: Givenname. [email protected]

Dieses Verhalten ist für alle Benutzer gleich.

Schritte zum Reproduzieren des Verhaltens:

  • Verwenden Sie ein Verzeichnis mit einigen Benutzern wie Givenname. [email protected] und einige wie Givenname. [email protected]
  • Importieren Sie zuerst LDAP-Benutzer (in unserem Fall mit geänderter Reihenfolge von "samaccountname" und "userprincipalname" in "lib / ldap / user.rb: 61".
  • Importieren Sie dann die Tickets und Benutzer aus OTRS, wie in der Dokumentation beschrieben.
  • Überprüfen Sie die Protokolldateien, die Benutzer mit Givenname. [email protected] sind so

_thread # -: Benutzer.find_by hinzufügen (Login: [email protected]) _

Die Benutzer mit Kleinbuchstaben sind so

_thread # -: Update User.find_by (Login: [email protected]) _

wenn ich nach dem ersten benutzer in zammad suche mit

_User.find_by (E-Mail: '[email protected]') _

Ich finde den Benutzer nicht, wenn ich mit Kleinbuchstaben suche

_User.find_by (E-Mail: '[email protected]') _

Ich finde ihn, aber der Login ist so

Login: "ggggg. [email protected] "

bug import verified

Hilfreichster Kommentar

@thorsteneckel also keine minitests mehr und alle neuen tests wären rspec?

Alle 8 Kommentare

Vielleicht habe ich das Problem gelöst (zumindest für mich)

Ich habe 2 Dateien in lib / import / otrs geändert

user.rb
customer_user.rb

In jeder der Dateien habe ich dies hinzugefügt

    _mapped[:login].downcase!_

unter Zeile 70. (streng genommen nicht notwendig in der user.rb denke ich, aber ich bin kein Entwickler)

Dies sollte bei ldap-gestützten Installationen kein Problem sein. Bei anderen Backends kann dies bedeuten, dass sich der Benutzer als "Donald Duck" anstelle von "Donald Duck" anmelden muss, wenn ich dies richtig sehe.

Im Moment ist dies also eher eine schmutzige Lösung, aber vielleicht kann jemand mit mehr Entwicklungsfähigkeiten dies verbessern?

Hi @smalchow - Vielen Dank für Ihre umfassende Analyse des Problems. Tatsächlich führt Zammad (wie wir sehen können) alle Bezeichner (wie z. B. die E-Mail) herunter, um genau dieses Problem zu vermeiden. Ihre Lösung ist also richtig. Dies ist eine Problemumgehung für Datenbanken, bei denen zwischen Groß- und Kleinschreibung unterschieden wird, um benutzerdefinierte / nicht leistungsfähige Abfragen zu vermeiden.

Wäre toll, wenn Sie eine Pull-Anfrage dafür erstellen könnten!

Ahhrrg .... Das hat mich schon vor 7 Jahren nervt: D.
https://bugs.otrs.org/show_bug.cgi?id=4732

Ok, vergiss 'es. verstanden. Hinweise. :) :)

@thorsteneckel also keine minitests mehr und alle neuen tests wären rspec?

Ja 🎉

Behoben dank der Pull-Anfrage # 1677 von

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen