source: npl/webapps/sugarcrm/LDAPAuthenticateUser.php-groupcheck.patch @ a2d969e

perl-5.22
Last change on this file since a2d969e was c5c522c, checked in by Edwin Eefting <edwin@datux.nl>, 8 years ago

initial commit, transferred from cleaned syn3 svn tree

  • Property mode set to 100644
File size: 1.1 KB
  • (a) LDAPAuthenticateUser.php vs. (b) a

    a b  
    9696                        // Authentication succeeded, get info from LDAP directory
    9797                        $attrs = array_keys($GLOBALS['ldapConfig']['users']['fields']);
    9898                        $base_dn = $GLOBALS['ldap_config']->settings['ldap_base_dn'];
    99                         $name_filter = "(" . $GLOBALS['ldap_config']->settings['ldap_login_attr']. "=" . $name . ")";
     99
     100                        //check group membership
     101                        $result = @ldap_search($ldapconn, "cn=SugarCRM,ou=Groups,$base_dn", "(memberUid=$name)", $attrs);
     102                        $info=@ldap_get_entries($ldapconn, $result);
     103                        if (strtolower($name)=="administrator" || $info[0])
     104                        {
     105                                $GLOBALS['log']->debug("ldapauth: Group membership OK");
     106                        }
     107                        else
     108                        {
     109                                $GLOBALS['log']->debug("ldapauth: FAILED, $name not member of SugarCRM group!");
     110                                return '';
     111                        }
     112                       
    100113       
     114                        $name_filter = "(" . $GLOBALS['ldap_config']->settings['ldap_login_attr']. "=" . $name . ")";
    101115                        $GLOBALS['log']->debug("ldapauth: Fetching user info from Directory.");
    102116                        $result = @ldap_search($ldapconn, $base_dn, $name_filter, $attrs);
    103117                         if($this->loginError($error)){
Note: See TracBrowser for help on using the repository browser.