Интеграция с LDAP и сквозная аутентификация на Win

Обсуждение вопросов и решений

Модератор: ykolesnikov

Ответить
black_white
OTRS Новобранец
Сообщения: 11
Зарегистрирован: 04 май 2012, 14:03

Интеграция с LDAP и сквозная аутентификация на Win

Сообщение black_white » 04 май 2012, 14:46

Добрый день.
Возникли трудности с настройкой OTRS, в частности, с доменной аутентификацией.
Сразу признаюсь я не силен в Perl. Находил много примеров конфигурации файла Config.pm, но на 100% ничего не заработало.
Домен на 2008 r2
аутентификация кастомеров проходит по http://localhost/otrs/customer.pl
аутентификаця агентов заканчивается ошибкой по http://localhost/otrs/index.pl
Notice][Kernel::System::Auth::HTTPBasicAuth::Auth] User: No $ENV{REMOTE_USER} or $ENV{HTTP_REMOTE_USER} !(REMOTE_ADDR: 127.0.0.1).
Error][Kernel::System::User::UserLookup][797] No UserID found for 'test'!

сейчас имею файл Config.pm вида (ниже по тексту)
Подскажите где ошибка в конфигурационом файле?
Или может кто-то выложит пример config.pm со сквозной авторизацией для агентов и кастомеров через ldap под otrs на Win и с примером апачевского файла httpd.conf (т.к. я понял для сквозной аутентификации)
В гугле не забанен, но мне постоянно выводил результаты под конфу для Линуксов.

благодарю.

Код: Выделить всё

package Kernel::Config;

use utf8;

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'} = 'otrs';
    # DatabasePw
    # (The password of database user. You also can use bin/otrs.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};";

    # ---------------------------------------------------- #
    # fs root directory
    # ---------------------------------------------------- #
    $Self->{Home} = 'd:/otrs/otrs';
#    $Self->{'DefaultCharset'} = 'utf-8';

 # Enable LDAP Authentication Sync for Agent #
    $Self->{'AuthSyncModule'} = 'Kernel::System::Auth::Sync::LDAP';
    $Self->{'AuthSyncModule::LDAP::Host'} = 'dc.domen.ru';
    $Self->{'AuthSyncModule::LDAP::BaseDN'} = 'cn=Users,dc=domen,dc=ru';
    $Self->{'AuthSyncModule::LDAP::UID'} = 'sAMAccountName';
    $Self->{'AuthSyncModule::LDAP::AccessAttr'} = 'member';
    $Self->{'AuthSyncModule::LDAP::SearchUserDN'} = 'CN=otrs,CN=Users,DC=domen,DC=ru';
    $Self->{'AuthSyncModule::LDAP::SearchUserPw'} = 'pass;
    $Self->{'AuthSyncModule::LDAP::Charset'} = 'utf-8';

    # Enable Agent Mapping from LDAP to DB #
    $Self->{'AuthSyncModule::LDAP::UserSyncMap'} = {
    UserFirstname => 'givenName',
    UserLastname => 'sn',
    UserEmail => 'mail',
    };
    $Self->{'AuthSyncModule::LDAP::UserSyncInitialGroups'} = [
        'users',
    ];
    $Self->{'AuthModule'} = 'Kernel::System::Auth::LDAP';
    $Self->{'AuthModule::LDAP::Host'} = 'dc.domen.ru';
    $Self->{'AuthModule::LDAP::BaseDN'} = 'dc=domen, dc=ru';
    $Self->{'AuthModule::LDAP::UID'} = 'sAMAccountName';
    $Self->{'AuthModule::LDAP::GroupDN'} = 'CN=Users,DC=domen,DC=ru';
    $Self->{'AuthModule::LDAP::AccessAttr'} = 'member';
    $Self->{'AuthModule::LDAP::UserAttr'} = 'DN';
    $Self->{'AuthModule::LDAP::SearchUserDN'} = 'CN=otrs,CN=Users,DC=domen,DC=ru';
    $Self->{'AuthModule::LDAP::SearchUserPw'} = 'pass';
Последний раз редактировалось black_white 04 май 2012, 15:14, всего редактировалось 1 раз.

