diff --git a/src/opnsense/mvc/app/library/OPNsense/Auth/LDAP.php b/src/opnsense/mvc/app/library/OPNsense/Auth/LDAP.php index e29ca6e26..eda673619 100644 --- a/src/opnsense/mvc/app/library/OPNsense/Auth/LDAP.php +++ b/src/opnsense/mvc/app/library/OPNsense/Auth/LDAP.php @@ -312,17 +312,6 @@ class LDAP extends Base implements IAuthConnector $options["caseInSensitiveUsernames"]["validate"] = function ($value) { return array(); }; - $options["ldap_sync_create_local_users"] = array(); - $options["ldap_sync_create_local_users"]["name"] = gettext("Automatic user creation"); - $options["ldap_sync_create_local_users"]["help"] = gettext( - "To be used in combination with synchronize groups, allow the authenticator to create new local users after ". - "successful login with group memberships returned for the user." - ); - $options["ldap_sync_create_local_users"]["type"] = "checkbox"; - $options["ldap_sync_create_local_users"]["validate"] = function ($value) { - return array(); - }; - return $options; } diff --git a/src/www/system_authservers.php b/src/www/system_authservers.php index 2e0531fc0..4047a4001 100644 --- a/src/www/system_authservers.php +++ b/src/www/system_authservers.php @@ -90,6 +90,7 @@ if ($_SERVER['REQUEST_METHOD'] === 'GET') { } $pconfig['ldap_read_properties'] = !empty($a_server[$id]['ldap_read_properties']); $pconfig['ldap_sync_memberof'] = !empty($a_server[$id]['ldap_sync_memberof']); + $pconfig['ldap_sync_create_local_users'] = !empty($a_server[$id]['ldap_sync_create_local_users']); if (!empty($a_server[$id]['ldap_sync_memberof_groups'])) { $pconfig['ldap_sync_memberof_groups'] = explode(",", $a_server[$id]['ldap_sync_memberof_groups']); } @@ -243,6 +244,7 @@ if ($_SERVER['REQUEST_METHOD'] === 'GET') { $server['ldap_read_properties'] = !empty($pconfig['ldap_read_properties']); $server['ldap_sync_memberof'] = !empty($pconfig['ldap_sync_memberof']); $server['ldap_sync_memberof_groups'] = !empty($pconfig['ldap_sync_memberof_groups']) ? implode(",", $pconfig['ldap_sync_memberof_groups']) : array(); + $server['ldap_sync_create_local_users'] = !empty($pconfig['ldap_sync_create_local_users']); } elseif ($server['type'] == "radius") { $server['host'] = $pconfig['radius_host']; @@ -313,7 +315,7 @@ if ($_SERVER['REQUEST_METHOD'] === 'GET') { $all_authfields = array( 'type','name','ldap_host','ldap_port','ldap_urltype','ldap_protver','ldap_scope', 'ldap_basedn','ldap_authcn','ldap_extended_query','ldap_binddn','ldap_bindpw','ldap_attr_user', - 'ldap_read_properties', 'ldap_sync_memberof', 'radius_host', + 'ldap_read_properties', 'ldap_sync_memberof', 'ldap_sync_create_local_users', 'radius_host', 'radius_auth_port','radius_acct_port','radius_secret','radius_timeout','radius_srvcs' ); @@ -485,9 +487,11 @@ $( document ).ready(function() { if ($(this).is(":checked")) { $("#ldap_sync_memberof").prop('disabled', false); $("#ldap_sync_memberof_groups").prop('disabled', false); + $("#ldap_sync_create_local_users").prop('disabled', false); } else { $("#ldap_sync_memberof").prop('disabled', true); $("#ldap_sync_memberof_groups").prop('disabled', true); + $("#ldap_sync_create_local_users").prop('disabled', true); } }); $("#ldap_read_properties").change(); @@ -767,6 +771,18 @@ endif; ?> + + + + /> + + +