Title: Benutzerdatenanbindung LDAP

Hallo OTRS Gemeinde!

Ich versuche (bisher leider ohne Erfolg) die Integration von Active Directory - Usern als Customer-Quelle. Zum einen möchte ich die Informationen aus dem AD lesen (damit bei Tieckets die Kunden zugeordnet werden), zum anderen sollen sich die Benutzer mit ihrem Accountnamen am Customer-Interface anmelden können.

In diesem Fall ist so, dass die Kundenbenutzer die internen Benutzer (alle im Active Directory angelegt und mit div. Zusatzinformationen ausgestattet) sind und diese über mehrere OU's verteilet sind (auch auf gleicher Ebene), sodass ich nicht nur die Root-OU angeben kann, unter der die Benutzer zu finden sind.

Mit der angegebenen Konfiguration erhalte ich bei der Suche über das Agent-Interface (z.b. bei der Erstellung eines neuen Telefontickets) keine Ergebnisse. Wenn ich in den Kunden suche habe ich zwei Quellen zur Auswahl "AD-LDAP" und "Datenbank", beide bringen keine Ergebnisse (in die Datenbank selbst sind auch noch keine Kunden eingepflegt, hier ist es klar).

Wenn ich versuche mich mit einem Usernamen (aus dem AD, der sich in der im Config-File angegebenen OU befindet) anmelde, erscheint im Logfile eine Fehlermeldung:

"[Wed Aug 24 17:47:53 2005][Notice][Kernel::System::CustomerAuth::LDAP::Auth] CustomerUser: c.volkmer authentification failed, no LDAP entry found!BaseDN='dc=bsb, dc=local', Filter='(sAMAccountName=c.volkmer)', (REMOTE_ADDR: 192.168.201.12)."

Ein Auszug aus der Config.pm ist im Anhang beigefügt.

Vielen Dank für Eure Bemühungen!

Christian

-----------------------------------------
Christian Volkmer - IBITECH AG
OTRS 2.0.1 - W2K Server - Apache - Mysql <<otrs_ldap.txt>>

  # This is an example configuration for an LDAP auth. backend.
  # (take care that Net::LDAP is installed!)
  $Self->{'Customer::AuthModule'} = 'Kernel::System::CustomerAuth::LDAP';
  $Self->{'Customer::AuthModule::LDAP::Host'} = 'dzdwdc01.bsb.local';
  $Self->{'Customer::AuthModule::LDAP::BaseDN'} = 'ou=Ben_Allgemein, 
ou=BSB_Benutzer, dc=bsb, dc=local';
  $Self->{'Customer::AuthModule::LDAP::UID'} = 'sAMAccountName';

  # The following is valid but would only be necessary if the
  # anonymous user do NOT have permission to read from the LDAP tree
  #$Self->{'Customer::AuthModule::LDAP::SearchUserDN'} = 'cn=OTRS Service, 
ou=People, dc=example, dc=com';
  #$Self->{'Customer::AuthModule::LDAP::SearchUserPw'} = 'secret';

  # CustomerUser
  # (customer user database backend and settings)
    $Self->{CustomerUser} = {
        Name => 'Datenbank',
        Module => 'Kernel::System::CustomerUser::DB',
        Params => { Table => 'customer_user',
            # to use an external database
#           DSN => 'DBI:odbc:yourdsn',
#           DSN => 'DBI:mysql:database=customerdb;host=customerdbhost',
#           User => '', Password => '',
        },
        # customer uniq id
        CustomerKey => 'login',
        CustomerID => 'customer_id',
        CustomerValid => 'valid_id',
        CustomerUserListFields => ['first_name', 'last_name', 'email'],
#       CustomerUserListFields => ['login', 'first_name', 'last_name', 
'customer_id', 'email'],
        CustomerUserSearchFields => ['login', 'last_name', 'customer_id'],
        CustomerUserSearchPrefix => '',
        CustomerUserSearchSuffix => '*',
        CustomerUserSearchListLimit => 250,
        CustomerUserPostMasterSearchFields => ['email'],
        CustomerUserNameFields => ['salutation', 'first_name', 'last_name'],