black_white
OTRS Новобранец
Сообщения: 11
Зарегистрирован: 04 май 2012, 14:03

Re: Интеграция с LDAP и сквозная аутентификация на Win

Сообщение black_white » 04 май 2012, 14:47

Код: Выделить всё

# Authenticate customer users against an LDAP backend  #
   $Self->{CustomerUser} = {
  Name => 'Active Directory',
      Module => 'Kernel::System::CustomerUser::LDAP',
      Params => {
         Host => 'dc.domen.ru',
         BaseDN => 'dc=domen,dc=ru',
         SSCOPE => 'sub',
         UserDN => 'cn=otrs,cn=Users,dc=domen,dc=ru',
         UserPw => 'pass',
       AlwaysFilter => '(&(objectcategory=person)(objectclass=user)(mail=*)(!(description=built-In))(!(userAccountControl:1.2.840.113556.1.4.803:=2)))',
      SourceCharset => 'utf-8',
      DestCharset   => 'utf-8',
        },
ReadOnly => 1,
      CustomerKey => 'sAMAccountName',
      CustomerID => 'mail',
      CustomerUserListFields => ['givenname', 'sn', 'mail'],
      CustomerUserSearchFields => ['displayName','sAMAccountName','givenName', 'sn', 'mail','description'],
    CustomerUserSearchPrefix => '',
    CustomerUserSearchSuffix => '*',
   CustomerUserPostMasterSearchFields => ['displayName','sAMAccountName','givenName','sn','mail','description'],
      CustomerUserNameFields => ['givenname', 'sn'],
                CustomerUserExcludePrimaryCustomerID => 0,
             CacheTTL => 120,
      Map => [
         [ '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' ],
           ],
   };

    $Self->{'Customer::AuthModule'} = 'Kernel::System::CustomerAuth::LDAP';
    $Self->{'Customer::AuthModule::LDAP::Host'} = 'dc.domen.ru';
    $Self->{'Customer::AuthModule::LDAP::BaseDN'} = 'dc=domen,dc=ru';
    $Self->{'Customer::AuthModule::LDAP::UID'} = 'sAMAccountName';
    $Self->{'Customer::AuthModule::LDAP::SearchUserDN'} = 'cn=otrs,cn=users,dc=domen,dc=ru';
    $Self->{'Customer::AuthModule::LDAP::SearchUserPw'} = 'pass';

$Self->{'AuthModule'} = 'Kernel::System::Auth::HTTPBasicAuth';
#$Self->{'AuthModule::HTTPBasicAuth::Replace'} = 'DOMAIN\\';
$Self->{AgentPanelLoginURL} = 'http://otrs.domen.ru/otrs/index.pl';
$Self->{AgentPanelLogoutURL} = 'http://otrs.domen.ru/otrs/index.pl';

$Self->{'Customer::AuthModule1'} = 'Kernel::System::CustomerAuth::HTTPBasicAuth';
#$Self->{'Customer::AuthModule::HTTPBasicAuth::Replace'} = 'DOMAIN\\';
$Self->{CustomerPanelLoginURL1} = 'http://otrs.domen.ru/otrs/customer.pl';
$Self->{CustomerPanelLogoutURL1} = 'http://otrs.domen.ru/otrs/customer.pl';

   # ---------------------------------------------------- #
    # insert your own config settings "here"               #
    # config settings taken from Kernel/Config/Defaults.pm #
    # ---------------------------------------------------- #
    # $Self->{SessionUseCookie} = 0;
    # $Self->{CheckMXRecord} = 0;
    # ---------------------------------------------------- #
    # data inserted by installer                           #
    # ---------------------------------------------------- #
    # $DIBI$

    #           End of your own config options!!!          #

}

# ---------------------------------------------------- #
# needed system stuff (don't edit this)                #
# ---------------------------------------------------- #
use strict;
use warnings;

use vars qw(@ISA $VERSION);
$VERSION = qw($Revision: 1.25 $)[1];

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

1;

Yamaneko
OTRS Новобранец
Сообщения: 8
Зарегистрирован: 28 апр 2012, 12:16

