x

Main chapters

  1. LimeSurvey Cloud vs LimeSurvey CE
  2. LimeSurvey Cloud - Quick start guide
  3. LimeSurvey CE - Installation
  4. How to design a good survey (Guide)
  5. Getting started
  6. LimeSurvey configuration
  7. Introduction - Surveys
  8. View survey settings
  9. View survey menu
  10. View survey structure
  11. Introduction - Questions
  12. Introduction - Question Groups
  13. Introduction - Surveys - Management
  14. Survey toolbar options
  15. Multilingual survey
  16. Quick start guide - ExpressionScript
  17. Advanced features
  18. General FAQ
  19. Troubleshooting
  20. Workarounds
  21. License
  22. Version change log
  23. Plugins - Advanced
 Actions

Translations

Translations:LDAP settings/180/en

From LimeSurvey Manual

$srv = $ldap_server[$groupServerId]; $ds = ldap_connect(($srv['encrypt'] == 'ldaps' ? 'ldaps://' : 'ldap://') . $srv['server'] . ':' . $srv['port']); if ($ds) {

   ldap_set_option($ds, LDAP_OPT_PROTOCOL_VERSION, $srv['protoversion'] == 'ldapv3' ? 3 : 2);
   ldap_set_option($ds, LDAP_OPT_REFERRALS, 0);
   // Never send the bind password if Start-TLS was requested but failed
   $secure = $srv['encrypt'] != 'start-tls' || @ldap_start_tls($ds);
   $bound = $secure && (empty($srv['binddn']) ? @ldap_bind($ds) : @ldap_bind($ds, $srv['binddn'], $srv['bindpw']));
   $result = $bound ? @ldap_list($ds, $groupContainer, '(objectCategory=group)', array('cn', $groupNameAttr)) : false;
   $groups = $result ? ldap_get_entries($ds, $result) : array('count' => 0);
   for ($i = 0; $i < $groups['count']; $i++) {
       $query_id++;
       $ldap_queries[$query_id]['ldapServerId'] = $groupServerId;
       $ldap_queries[$query_id]['name'] = isset($groups[$i][$groupNameAttr][0]) ? $groups[$i][$groupNameAttr][0] : $groups[$i]['cn'][0];
       $ldap_queries[$query_id]['userbase'] = $groupUserBase;
       // Enabled users with an email address that are members of the group, directly or through nested groups
       $ldap_queries[$query_id]['userfilter'] = '(&(objectCategory=person)(objectClass=user)(mail=*)'
           . '(!(userAccountControl:1.2.840.113556.1.4.803:=2))'
           . '(memberOf:1.2.840.113556.1.4.1941:=' . ldap_escape($groups[$i]['dn'], , LDAP_ESCAPE_FILTER) . '))';
       $ldap_queries[$query_id]['userscope'] = 'sub';
       $ldap_queries[$query_id]['firstname_attr'] = 'givenname';
       $ldap_queries[$query_id]['lastname_attr'] = 'sn';
       $ldap_queries[$query_id]['email_attr'] = 'mail';
       $ldap_queries[$query_id]['token_attr'] = ;
       $ldap_queries[$query_id]['language'] = ;
       $ldap_queries[$query_id]['attr1'] = ;
       $ldap_queries[$query_id]['attr2'] = ;
   }
   ldap_unbind($ds);

} </syntaxhighlight>