#       ReadOnly => 1,
        Map => [
            # note: Login, Email and CustomerID needed!
            # var, frontend, storage, shown, required, storage-type, http-link
            [ 'UserSalutation', 'Salutation', 'salutation', 1, 0, 'var' ],
            [ 'UserFirstname', 'Firstname', 'first_name', 1, 1, 'var' ],
            [ 'UserLastname', 'Lastname', 'last_name', 1, 1, 'var' ],
            [ 'UserLogin', 'Login', 'login', 1, 1, 'var' ],
            [ 'UserPassword', 'Password', 'pw', 0, 1, 'var' ],
            [ 'UserEmail', 'Email', 'email', 0, 1, 'var' ],
            [ 'UserCustomerID', 'CustomerID', 'customer_id', 0, 1, 'var' ],
            [ 'UserComment', 'Comment', 'comments', 1, 0, 'var' ],
            [ 'ValidID', 'Valid', 'valid_id', 0, 1, 'int' ],
        ],
    };

  # CustomerUser1
  # (customer user ldap backend and settings)
  $Self->{CustomerUser1} = {
    Name => 'AD-LDAP',    
    Module => 'Kernel::System::CustomerUser::LDAP',
    Params => {
      # ldap host
      Host => 'dzdwdc01.bsb.local',
      # ldap base dn
      BaseDN => 'ou=Ben_Allgemein, ou=BSB_Benutzer, dc=bsb, dc=local',
      # search scope (one|sub)
      SSCOPE => 'sub',
      # The following is valid but would only be necessary if the
      # anonymous user does NOT have permission to read from the LDAP tree
      #UserDN => 'cn=OTRS Service, ou=People, dc=example, dc=com',
      #UserPw => 'secret',
      AlwaysFilter => '',
      SourceCharset => 'utf-8',
      DestCharset => 'iso-8859-1',
    },
    # customer uniq id
    CustomerKey => 'sAMAccountName',
    # customer #
    CustomerID => 'mail',
    CustomerUserListFields => ['sAMAccountName', 'cn', 'mail'],
    CustomerUserSearchFields => ['sAMAccountName', 'cn', 'mail'],
    CustomerUserSearchPrefix => '',
    CustomerUserSearchSuffix => '*',
    CustomerUserSearchListLimit => 250,
    CustomerUserPostMasterSearchFields => ['mail'],
    CustomerUserNameFields => ['givenname', 'sn'],
    Map => [
      # note: Login, Email and CustomerID needed!
      # var, frontend, storage, shown, required, storage-type
      #[ 'UserSalutation', 'Title', 'title', 1, 0, 'var' ],
      [ 'UserFirstname', 'Firstname', 'givenname', 1, 1, 'var' ],
      [ 'UserLastname', 'Lastname', 'sn', 1, 1, 'var' ],
      [ 'UserLogin', 'Login', 'sAMAccountName', 1, 1, 'var' ],
      [ 'UserEmail', 'Email', 'mail', 1, 1, 'var' ],
      [ 'UserCustomerID', 'CustomerID', 'mail', 0, 1, 'var' ],
      [ 'UserPhone', 'Phone', 'telephonenumber', 1, 0, 'var' ],
      #[ 'UserAddress', 'Address', 'postaladdress', 1, 0, 'var' ],
      #[ 'UserComment', 'Comment', 'description', 1, 0, 'var' ],
    ],
  };
_______________________________________________
OTRS Mailingliste: otrs-de - Webpage: http://otrs.org/
Archiv: http://lists.otrs.org/pipermail/otrs-de/
Listenabo verwalten: http://lists.otrs.org/cgi-bin/listinfo/otrs-de/
Support oder Consulting fuer Ihr OTRS System?
=> http://www.otrs.de/

Antwort per Email an