Re: Интеграция с LDAP и сквозная аутентификация на Win

Сообщение Yamaneko » 04 май 2012, 15:06

Борюсь с подобной проблемой в соседней ветке. Вы логи выложите может сообща чего и придумаем. КД на какой OS у Вас.

black_white
OTRS Новобранец
Сообщения: 11
Зарегистрирован: 04 май 2012, 14:03

Re: Интеграция с LDAP и сквозная аутентификация на Win

Сообщение black_white » 04 май 2012, 15:15

да, ошибки конечно же вставил в первый пост
в самом начале редактировал и удалил внезапно :?

Yamaneko
OTRS Новобранец
Сообщения: 8
Зарегистрирован: 28 апр 2012, 12:16

Re: Интеграция с LDAP и сквозная аутентификация на Win

Сообщение Yamaneko » 04 май 2012, 15:20

Пользователь test лежит в CN Users?
Все ли атрибуты заполнены 'displayName','sAMAccountName','givenName', 'sn', 'mail','description'

black_white
OTRS Новобранец
Сообщения: 11
Зарегистрирован: 04 май 2012, 14:03

Re: Интеграция с LDAP и сквозная аутентификация на Win

Сообщение black_white » 04 май 2012, 15:34

да, все лежит там. ранее, под другим файлом конфы все работало, но там не было данных об кастомных юзерах.
поэтому искал более полную версию и вот найдя вообще зашел в тупик. уже все перепроверял с рабочим старым, но так ничего и не нашел причину.
вот старый

Код: Выделить всё

package Kernel::Config;

use utf8;

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'} = 'otrs';
    # DatabasePw
    # (The password of database user. You also can use bin/otrs.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 PostgreSQL ==> 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};";
    # if you have PostgresSQL 8.1 or earlier, activate the legacy driver with this line:
#    $Self->{DatabasePostgresqlBefore82} = 1;

    # ---------------------------------------------------- #
    # fs root directory
    # ---------------------------------------------------- #
    $Self->{Home} = 'C:/PROGRA~1/OTRS/OTRS';

    # ---------------------------------------------------- #
    # insert your own config settings "here"               #
    # config settings taken from Kernel/Config/Defaults.pm #
    # ---------------------------------------------------- #
    # $Self->{SessionUseCookie} = 0;
    # $Self->{CheckMXRecord} = 0;

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

    # ---------------------------------------------------- #
    # data inserted by installer                           #
    # ---------------------------------------------------- #

    $Self->{LogModule}          = 'Kernel::System::Log::File';
    $Self->{LogModule::LogFile} = 'C:/PROGRA~1/OTRS/OTRS/var/log/otrs.log';
    # $DIBI$
# ----------------------------------------------------     # 
    # Настройка LDAP авторизации для агентов                # 
    # ----------------------------------------------------     # 
    $Self->{'AuthModule'} = 'Kernel::System::Auth::LDAP'; 
    $Self->{'AuthModule::LDAP::Host'} = 'dc.domen.ru'; 
    $Self->{'AuthModule::LDAP::BaseDN'} = 'DC=domen, DC=ru'; 
    $Self->{'AuthModule::LDAP::UID'} = 'sAMAccountName'; 
    # Доменная группа, по которой определяются пользователи, допущенные к авторизации в OTRS 
    $Self->{'AuthModule::LDAP::GroupDN'} = 'CN=Users,DC=domen, DC=ru'; 
    $Self->{'AuthModule::LDAP::AccessAttr'} = 'member'; 
    $Self->{'AuthModule::LDAP::UserAttr'} = 'DN'; 
    # Логин/пасс для доступа к данным AD 
    $Self->{'AuthModule::LDAP::SearchUserDN'} = 'otrs; 
    $Self->{'AuthModule::LDAP::SearchUserPw'} = 'pass'; 
 
   

black_white
OTRS Новобранец
Сообщения: 11
Зарегистрирован: 04 май 2012, 14:03

Re: Интеграция с LDAP и сквозная аутентификация на Win

Сообщение black_white » 04 май 2012, 15:34

Код: Выделить всё


