objectSid als UserCustomerID bzw. CustomerID (Hexadezimal)

Hilfe zu Znuny Problemen aller Art
Locked
Bock_Christian
Znuny newbie
Posts: 4
Joined: 07 Oct 2010, 07:33
Znuny Version: 3.0.0

objectSid als UserCustomerID bzw. CustomerID (Hexadezimal)

Post by Bock_Christian »

Bisher haben wir OTRS 2.1.6 produktiv im Einsatz. Die Anwender werden per ADS authentifiziert, wobei die Kundennummer mit dem ADS-Wert userPrincipalName verbunden wird.
Ab 2011 möchte ich komplett neu starten mit OTRS 3 und probiere gerade verschiedene Szenarien aus.

Wenn bei uns Mitarbeiter heiraten, ändert sich auf der Wert userPrincipalName, so dass keine Zuordnung aller Tickets nach Kundennummer möglich ist.

Auf der Suche nach einem absolut eindeutigen ADS-Wert, der sich auch bei Namensänderungen nicht ändert, gefiel mir der Wert objectSid sehr gut. Dieser bleibt immer gleich. Leider ist dieser Wert aber Hexadezimal und liest sich in ADSI-Edit als "01 05 00 00 00 00 00 05 15 00 00 00 92 E0 3C 77 8A 5A 41 60 82 8B A6 28 AF 0A 00 00" und in OTRS erscheint er als "??<w?ZA`???(?". Damit kann ich bei Action=AgentTicketCustomer nicht alle Tickets des jeweilgen Kunden sehen.

Gibt es vielleicht eine Möglichkeit, den hexadezimalen Wert für OTRS les- und verwertbar umzuwandeln? Oder kennt jemand einen anderen Ansatz für eine stets eindeutige Zuordnung?

Vielen Dank für jeden Tipp
Christian Bock
produktiver Testbetrieb: OTRS 2.1.6 (Windows-Paket auf Windows XP)
geplanter Produktivbetrieb: OTRS 3 (CentOS)
jojo
Znuny guru
Posts: 15020
Joined: 26 Jan 2007, 14:50
Znuny Version: Git Master
Contact:

Re: objectSid als UserCustomerID bzw. CustomerID (Hexadezima

Post by jojo »

Hallo,

nimm den samaccountname und halte diesen einfach generisch.
"Production": OTRS™ 8, OTRS™ 7, STORM powered by OTRS
"Testing": ((OTRS Community Edition)) and git Master

Never change Defaults.pm! :: Blog
Professional Services:: http://www.otrs.com :: enjoy@otrs.com
Bock_Christian
Znuny newbie
Posts: 4
Joined: 07 Oct 2010, 07:33
Znuny Version: 3.0.0

Re: objectSid als UserCustomerID bzw. CustomerID (Hexadezima

Post by Bock_Christian »

Dazu müssten wir unsere Abläufe bei der Benutzererstellung generell überarbeiten... Ich bevorzuge auch eine Benutzeranmeldung mit Personalnummer o.ä., aber ich bin ja nur der Admin, nicht der Chef.

Ich suche jetzt mal den Programmcode, der die Werte von...

$Self->{CustomerUser} = {
Name => 'LDAP Datenquelle',
Module => 'Kernel::System::CustomerUser::LDAP',
Params => {...

in die eigene Datenbank speichert. Dort müsste es doch dann möglich sein, dass er den Wert für Map => [.. CustomerID... über decode_base64 vor dem Ablegen in der Datenbank in ein lesbares Format umwandelt.
produktiver Testbetrieb: OTRS 2.1.6 (Windows-Paket auf Windows XP)
geplanter Produktivbetrieb: OTRS 3 (CentOS)
Bock_Christian
Znuny newbie
Posts: 4
Joined: 07 Oct 2010, 07:33
Znuny Version: 3.0.0

Re: objectSid als UserCustomerID bzw. CustomerID (Hexadezima

Post by Bock_Christian »

Da gibt es in der "Kernel/System/CustomerUser/LDAP.pm" um die Zeile 103 herum den Bereich "# customer id".

Wenn ich dort z.B. sage: $Self->{CustomerID} = encode_base64($Self->{CustomerUserMap}->{CustomerID});
dann bekomme ich die Fehlermeldung: Undefined subroutine &Kernel::System::CustomerUser::LDAP::encode_base64 called at...

Füge ich am Anfang der Datei noch

Code: Select all

use MIME::Base64;
use Kernel::System::Encode;
hinzu, sieht es auch nicht anders aus. MIME::Base64 ist laut CPAN installiert und up to date.
produktiver Testbetrieb: OTRS 2.1.6 (Windows-Paket auf Windows XP)
geplanter Produktivbetrieb: OTRS 3 (CentOS)
Bock_Christian
Znuny newbie
Posts: 4
Joined: 07 Oct 2010, 07:33
Znuny Version: 3.0.0

Re: objectSid als UserCustomerID bzw. CustomerID (Hexadezima

Post by Bock_Christian »

Okay. Ich musste OTRS durchstarten. Dann ist die Fehlermeldung weg.

Jetzt sieht die Kundennummer so aus: ��������??<w?ZA`???(? �� also unverändert.
produktiver Testbetrieb: OTRS 2.1.6 (Windows-Paket auf Windows XP)
geplanter Produktivbetrieb: OTRS 3 (CentOS)
Locked