I have had OTRS working when using the cookie based user authentication, but when I changed over to AD authentication it no longer works.

 

All I get is:

Can't locate object method "new" via package "Kernel::System::CustomerUser::LDAP" at /opt/otrs//Kernel/System/CustomerUser.pm line 80, <PRODUCT> line 4.

 

This “<PRODUCT> line 4.” Error will increment and get larger if you hit refresh multiple times.

 

I haven’t modified the CustomerUser.pm at all, but I have modified the Config.pm to outline what they have on OTRS’s website.

It should be working, right?

 

I probably haven’t configured it properly, so I’m looking for some suggested direction on which angle to approach this at.

 

 

 

>>> CONFIG.PM: <<<

# --

# Kernel/Config.pm - Config file for OTRS kernel

# Copyright (C) 2001-2005 Martin Edenhofer <martin+code@otrs.org>

# --

# $Id: Config.pm.dist,v 1.16 2005/05/27 18:12:15 martin Exp $

# --

# This software comes with ABSOLUTELY NO WARRANTY. For details, see

# the enclosed file COPYING for license information (GPL). If you

# did not receive this file, see http://www.gnu.org/licenses/gpl.txt.

# --

#  Note:

#

#  -->> OTRS does have a lot of config settings. For more settings

#       (Notifications, Ticket::ViewAccelerator, Ticket::NumberGenerator,

#       LDAP, PostMaster, Session, Preferences, ...) see

#       Kernel/Config/Defaults.pm and copy your wanted lines into "this"

#       config file. This file will not be changed on update!

#

# --

package Kernel::Config;

# --

sub Load {

    my $Self = shift;

    # ---------------------------------------------------- #

    # ---------------------------------------------------- #

    #                                                      #

    #         Start of your own config options!!!          #

    #                                                      #

    # ---------------------------------------------------- #

    # ---------------------------------------------------- #

 

    # ---------------------------------------------------- #

    # database settings                                    #

    # ---------------------------------------------------- #

    # DatabaseHost

    # (The database host.)

    $Self->{'DatabaseHost'} = 'localhost';

    # Database

    # (The database name.)

    $Self->{'Database'} = 'otrs';

    # DatabaseUser

    # (The database user.)

    $Self->{'DatabaseUser'} = 'root';

    # DatabasePw

    # (The password of database user. You also can use bin/CryptPassword.pl

    # for crypted passwords.)

    $Self->{'DatabasePw'} = 'hot';

    # DatabaseDSN

    # (The database DSN for MySQL ==> more: "man DBD::mysql")

    $Self->{DatabaseDSN} = "DBI:mysql:database=$Self->{Database};host=$Self->{DatabaseHost};";

 

    # (The database DSN for PostgrSQL ==> more: "man DBD::Pg")

    # if you want to use a local socket connection

#    $Self->{DatabaseDSN} = "DBI:Pg:dbname=$Self->{Database};";

    # if you want to use a tcpip connection

#    $Self->{DatabaseDSN} = "DBI:Pg:dbname=$Self->{Database};host=$Self->{DatabaseHost};";

 

    # ---------------------------------------------------- #

    # fs root directory

    # ---------------------------------------------------- #

    $Self->{Home} = '/opt/otrs';

 

    # **************************************************** #

    # insert your own config settings "here"               #

    # config settings taken from Kernel/Config/Defaults.pm #

    # **************************************************** #

    # $Self->{SessionUseCookie} = 0;

    # $Self->{'CheckMXRecord'} = 1;

 

            $Self->{'AuthModule'} = 'Kernel::System::Auth::LDAP';

 

            $Self->{'AuthModule::LDAP::Host'} = 'asf-fp1.allstatefastener.local';

            $Self->{'AuthModule::LDAP::BaseDN'} = 'DC=allstatefastener,DC=local';

            $Self->{'AuthModule::LDAP::UID'} = 'sAMAccountName';

 

            $Self->{'AuthModule::LDAP::SearchUserDN'} = 'CN=otrs,CN=Users,DC=allstatefastener,DC=local';

            $Self->{'AuthModule::LDAP::SearchUserPw'} = 'asfcorp02';

 

            $Self->{'Customer::AuthModule'} = 'Kernel::System::CustomerAuth::LDAP';

            $Self->{'Customer::AuthModule::LDAP::Host'} = 'asf-fp1.allstatefastener.local';

            $Self->{'Customer::AuthModule::LDAP::BaseDN'} = 'DC=allstatefastener,DC=local';

            $Self->{'Customer::AuthModule::LDAP::UID'} = 'sAMAccountName';

            $Self->{'Customer::AuthModule::LDAP::SearchUserDN'} = 'CN=otrs,CN=Users,DC=allstatefastener,DC=local';

            $Self->{'Customer::AuthModule::LDAP::SearchUserPw'} = 'asfcorp02';

 

             $Self->{CustomerUser} = {

              Module => 'Kernel::System::CustomerUser::LDAP',

              Params => {

                Host => 'asf-fp1.allstatefastener.local',

                BaseDN => 'DC=allstatefastener,DC=local',

                SSCOPE => 'sub',

                UserDN => 'CN=otrs,CN=Users,DC=allstatefastener,DC=local',

                UserPw => 'asfcorp02',

               },

                CustomerKey => 'sAMAccountName',

                CustomerID => 'mail',

                CustomerUserListFields => 'sAMAccountName', 'cn', 'mail',

                CustomerUserSearchFields => 'sAMAccountName', 'cn', 'mail',

                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' ],

                        ],

                        };

 

 

 

    # **************************************************** #

 

    # ---------------------------------------------------- #

    # data inserted by installer                           #

    # ---------------------------------------------------- #

    # $DIBI$

    $Self->{'SystemID'} = 10;

    $Self->{'SecureMode'} = 1;

    $Self->{'Organization'} = '';

    $Self->{'LogModule::LogFile'} = '/tmp/otrs.log';

    $Self->{'LogModule'} = 'Kernel::System::Log::SysLog';

    $Self->{'FQDN'} = 'webdev2.allstatefastener.local';

    $Self->{'DefaultLanguage'} = 'en';

    $Self->{'DefaultCharset'} = 'iso-8859-1';

    $Self->{'AdminEmail'} = 'it@allstatefastener.com';

 

    # ---------------------------------------------------- #

    # ---------------------------------------------------- #

    #                                                      #

    #           End of your own config options!!!          #

    #                                                      #

    # ---------------------------------------------------- #

    # ---------------------------------------------------- #

}

 

# ---------------------------------------------------- #

# needed system stuff (don't edit this)                #

# ---------------------------------------------------- #

use strict;

use vars qw(@ISA $VERSION);

use Kernel::Config::Defaults;

push (@ISA, 'Kernel::Config::Defaults');

$VERSION = '$Revision: 1.16 $';

$VERSION =~ s/^\$.*:\W(.*)\W.+?$/$1/;

# -----------------------------------------------------#

 

1;

>>>  / CONFIG.PM: <<<

 

 

 

Thanks,

Mike Pietersen, A+, MCP

All State Fastener Corporation

IT (586) 498-1388