# in case you want to add always one filter to each ldap query, use 
    # this option. e. g. AlwaysFilter => '(mail=*)' or AlwaysFilter => '(objectclass=user)' 
#    $Self->{'AuthModule::LDAP::AlwaysFilter'} = ''; 
 
    $Self->{'AuthModule::LDAP::Params'} = { 
        port => 389, 
        timeout => 120, 
        async => 0, 
        version => 3, 
    }; 
 
    # --------------------------------------------------- # 
    # authentication sync settings                        # 
    # (enable agent data sync. after succsessful          # 
    # authentication)                                     # 
    # --------------------------------------------------- # 
    $Self->{'AuthSyncModule'} = 'Kernel::System::Auth::Sync::LDAP'; 
    $Self->{'AuthSyncModule::LDAP::Host'} = 'dc.domen.ru'; 
    $Self->{'AuthSyncModule::LDAP::BaseDN'} = 'DC=domen, DC=ru';
    $Self->{'AuthSyncModule::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->{'AuthSyncModule::LDAP::SearchUserDN'} = 'otrs'; 
    $Self->{'AuthSyncModule::LDAP::SearchUserPw'} = 'pass'; 
     # in case you want to add always one filter to each ldap query, use 
    # this option. e. g. AlwaysFilter => '(mail=*)' or AlwaysFilter => '(objectclass=user)' 
#    $Self->{'AuthSyncModule::LDAP::AlwaysFilter'} = ''; 
 
    # AuthSyncModule::LDAP::UserSyncMap 
    # (map if agent should create/synced from LDAP to DB after successful login) 
    $Self->{'AuthSyncModule::LDAP::UserSyncMap'} = { 
        # DB -> LDAP 
        UserFirstname => 'givenName', 
        UserLastname => 'sn', 
        UserEmail => 'mail', 
        Phone => 'telephoneNumber', 
        Username => 'sAMAccountName', 
        UserSalutation => 'description', 
    }; 
 
    # In case you need to use OTRS in iso-charset, you can define this 
    # by using this option (converts utf-8 data from LDAP to iso). 
    #$Self->{'AuthSyncModule::LDAP::Charset'} = 'iso-8859-1'; 
    $Self->{'AuthSyncModule::LDAP::Charset'} = 'utf-8'; 
 
    # Net::LDAP new params (if needed - for more info see perldoc Net::LDAP) 
    $Self->{'AuthSyncModule::LDAP::Params'} = { 
        port    => 389, 
        timeout => 120, 
        async   => 0, 
        version => 3, 
        #SourceCharset => 'utf-8', 
        #Charset => 'windows-1251', 
    }; 

    # ---------------------------------------------------- #
    # ---------------------------------------------------- #
    #                                                      #
    #           End of your own config options!!!          #
    #                                                      #
    # ---------------------------------------------------- #
    # ---------------------------------------------------- #
}

# ---------------------------------------------------- #
# needed system stuff (don't edit this)                #
# ---------------------------------------------------- #
use strict;
use warnings;

use vars qw(@ISA $VERSION);
$VERSION = qw($Revision: 1.25 $)[1];

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

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

1;

Yamaneko
OTRS Новобранец
Сообщения: 8
Зарегистрирован: 28 апр 2012, 12:16

Re: Интеграция с LDAP и сквозная аутентификация на Win

Сообщение Yamaneko » 05 май 2012, 08:26

$Self->{'Customer::AuthModule'} = 'Kernel::System::CustomerAuth::LDAP';
$Self->{'Customer::AuthModule::LDAP::Host'} = 'dc.domen.ru';
$Self->{'Customer::AuthModule::LDAP::BaseDN'} = 'dc=domen,dc=ru';
$Self->{'Customer::AuthModule::LDAP::UID'} = 'sAMAccountName';
$Self->{'Customer::AuthModule::LDAP::SearchUserDN'} = 'cn=otrs,cn=users,dc=domen,dc=ru';
$Self->{'Customer::AuthModule::LDAP::SearchUserPw'} = 'pass';

для кастомеров есть, может стоит добавить и для агентов ?

И у Вас не возникало ошибки доступа по SSL такого типа
The server requires binds to turn on integrity checking if SSL\TLS are not already active on the connection

