Changeset 470


Ignore:
Timestamp:
10/03/09 14:40:52 (15 years ago)
Author:
nanardon
Message:
  • think to check groups in acl tracking
File:
1 edited

Legend:

Unmodified
Added
Removed
  • LATMOS-Accounts/lib/LATMOS/Accounts/Bases.pm

    r365 r470  
    449449    if ($auth) { 
    450450        $self->{_user} = $username; 
     451        la_log(LA_DEBUG, "Connect as $username"); 
    451452    } 
    452453    return $auth; 
     
    456457    my ($self, $obj, $attr, $perm) = @_; 
    457458    if ($self->{_acls}) { 
    458         my $who = $self->{_users} || ''; 
    459         my $groups; 
    460         return $self->{_acls}->check($obj, $attr, $perm, $who, $groups); 
     459        my ($who, $groups) = ($self->{_user} || ''); 
     460        if ($who && (my $uo = $self->get_object('user', $who))) { 
     461            $groups = [ $uo->_get_attributes('memberOf') ]; 
     462        } else { 
     463            $who = ''; 
     464        } 
     465        my $res = $self->{_acls}->check($obj, $attr, $perm, $who, $groups); 
     466        $self->log(LA_NOTICE, 'permission denied for "%s" to get %s.%s for %s', 
     467           $who, $obj, $attr, $perm) if (!$res); 
     468        return $res; 
    461469    } else { 
    462470        # No acls, woot 
Note: See TracChangeset for help on using the changeset viewer.