SquidGuard is a URL redirector used to use blacklists with the proxysoftware Squid. There are two big advantages to squidguard: it is fast and it is free.
LDAP Integration
Prerequisites
PHP must be compiled with LDAP support - ./configure --with-ldap in order to use the LDAP module. You will probably have to install openldap-devel in order to do that.
Bug Fix
Per this bug report on Drupal.org, you need to fix a couple of the LDAP module files to properly map LDAP groups to the users
In ldapauth.module and ldapgroups.module replace all:
user_save($user, $userinfo);With:
$user = user_save($user, $userinfo);
menu_rebuild();And in ldapgroups.module, replace (around line 244):
foreach ($user->ldap_drupal_roles as $role) {
_ldapgroups_deny_role($user, $role);
}With:
foreach ($user->ldap_drupal_roles as $role) {
if (preg_match('/^[^=]*=([^,]*),.*$/', $role, $matches)) {
$role = $matches[1];
}
_ldapgroups_deny_role($user, $role);
}Mapping only certain LDAP groups
Per the Advanced Configuration documentation of the ldap_integration module, all groups on the LDAP server are converted to Drupal roles when a user logs in. This might not be desirable if you only need a couple of the groups on your LDAP server mapped to your Drupal site.
Edit the modules/ldap_integration/ldapgroups.conf.php file and specify your groups and their role names:
$GLOBALS['ldap_group_role_mappings'] = array(
// LDAP group => Drupal role
'cn=users,ou=Group,dc=example,dc=com' => 'Users',
'cn=IT,ou=Group,dc=example,dc=com' => 'SiteAdmins'
);Add the specific groups that need to be recognized as Drupal roles and their role names. Note: Make sure that the last group-role mapping does not have a trailing comma ,
Uncomment the function ldapgroups_roles_filter. Note: Uncommenting this function will cause the groups to be filtered through this function. The result is that only the groups specified in the global variable $GLOBALS['ldap_group_role_mappings'] will be parsed, ignoring the rest.
OS X Open Directory
How to authenticate against an OS X Server's Open Directory database
LDAP Integration settings
- Login procedure
- BaseDN -
cn=users,dc=domain,dc=com - UserName attribute -
uid - mail attribute -
mail
- BaseDN -
LDAP Groups settings
- Groups exist as LDAP entries where a multivalued attribute contains the members' CNs
- Nodes containing groups (one per line) -
cn=groups,dc=chroniclejournal,dc=com</em>
<li><em>Attribute holding group members</em> - memberUid
</ul>
To map the OD groups to Drupal groups, the format is <code>cn=groupname,cn=groups,dc=domain,dc=com
Technology:
- Log in to post comments