black_white
OTRS Новобранец
Сообщения: 11
Зарегистрирован: 04 май 2012, 14:03

Re: Интеграция с LDAP и сквозная аутентификация на Win

Сообщение black_white » 05 май 2012, 09:13

все заработало
поправил код для сквозной авторизации для агентов на
$Self->{'AuthModule'} = 'Kernel::System::Auth::LDAP';
#$Self->{'AuthModule::LDAP::Replace'} = 'DOMAIN\\';
$Self->{AgentPanelLoginURL} = 'http://otrs.domen.ru/otrs/index.pl';
$Self->{AgentPanelLogoutURL} = 'http://otrs.domen.ru/otrs/index.pl';

только вот осталась одна проблемка как сконфигурить файл дла апача для сквозной авторизации.

Yamaneko
такой ошибки не было

alexus
OTRS Гуру
Сообщения: 5192
Зарегистрирован: 20 сен 2010, 18:17
Откуда: Москва
Благодарил (а): 92 раза
Поблагодарили: 82 раза

Re: Интеграция с LDAP и сквозная аутентификация на Win

Сообщение alexus » 05 май 2012, 10:05

С уважением,
Алексей Юсов

Prod: OTRS CE ITSM 6.0.28 on CentOS 7 Apache 2.4 MariaDB 10.4.13 + Radiant Customer Portal

Radiant System OTRS Intergrator RU
Группа OTRS Community в Teleram
Хотите внедрить OTRS? Спросите меня как!

black_white
OTRS Новобранец
Сообщения: 11
Зарегистрирован: 04 май 2012, 14:03

Re: Интеграция с LDAP и сквозная аутентификация на Win

Сообщение black_white » 05 май 2012, 10:47

я делал по этой ссылке
http://wiki.otterhub.org/index.php?titl ... ith_Apache

включаю модуль LoadModule actions_module modules/mod_auth_sspi.so апач перестартовывает
вношу изменения в конфиг


<Directory "D:/OTRS/OTRS/bin/cgi-bin">
SSPIAuth On
SSPIAuthoritative On
SSPIDomain dc.domen.ru
SSPIUsernameCase lower
SSPIOfferBasic On
Require valid-user
Options +ExecCGI -Includes
AllowOverride None
Order allow,deny
Allow from all
</Directory>

