Saludos a todos, gracias por su contribución para este foro.
Por favor, necesito vuestra ayuda colegas. Les planteo mi situación en cuanto a los usuarios Customer:
Eh integrado LDAP para los Customer y los agentes, lo que he logrado de resultado EN CUANTO A LOS CUSTOMERS es que al crear primero manualmente a cada usuario sin ponerle ninguna clave, en la interfaz web del Agente administrador (localhost/otrs/index.pl), el customer al ingresar a su interfaz web (localhost/otrs/customer.pl) ingresa con su usuario y contraseña del LDAP (Se autentica contra LDAP). La configuración que hice fue la siguiente:
# This is an example configuration for an LDAP auth. backend.
# (make sure Net::LDAP is installed!)
$Self->{'Customer::AuthModule'} = 'Kernel::System::CustomerAuth::LDAP';
$Self->{'Customer::AuthModule::LDAP::Host'} = '192.168.2.25:389:389';
$Self->{'Customer::AuthModule::LDAP::BaseDN'} = 'dc=dominio,dc=com,dc=ec';
$Self->{'Customer::AuthModule::LDAP::UID'} = 'sAMAccountName';
$Self->{'Customer::AuthModule::LDAP::SearchUserDN'} = 'CN=buscador,OU=Users,DC=dominio,DC=com,DC=ec';
$Self->{'Customer::AuthModule::LDAP::SearchUserPw'} = 'password';
$Self->{'Customer::AuthModule::LDAP::Params'} = {
port => 389,
timeout => 120,
async => 0,
version => 3,
};
En cambio para los agentes,
Yo no necesito crearlos primero en la base de otrs y luego que se logeen, NO si no que por ejemplo: El agente "Daniel Ponce" ingresa su usuario "dponce" y contraseña "daniel152" que son las que estan registradas en LDAP, automaticamente ingresa a la interfaz web del agente y se crea su cuenta en la base de datos de OTRS.
Por eso es mi pregunta, necesito hacer lo mismo para los customer, porque tenemos aproximadamente 1000 y no seria recomendable crearlos manualmente a cada uno de ellos
Por favor necesito vuestra ayuda.
Saludos
Les escribo la configuración que le puse a los agentes:
# Aqui empieza nueva configuracion para la integracion LDAP #
$Self->{'AuthModule'} = 'Kernel::System::Auth::LDAP';
$Self->{'AuthModule::LDAP::Host'} = '192.168.2.25:389';
$Self->{'AuthModule::LDAP::BaseDN'} = 'dc=dominio,dc=com,dc=ec';
$Self->{'AuthModule::LDAP::UID'} = 'sAMAccountName';
$Self->{'AuthModule::LDAP::SearchUserDN'} = 'CN=buscador,OU=Users,DC=dominio,DC=com,DC=ec';
$Self->{'AuthModule::LDAP::SearchUserPw'} = 'password';
$Self->{'AuthModule::LDAP::Params'} = {
port => 389,
timeout => 120,
async => 0,
version => 3,
};
# agent data sync against ldap
$Self->{'AuthSyncModule'} = 'Kernel::System::Auth::Sync::LDAP';
$Self->{'AuthSyncModule::LDAP::Host'} = '192.168.2.25:389';
$Self->{'AuthSyncModule::LDAP::BaseDN'} = 'dc=dominio,dc=com,dc=ec';
$Self->{'AuthSyncModule::LDAP::UID'} = 'sAMAccountName';
$Self->{'AuthSyncModule::LDAP::SearchUserDN'} = 'CN=buscador,OU=Users,DC=dominio,DC=com,DC=ec';
$Self->{'AuthSyncModule::LDAP::SearchUserPw'} = 'password';
$Self->{'AuthSyncModule::LDAP::UserSyncMap'} = {
# DB -> LDAP
UserFirstname => 'givenName',
UserLastname => 'name',
UserEmail => 'mail',
};
$Self->{'AuthSyncModule::LDAP::UserSyncInitialGroups'} = [
'users',
];
SOLUCIONADO"LDAP-BBDD-PARA CUSTOMER"
-
- Znuny newbie
- Posts: 63
- Joined: 22 Jan 2013, 19:26
- Znuny Version: 3.1.12
- Real Name: Iván Oviedo
- Company: ESPOl
SOLUCIONADO"LDAP-BBDD-PARA CUSTOMER"
Last edited by ioviedo on 01 Mar 2013, 03:14, edited 1 time in total.
-
- Znuny expert
- Posts: 241
- Joined: 17 Nov 2011, 18:17
- Znuny Version: 2.4-3.0-3.1-3.2- 3.3
- Real Name: Carlos Gallego
- Location: Medellin, Colombia
Re: LDAP-BBDD-PARA CUSTOMER
Hola ioviedo,
Realmente requieres los clientes en BD o ya evaluaste simplemente dejar el LDAP como origen de los clientes es decir como BackEnd con eso evitarias crearlos en BD. y siempre estaria actualizado el listado de clientes basado en el AD o LDAP
Saludos
Carlos Gallego
Realmente requieres los clientes en BD o ya evaluaste simplemente dejar el LDAP como origen de los clientes es decir como BackEnd con eso evitarias crearlos en BD. y siempre estaria actualizado el listado de clientes basado en el AD o LDAP
Saludos
Carlos Gallego
OTRS 2.4.7 > 3.3 Ubuntu Server - Centos - RedHat, MySQL - PostgresSQL OracleDB
-
- Znuny newbie
- Posts: 63
- Joined: 22 Jan 2013, 19:26
- Znuny Version: 3.1.12
- Real Name: Iván Oviedo
- Company: ESPOl
Re: LDAP-BBDD-PARA CUSTOMER
Saludos, Carlos Gallego
Muchas Gracias por tu respuesta estimado compañero. Realice un Backend de ldap para traer a la base de datos, afortunadamente ya puedo ver en el campo customer todos los usuario del directorio de AD. Pero tengo un problema que al abrir el perfil de un usuario no posee el campo Password ni Valido. Por lo que permite loguear a los customer. Les presento mi configuración:
# This is an example configuration for an LDAP auth. backend.
# (take care that Net::LDAP is installed!)
$Self->{AuthModule} = 'Kernel::System::Auth::LDAP';
$Self->{'AuthModule::LDAP::Host'} = '192.168.0.17:389';
$Self->{'AuthModule::LDAP::BaseDN'} = 'dc=dominio,dc=org,dc=ec';
$Self->{'AuthModule::LDAP::UID'} = 'sAMAccountName';
$Self->{'AuthModule::LDAP::SearchUserDN'} = 'cn=usuario_buscador,ou=Users,dc=dominio,dc=org,dc=ec';
$Self->{'AuthModule::LDAP::SearchUserPw'} = 'passworusuario_buscador;
# Net::LDAP new params (if needed - for more info see perldoc Net::LDAP)
$Self->{'AuthModule::LDAP::Params'} = {
port => 389,
timeout => 120,
async => 0,
version => 3,
};
# --------------------------------------------------- #
# authentication sync settings #
# (enable agent data sync. after succsessful #
# authentication) #
# --------------------------------------------------- #
# This is an example configuration for an LDAP auth sync. backend.
# (take care that Net::LDAP is installed!)
$Self->{AuthSyncModule} = 'Kernel::System::Auth::Sync::LDAP';
$Self->{'AuthSyncModule::LDAP::Host'} = '192.168.0.17:389';
$Self->{'AuthSyncModule::LDAP::BaseDN'} = 'dc=dominio,dc=org,dc=ec';
$Self->{'AuthSyncModule::LDAP::UID'} = 'sAMAccountName';
$Self->{'AuthSyncModule::LDAP::SearchUserDN'} = 'cn=usuario_buscador,ou=Users,dc=dominio,dc=org,dc=ec';
$Self->{'AuthSyncModule::LDAP::SearchUserPw'} = 'passworusuario_buscador';
# 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',
};
# 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,
};
# Die if backend can't work, e. g. can't connect to server.
$Self->{'AuthSyncModule::LDAP::Die'} = 1;
#----------------------------------------------------------------------#
# 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'} = '192.168.0.17:389';
$Self->{'Customer::AuthModule::LDAP::BaseDN'} = 'dc=dominio,dc=org,dc=ec';
$Self->{'Customer::AuthModule::LDAP::UID'} = 'sAMAccountName';
$Self->{'Customer::AuthModule::LDAP::SearchUserDN'} = 'cn=usuario_buscador,ou=Users,dc=dominio,dc=org,dc=ec';
$Self->{'Customer::AuthModule::LDAP::SearchUserPw'} = 'paswordusuario_buscador';
# Net::LDAP new params (if needed - for more info see perldoc Net::LDAP)
$Self->{'Customer::AuthModule::LDAP::Params'} = {
port => 389,
timeout => 120,
async => 0,
version => 3,
};
# --------------------------------------------------- #
# Start of config options!!! #
# CustomerUser stuff #
# --------------------------------------------------- #
# CustomerUser
# (customer user ldap backend and settings)
$Self->{CustomerUser} = {
Name => 'LDAP Backend',
Module => 'Kernel::System::CustomerUser::LDAP',
Params => {
# ldap host
Host => '192.168.0.17:389',
# ldap base dn
BaseDN => 'dc=dominio,dc=org,dc=ec',
# search scope (one|sub)
SSCOPE => 'sub',
UserDN => 'cn=usuario_buscador,ou=Users,dc=dominio,dc=org,dc=ec',
UserPw => 'paswordusuario_buscador',
# Net::LDAP new params (if needed - for more info see perldoc Net::LDAP)
Params => {
port => 389,
timeout => 120,
async => 0,
version => 3,
},
},
# customer unique id
CustomerKey => 'sAMAccountName',
# customer #
CustomerID => 'mail',
CustomerUserListFields => ['cn', 'mail'],
CustomerUserSearchFields => ['mail'],
CustomerUserSearchPrefix => '',
CustomerUserSearchSuffix => '*',
CustomerUserSearchListLimit => 20,
CustomerUserPostMasterSearchFields => ['mail'],
CustomerUserNameFields => ['givenname', 'sn'],
# cache time to live in sec. - cache any ldap queries
CacheTTL => 0,
Map => [
# note: Login, Email and CustomerID needed!
# var, frontend, storage, shown (1=always,2=lite), required, storage-type, http-link, readonly
[ 'UserTitle', 'Title', 'title', 1, 0, 'var', '', 0 ],
[ 'UserFirstname', 'Firstname', 'givenname', 1, 1, 'var', '', 0 ],
[ 'UserLastname', 'Lastname', 'sn', 1, 1, 'var', '', 0 ],
[ 'UserLogin', 'Username', 'sAMAccountName', 1, 1, 'var', '', 0 ],
[ 'UserEmail', 'Email', 'mail', 1, 1, 'var', '', 0 ],
[ 'UserCustomerID', 'CustomerID', 'mail', 0, 1, 'var', '', 0 ],
# [ 'UserCustomerIDs', 'CustomerIDs', 'second_customer_ids', 1, 0, 'var', '', 0 ],
[ 'UserPhone', 'Phone', 'telephonenumber', 1, 0, 'var', '', 0 ],
[ 'UserAddress', 'Address', 'postaladdress', 1, 0, 'var', '', 0 ],
[ 'UserComment', 'Comment', 'description', 1, 0, 'var', '', 0 ],
],
};
Gracias de antemano, saludos desde Ecuador.
Muchas Gracias por tu respuesta estimado compañero. Realice un Backend de ldap para traer a la base de datos, afortunadamente ya puedo ver en el campo customer todos los usuario del directorio de AD. Pero tengo un problema que al abrir el perfil de un usuario no posee el campo Password ni Valido. Por lo que permite loguear a los customer. Les presento mi configuración:
# This is an example configuration for an LDAP auth. backend.
# (take care that Net::LDAP is installed!)
$Self->{AuthModule} = 'Kernel::System::Auth::LDAP';
$Self->{'AuthModule::LDAP::Host'} = '192.168.0.17:389';
$Self->{'AuthModule::LDAP::BaseDN'} = 'dc=dominio,dc=org,dc=ec';
$Self->{'AuthModule::LDAP::UID'} = 'sAMAccountName';
$Self->{'AuthModule::LDAP::SearchUserDN'} = 'cn=usuario_buscador,ou=Users,dc=dominio,dc=org,dc=ec';
$Self->{'AuthModule::LDAP::SearchUserPw'} = 'passworusuario_buscador;
# Net::LDAP new params (if needed - for more info see perldoc Net::LDAP)
$Self->{'AuthModule::LDAP::Params'} = {
port => 389,
timeout => 120,
async => 0,
version => 3,
};
# --------------------------------------------------- #
# authentication sync settings #
# (enable agent data sync. after succsessful #
# authentication) #
# --------------------------------------------------- #
# This is an example configuration for an LDAP auth sync. backend.
# (take care that Net::LDAP is installed!)
$Self->{AuthSyncModule} = 'Kernel::System::Auth::Sync::LDAP';
$Self->{'AuthSyncModule::LDAP::Host'} = '192.168.0.17:389';
$Self->{'AuthSyncModule::LDAP::BaseDN'} = 'dc=dominio,dc=org,dc=ec';
$Self->{'AuthSyncModule::LDAP::UID'} = 'sAMAccountName';
$Self->{'AuthSyncModule::LDAP::SearchUserDN'} = 'cn=usuario_buscador,ou=Users,dc=dominio,dc=org,dc=ec';
$Self->{'AuthSyncModule::LDAP::SearchUserPw'} = 'passworusuario_buscador';
# 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',
};
# 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,
};
# Die if backend can't work, e. g. can't connect to server.
$Self->{'AuthSyncModule::LDAP::Die'} = 1;
#----------------------------------------------------------------------#
# 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'} = '192.168.0.17:389';
$Self->{'Customer::AuthModule::LDAP::BaseDN'} = 'dc=dominio,dc=org,dc=ec';
$Self->{'Customer::AuthModule::LDAP::UID'} = 'sAMAccountName';
$Self->{'Customer::AuthModule::LDAP::SearchUserDN'} = 'cn=usuario_buscador,ou=Users,dc=dominio,dc=org,dc=ec';
$Self->{'Customer::AuthModule::LDAP::SearchUserPw'} = 'paswordusuario_buscador';
# Net::LDAP new params (if needed - for more info see perldoc Net::LDAP)
$Self->{'Customer::AuthModule::LDAP::Params'} = {
port => 389,
timeout => 120,
async => 0,
version => 3,
};
# --------------------------------------------------- #
# Start of config options!!! #
# CustomerUser stuff #
# --------------------------------------------------- #
# CustomerUser
# (customer user ldap backend and settings)
$Self->{CustomerUser} = {
Name => 'LDAP Backend',
Module => 'Kernel::System::CustomerUser::LDAP',
Params => {
# ldap host
Host => '192.168.0.17:389',
# ldap base dn
BaseDN => 'dc=dominio,dc=org,dc=ec',
# search scope (one|sub)
SSCOPE => 'sub',
UserDN => 'cn=usuario_buscador,ou=Users,dc=dominio,dc=org,dc=ec',
UserPw => 'paswordusuario_buscador',
# Net::LDAP new params (if needed - for more info see perldoc Net::LDAP)
Params => {
port => 389,
timeout => 120,
async => 0,
version => 3,
},
},
# customer unique id
CustomerKey => 'sAMAccountName',
# customer #
CustomerID => 'mail',
CustomerUserListFields => ['cn', 'mail'],
CustomerUserSearchFields => ['mail'],
CustomerUserSearchPrefix => '',
CustomerUserSearchSuffix => '*',
CustomerUserSearchListLimit => 20,
CustomerUserPostMasterSearchFields => ['mail'],
CustomerUserNameFields => ['givenname', 'sn'],
# cache time to live in sec. - cache any ldap queries
CacheTTL => 0,
Map => [
# note: Login, Email and CustomerID needed!
# var, frontend, storage, shown (1=always,2=lite), required, storage-type, http-link, readonly
[ 'UserTitle', 'Title', 'title', 1, 0, 'var', '', 0 ],
[ 'UserFirstname', 'Firstname', 'givenname', 1, 1, 'var', '', 0 ],
[ 'UserLastname', 'Lastname', 'sn', 1, 1, 'var', '', 0 ],
[ 'UserLogin', 'Username', 'sAMAccountName', 1, 1, 'var', '', 0 ],
[ 'UserEmail', 'Email', 'mail', 1, 1, 'var', '', 0 ],
[ 'UserCustomerID', 'CustomerID', 'mail', 0, 1, 'var', '', 0 ],
# [ 'UserCustomerIDs', 'CustomerIDs', 'second_customer_ids', 1, 0, 'var', '', 0 ],
[ 'UserPhone', 'Phone', 'telephonenumber', 1, 0, 'var', '', 0 ],
[ 'UserAddress', 'Address', 'postaladdress', 1, 0, 'var', '', 0 ],
[ 'UserComment', 'Comment', 'description', 1, 0, 'var', '', 0 ],
],
};
Gracias de antemano, saludos desde Ecuador.