$authcfg = array(); $authcfg['ldap_caref'] = $_GET['cert']; ldap_setup_caenv($authcfg); } $ldap_authcn = isset($_GET['authcn']) ? explode(";", $_GET['authcn']) : array(); if (isset($_GET['urltype']) && strstr($_GET['urltype'], "Standard")) { $ldap_full_url = "ldap://"; } else { $ldap_full_url = "ldaps://"; } $ldap_full_url .= is_ipaddrv6($_GET['host']) ? "[{$_GET['host']}]" : $_GET['host']; if (!empty($_GET['port'])) { $ldap_full_url .= ":{$_GET['port']}"; } $ldap_auth = new OPNsense\Auth\LDAP($_GET['basedn'], isset($_GET['proto']) ? $_GET['proto'] : 3); $ldap_is_connected = $ldap_auth->connect($ldap_full_url, !empty($_GET['binddn']) ? $_GET['binddn'] : null, !empty($_GET['bindpw']) ? $_GET['bindpw'] : null); if ($ldap_is_connected) { $ous = $ldap_auth->listOUs(); } } ?> <body> <script type="text/javascript"> function post_choices() { var ous = <?php echo count($ous); ?> ; var i;
$config['system']['user'][] = $new_user; local_user_set($new_user); } global $config; // attributes used in page $ldap_users = array(); $ldap_is_connected = false; $exit_form = false; // find gui auth server $authcfg = auth_get_authserver($config['system']['webgui']['authmode']); if ($authcfg['type'] == 'ldap') { // setup peer ca ldap_setup_caenv($authcfg); // connect to ldap server $ldap_auth = new OPNsense\Auth\LDAP($authcfg['ldap_basedn'], $authcfg['ldap_protver']); $ldap_is_connected = $ldap_auth->connect($authcfg['ldap_full_url'], $authcfg['ldap_binddn'], $authcfg['ldap_bindpw']); if ($ldap_is_connected) { // collect list of current ldap users from config $confDNs = array(); foreach ($config['system']['user'] as $confUser) { if (!empty($confUser['user_dn'])) { $confDNs[] = trim($confUser['user_dn']); } } // search ldap $result = $ldap_auth->searchUsers("*", $authcfg['ldap_attr_user'], $authcfg['ldap_extended_query']); // actual form action, either save new accounts or list missing if ($_SERVER['REQUEST_METHOD'] === 'POST') { // create selected accounts $exit_form = true; if (isset($_POST['user_dn'])) {