Apache-AuthzLDAP
view release on metacpan or search on metacpan
AuthzLDAP.pm view on Meta::CPAN
elsif ($require eq 'group') {
my $ld = undef;
# Connect to the server
unless ($ld = new Net::LDAP($authenldapserver,port => $authenldapport)) {
$r->note_basic_auth_failure;
$r->log_reason("user $username: Authen LDAP Connection Failed",$r->uri);
return SERVER_ERROR;
}
# Bind anonymously
my $msg = $ld->bind;
unless ($msg->code == LDAP_SUCCESS) {
$r->note_basic_auth_failure;
$r->log_reason("user $username: Authen LDAP Initial Bind Failed: " .
$msg->code . " " . $msg->error, $r->uri);
return SERVER_ERROR;
}
# Get user DN
$msg = $ld->search(base => $userbasedn,
filter => qq($uidattrtype=$username));
AuthzLDAP.pm view on Meta::CPAN
}
my $userinfo = undef;
if ($memberattrvalue eq 'dn') {
$userinfo = $msg->first_entry->dn;
} else {
$userinfo = ($msg->first_entry->get($memberattrvalue))[0];
}
$r->log->debug("handler: Userinfo is $userinfo ($memberattrvalue)");
$ld->unbind();
$ld = undef;
# Connect to the server
unless ($ld = new Net::LDAP($authzldapserver,port => $authzldapport)) {
$r->note_basic_auth_failure;
$r->log_reason("user $username: Authz LDAP Connection Failed",$r->uri);
return SERVER_ERROR;
}
# Bind anonymously
$msg = $ld->bind;
unless ($msg->code == LDAP_SUCCESS) {
$r->note_basic_auth_failure;
$r->log_reason("user $username: Authz LDAP Initial Bind Failed: " .
$msg->code . " " . $msg->error, $r->uri);
return SERVER_ERROR;
}
# Compare the username
my ($result, $group) = check_group($r, $ld, $basedn, $groupattrtype,
$memberattrtype, $userinfo, $rest,
( run in 1.159 second using v1.01-cache-2.11-cpan-2398b32b56e )