[Tickets #9739] setup LDAP filter on listAll() for config-backend
bugs at horde.org
bugs at horde.org
Tue Mar 29 11:02:03 UTC 2011
BITTE NICHT AUF DIESE NACHRICHT ANTWORTEN. NACHRICHTEN AN DIESE
E-MAIL-ADRESSE WERDEN NICHT GELESEN.
Ticket-URL: http://bugs.horde.org/ticket/9739
------------------------------------------------------------------------------
Ticket | 9739
Erstellt Von | michael.groene at zel.uni-hannnover.de
Zusammenfassung | setup LDAP filter on listAll() for config-backend
Warteschlange | Horde Base
Version | 4.0-RC1
Typ | Bug
Status | Unconfirmed
Priorität | 2. Medium
Milestone |
Patch |
Zuständige |
------------------------------------------------------------------------------
michael.groene at zel.uni-hannnover.de (2011-03-29 11:02) hat geschrieben:
Quoting Jan Schneider <jan at horde.org>:
> Zitat von michael.groene at zel.uni-hannover.de:
>> Zitat von Jan Schneider <jan at horde.org>:
>>> Zitat von Michael Gröne <michael.groene at zel.uni-hannover.de>:
>>>> I was about, to list groups in the configuration backend, which
>>>> are stored in ActiveDirectory-Ldap.
>>>> In our case the list is always empty.
>>>> I found out, that in Horde/Group/Ldap.php the params-array is
>>>> merged in the __constructor with some default-settings (line 44ff).
>>>>
>>>> The problem seems to be the objectclass-setting, which is
>>>> "posixGroup" by default. We need this to be "group". Changing
>>>> this in source code works and we get the groups listed.
>>>> So I would like to configure this in the config-backend, but
>>>> there is no field, I can set this value, is it?
>>> There is a setting for that in the configuration. Select "One or
>>> more objectclass filters" in the
>>> $conf['group']['params']['search'] setting.
>>
>> That was, what I expected, so I already configured it like that:
>> $conf['group']['params']['search']['objectclass'] = array('group');
>> $conf['group']['params']['search']['filter_type'] = 'objectclass';
>>
>> But these settings seem not to be respected in
>> Horde/Groups/Ldap.php:listAll(), when called by admin/groups.php.
>> An inserted print_r($this->_filter) at the beginning of listAll() gives:
>> Horde_Ldap_Filter Object ( [_filters:protected] => Array ( )
>> [_operator:protected] => [_filter:protected] =>
>> (objectclass=posixGroup) )
>>
>> So do we need to setup the correct filter first?
>
> Please create a ticket on http://bugs.horde.org/. And please check
> what $params is passed to Horde_Group_Ldap::__construct().
Here is print_r($params);:
Array
(
[hostspec] => dc1
[tls] =>
[version] => 3
[binddn] => user
[bindpw] => pass
[bindas] => admin
[useldap] => 1
[basedn] => OU=ZEW_Sicherheitsgruppen,DC=ZEW,DC=local
[scope] => sub
[gid] => cn
[memberuid] => member
[attrisdn] => 1
[newgroup_objectclass] => Array
(
[0] => group
)
[search] => Array
(
[objectclass] => Array
(
[0] => group
)
[filter_type] => objectclass
)
[driverconfig] => horde
[umask] => 63
[ldap] => Horde_Ldap Object
(
[_config:protected] => Array
(
[hostspec] => dc1
[port] => 389
[version] => 3
[tls] =>
[binddn] => user
[bindpw] => pass
[basedn] => OU=ZEW_Sicherheitsgruppen,DC=ZEW,DC=local
[options] => Array
(
)
[filter] => (objectClass=*)
[scope] => sub
[user] => Array
(
[hostspec] => dc1
[tls] =>
[version] => 3
[binddn] => user
[bindpw] => pass
[bindas] => admin
[useldap] => 1
[basedn] =>
OU=ZEW_Sicherheitsgruppen,DC=ZEW,DC=local
[scope] => sub
[gid] => cn
[memberuid] => member
[attrisdn] => 1
[newgroup_objectclass] => Array
(
[0] => group
)
[search] => Array
(
[objectclass] => Array
(
[0] => group
)
[filter_type] => objectclass
)
[driverconfig] => horde
[umask] => 63
)
[auto_reconnect] =>
[min_backoff] => 1
[current_backoff] => 1
[max_backoff] => 32
[cache] => Horde_Cache Object
(
[_params:protected] => Array
(
[compress] =>
[lifetime] => 86400
[sub] => 0
[umask] => 63
)
[_logger:protected] =>
Horde_Core_Log_Logger Object
(
[_levels:Horde_Log_Logger:private] => Array
(
[0] => EMERG
[1] => ALERT
[2] => CRIT
[3] => ERR
[4] => WARN
[5] => NOTICE
[6] => INFO
[7] => DEBUG
)
[_handlers:Horde_Log_Logger:private] => Array
(
[0] =>
Horde_Log_Handler_Stream Object
(
[_formatter:protected] => Horde_Log_Formatter_Simple Object
(
[_format:protected] => %timestamp% %levelName%: %message%
)
[_stream:protected] => Resource id #40
[_mode:protected] => a+
[_streamOrUrl:protected] => /tmp/horde4.log
[_options:protected] => Array
(
)
[_filters:protected] => Array
(
[0] =>
Horde_Log_Filter_Level Object
(
[_level:protected] => 6
)
)
)
)
[_filters:Horde_Log_Logger:private] => Array
(
)
)
[_storage:protected] =>
Horde_Cache_Storage_File Object
(
[_dir:protected] => /tmp
[_file:protected] => Array
(
[horde_registry|app|1300977270|f942fba5fb05c737e798c688185e88f2] =>
/tmp/cache_2990ab4b803ea2f374904714624ffff0
[Horde_Ldap_Schema_185013ebe7b944a5b3c8c4e5721d64d8] =>
/tmp/cache_05dd5a6413d0296f3e0f5e5ce6ef759d
)
[_logger:protected] =>
Horde_Core_Log_Logger Object
(
[_levels:Horde_Log_Logger:private] => Array
(
[0] => EMERG
[1] => ALERT
[2] => CRIT
[3] => ERR
[4] => WARN
[5] => NOTICE
[6] => INFO
[7] => DEBUG
)
[_handlers:Horde_Log_Logger:private] => Array
(
[0] =>
Horde_Log_Handler_Stream Object
(
[_formatter:protected] => Horde_Log_Formatter_Simple Object
(
[_format:protected] => %timestamp% %levelName%: %message%
)
[_stream:protected] => Resource id #40
[_mode:protected] => a+
[_streamOrUrl:protected] => /tmp/horde4.log
[_options:protected] => Array
(
)
[_filters:protected] => Array
(
[0] => Horde_Log_Filter_Level Object
(
[_level:protected] => 6
)
)
)
)
[_filters:Horde_Log_Logger:private] => Array
(
)
)
[_params:protected] => Array
(
[prefix] => cache_
[sub] => 0
[umask] => 63
[lifetime] => 86400
[compress] => 1
[logger] =>
Horde_Core_Log_Logger Object
(
[_levels:Horde_Log_Logger:private] => Array
(
[0] => EMERG
[1] => ALERT
[2] => CRIT
[3] => ERR
[4] => WARN
[5] => NOTICE
[6] => INFO
[7] => DEBUG
)
[_handlers:Horde_Log_Logger:private] => Array
(
[0] =>
Horde_Log_Handler_Stream Object
(
[_formatter:protected] => Horde_Log_Formatter_Simple Object
(
[_format:protected] => %timestamp% %levelName%: %message%
)
... here are many many lines more, but I think they will just blow
up the ticket...
More information about the bugs
mailing list