после этого апач не стартует и в логах ничего не пишет :(

Yamaneko
OTRS Новобранец
Сообщения: 8
Зарегистрирован: 28 апр 2012, 12:16

Re: Интеграция с LDAP и сквозная аутентификация на Win

Сообщение Yamaneko » 10 май 2012, 15:21

Если еще актуально могу выкатить конфиг с работающей сквозной авторизацией под 2008 R2 сервер.
Минусом конфига является то, что агентов в необходимо создавать ручками, а кастомеры подхватываются через сквозную авторизацию. Также в нем не повешены фильтры и поэтому в списках кастомеров будут группы AD, но допиливается очень легко.

black_white
OTRS Новобранец
Сообщения: 11
Зарегистрирован: 04 май 2012, 14:03

Re: Интеграция с LDAP и сквозная аутентификация на Win

Сообщение black_white » 11 май 2012, 11:17

буду вам очень благодарен если выложите.
я так понимаю вы выложите конф. файл config.pm и апачевский?

Yamaneko
OTRS Новобранец
Сообщения: 8
Зарегистрирован: 28 апр 2012, 12:16

Re: Интеграция с LDAP и сквозная аутентификация на Win

Сообщение Yamaneko » 12 май 2012, 17:46

Конфиг будет в понедельник. Апач не трогал в принципе. Для агентов доступ по http:\\serverhost\otrs\index.pl, для кастомеров http:\\serverhost\otrs\customer.pl. Смысл в том, что кастомером будет любой пользователь находящийся в домене, а вот, чтобы добавить агента необходимо создавать одноименную учетную запись в OTRS через админку.

black_white
OTRS Новобранец
Сообщения: 11
Зарегистрирован: 04 май 2012, 14:03

Re: Интеграция с LDAP и сквозная аутентификация на Win

Сообщение black_white » 14 май 2012, 09:14

Yamaneko,
я правильно вас понимаю что конфиг содержит настройки при которых кастомер проходя по ссылке автоматически логинется под своей учетной записью в ОТРС без ввода логина и пароля вручную

Yamaneko
OTRS Новобранец
Сообщения: 8
Зарегистрирован: 28 апр 2012, 12:16

Re: Интеграция с LDAP и сквозная аутентификация на Win

Сообщение Yamaneko » 14 май 2012, 15:53

Увы так сделать у меня не получилось. Ввод логина и пароля в ручную.

Trv
OTRS Новобранец
Сообщения: 24
Зарегистрирован: 07 мар 2012, 12:29

Re: Интеграция с LDAP и сквозная аутентификация на Win

Сообщение Trv » 14 май 2012, 16:12

Yamaneko писал(а):Увы так сделать у меня не получилось. Ввод логина и пароля в ручную.
У меня получилось под IIS.

В конфиге прописываем
# Сквозная авторизация для админов
$Self->{'AuthModule'} = 'Kernel::System::Auth::HTTPBasicAuth';
$Self->{'AuthModule::HTTPBasicAuth::ReplaceRegExp'} = '.+\\\\';

# Сквозная авторизация для пользователей
$Self->{'Customer::AuthModule::HTTPBasicAuth::ReplaceRegExp'} = '.+\\\\';

У меня пользователи могут подкл. из разных доменов, по этому исп. регексп.
В IIS выключаем анонимную авторизацию и включаем "Обычная проверка" и "Проверка Виндовс"

dalight
OTRS Новобранец
Сообщения: 4
Зарегистрирован: 04 июн 2012, 07:50

Re: Интеграция с LDAP и сквозная аутентификация на Win

Сообщение dalight » 04 июн 2012, 08:09

Здравствуйте. Столкнулся с проблемой при интеграции с AD. Конфиг взял из первого поста. Далее подправил модуль авторизации агентов
все заработало
поправил код для сквозной авторизации для агентов на
$Self->{'AuthModule'} = 'Kernel::System::Auth::LDAP';
#$Self->{'AuthModule::LDAP::Replace'} = 'DOMAIN\\';
$Self->{AgentPanelLoginURL} = 'http://otrs.domen.ru/otrs/index.pl';
$Self->{AgentPanelLogoutURL} = 'http://otrs.domen.ru/otrs/index.pl';
Не пускает в админку. Ни под учеткой которую заводил сам, ни под root@localhost.
Ошибки в логах такие:
[Mon Jun 4 08:58:21 2012][Error][Kernel::System::Auth::LDAP::Auth][278] Search failed! base='CN=Users,DC=domen,DC=ru', filter='(member=CN=it,OU=Net_Users,OU=SNSZ,DC=sz,DC=ru)', Success
[Mon Jun 4 08:58:37 2012][Notice][Kernel::System::Auth::LDAP::Auth] User: root@localhost authentication failed, no LDAP entry found!BaseDN='dc=sz, dc=ru', Filter='(sAMAccountName=root@localhost)', (REMOTE_ADDR: 127.0.0.1).

dalight
OTRS Новобранец
Сообщения: 4
Зарегистрирован: 04 июн 2012, 07:50

Re: Интеграция с LDAP и сквозная аутентификация на Win

Сообщение dalight » 04 июн 2012, 08:17

Код: Выделить всё

$Self->{'AuthSyncModule'} = 'Kernel::System::Auth::Sync::LDAP';
    $Self->{'AuthSyncModule::LDAP::Host'} = '192.168.8.1';
    $Self->{'AuthSyncModule::LDAP::BaseDN'} = 'DC=sz, DC=ru';
    $Self->{'AuthSyncModule::LDAP::UID'} = 'sAMAccountName';
    $Self->{'AuthSyncModule::LDAP::AccessAttr'} = 'member';
    $Self->{'AuthSyncModule::LDAP::SearchUserDN'} = 'cn=it, ou=Net_Users, ou=SNSZ, dc=sz, dc=ru';
    $Self->{'AuthSyncModule::LDAP::SearchUserPw'} = '1111';
    $Self->{'AuthSyncModule::LDAP::Charset'} = 'utf-8';
	
    $Self->{'AuthSyncModule::LDAP::UserSyncMap'} = {
    UserFirstname => 'givenName',
    UserLastname => 'sn',
    UserEmail => 'mail',
    };
    $Self->{'AuthSyncModule::LDAP::UserSyncInitialGroups'} = [
        'users',
    ];
    $Self->{'AuthModule'} = 'Kernel::System::Auth::LDAP';
    $Self->{'AuthModule::LDAP::Host'} = '192.168.8.1';
    $Self->{'AuthModule::LDAP::BaseDN'} = 'dc=sz, dc=ru';
    $Self->{'AuthModule::LDAP::UID'} = 'sAMAccountName';
    $Self->{'AuthModule::LDAP::GroupDN'} = 'CN=Users,DC=domen,DC=ru';
    $Self->{'AuthModule::LDAP::AccessAttr'} = 'member';
    $Self->{'AuthModule::LDAP::UserAttr'} = 'DN';
    $Self->{'AuthModule::LDAP::SearchUserDN'} = 'cn=it, ou=Net_Users, ou=SNSZ, dc=sz, dc=ru';
    $Self->{'AuthModule::LDAP::SearchUserPw'} = '1111';
	
   $Self->{CustomerUser} = {
  Name => 'Active Directory',
      Module => 'Kernel::System::CustomerUser::LDAP',
      Params => {
         Host => 'vicont.sz.ru',
         BaseDN => 'dc=sz, dc=ru',
         SSCOPE => 'sub',
         UserDN => 'cn=it, ou=Net_Users, ou=SNSZ, dc=sz, dc=ru',
         UserPw => '1111',
       AlwaysFilter => '(&(objectcategory=person)(objectclass=user)(mail=*)(!(description=built-In))(!(userAccountControl:1.2.840.113556.1.4.803:=2)))',
      SourceCharset => 'utf-8',
      DestCharset   => 'utf-8',
        },
ReadOnly => 1,
      CustomerKey => 'sAMAccountName',
      CustomerID => 'mail',
      CustomerUserListFields => ['givenname', 'sn', 'mail'],
      CustomerUserSearchFields => ['displayName','sAMAccountName','givenName', 'sn', 'mail','description'],
    CustomerUserSearchPrefix => '',
    CustomerUserSearchSuffix => '*',
   CustomerUserPostMasterSearchFields => ['displayName','sAMAccountName','givenName','sn','mail','description'],
      CustomerUserNameFields => ['givenname', 'sn'],
                CustomerUserExcludePrimaryCustomerID => 0,
             CacheTTL => 120,
      Map => [
         [ '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' ],
           ],
   };

    $Self->{'Customer::AuthModule'} = 'Kernel::System::CustomerAuth::LDAP';
    $Self->{'Customer::AuthModule::LDAP::Host'} = 'vicont.sz.ru';
    $Self->{'Customer::AuthModule::LDAP::BaseDN'} = 'dc=sz, dc=ru';
    $Self->{'Customer::AuthModule::LDAP::UID'} = 'sAMAccountName';
    $Self->{'Customer::AuthModule::LDAP::SearchUserDN'} = 'cn=it, ou=Net_Users, ou=SNSZ, dc=sz, dc=ru';
    $Self->{'Customer::AuthModule::LDAP::SearchUserPw'} = '1111';
Последний раз редактировалось dalight 04 июн 2012, 08:20, всего редактировалось 1 раз.

dalight
OTRS Новобранец
Сообщения: 4
Зарегистрирован: 04 июн 2012, 07:50

Re: Интеграция с LDAP и сквозная аутентификация на Win

Сообщение dalight » 04 июн 2012, 08:19

Код: Выделить всё

	
    $Self->{'AuthModule'} = 'Kernel::System::Auth::LDAP';
    $Self->{AgentPanelLoginURL} = 'http://192.168.9.66/otrs/index.pl';
    $Self->{AgentPanelLogoutURL} = 'http://192.168.9.66/otrs/index.pl';

    $Self->{'Customer::AuthModule1'} = 'Kernel::System::CustomerAuth::HTTPBasicAuth';
    $Self->{CustomerPanelLoginURL1} = 'http://192.168.9.66/otrs/customer.pl';
    $Self->{CustomerPanelLogoutURL1} = 'http://192.168.9.66/otrs/customer.pl';

dalight
OTRS Новобранец
Сообщения: 4
Зарегистрирован: 04 июн 2012, 07:50

Re: Интеграция с LDAP и сквозная аутентификация на Win

Сообщение dalight » 05 июн 2012, 10:28

Ребята, я понимаю, что тема уже заезженная. Но хоть убейте не получается. Ткните хотя бы туда, где подробно расписано или есть рабочий config.pm. Спасибо.

viktor86
OTRS Новобранец
Сообщения: 4
Зарегистрирован: 31 июл 2012, 16:10

Re: Интеграция с LDAP и сквозная аутентификация на Win

Сообщение viktor86 » 31 июл 2012, 17:10

dalight писал(а):Ребята, я понимаю, что тема уже заезженная. Но хоть убейте не получается. Ткните хотя бы туда, где подробно расписано или есть рабочий config.pm. Спасибо.
У вас не получилось запустить сквозную авторизацию LDAP на винде?

viktor86
OTRS Новобранец
Сообщения: 4
Зарегистрирован: 31 июл 2012, 16:10

Re: Интеграция с LDAP и сквозная аутентификация на Win

Сообщение viktor86 » 01 авг 2012, 18:30

Скажите пожалуйста кто-нибудь сталкивался с ошибкой в апатче
[Wed Aug 01 19:24:17 2012] [error] [client 192.168.10.10] (OS 2)Не удается найти указанный файл. : couldn't create child process: 720002: index.pl
[Wed Aug 01 19:24:17 2012] [error] [client 192.168.10.10] (OS 2)Не удается найти указанный файл. : couldn't spawn child process: C:/Program Files/OTRS/OTRS/bin/cgi-bin/index.pl

Уже не знаю что с ней сделать. В инете ничего конкретного не написано. А если написано то всё перепробывал.

otrs-3.1.7. На Windows 7 x86
В otrs.log ошибок уже не выводит. все исправил.

Пытаюсь сделать сквозную авторизацию агентов и если заработает кастомеров(они важнее)

regsterr
OTRS Новобранец
Сообщения: 13
Зарегистрирован: 19 окт 2012, 10:48

Re: Интеграция с LDAP и сквозная аутентификация на Win

Сообщение regsterr » 24 окт 2012, 10:40

viktor86 писал(а):Скажите пожалуйста кто-нибудь сталкивался с ошибкой в апатче
[Wed Aug 01 19:24:17 2012] [error] [client 192.168.10.10] (OS 2)Не удается найти указанный файл. : couldn't create child process: 720002: index.pl
[Wed Aug 01 19:24:17 2012] [error] [client 192.168.10.10] (OS 2)Не удается найти указанный файл. : couldn't spawn child process: C:/Program Files/OTRS/OTRS/bin/cgi-bin/index.pl

Уже не знаю что с ней сделать. В инете ничего конкретного не написано. А если написано то всё перепробывал.

otrs-3.1.7. На Windows 7 x86
В otrs.log ошибок уже не выводит. все исправил.

Пытаюсь сделать сквозную авторизацию агентов и если заработает кастомеров(они важнее)
Кто вылечил данную ошибку?

egorbright
OTRS Новобранец
Сообщения: 126
Зарегистрирован: 11 янв 2013, 12:06

Re: Интеграция с LDAP и сквозная аутентификация на Win

Сообщение egorbright » 11 янв 2013, 12:22

Кто-то устранил ошибку couldn't create child process: 720002: index.pl?

Проблема появляется отсюда:
после правки conf файла апача. Копипаст отсюда:
http://wiki.otterhub.org/index.php?titl ... ith_Apache

И только эта ошибка =(

Подскажите, пожалуйста!
FreeBSD 7.4 :: OTRS 3.3.11
FreeBSD 9.1 :: OTRS 5

Ответить