Merge branch 'ent-3522-Conservar-perfiles-de-usuarios-standard-en-caso-de-cambio-LDAP/AD' into 'develop'

Added token save profile user

See merge request artica/pandorafms!2343

Former-commit-id: f6558be197626904837589df0a7559df60b2ef3e
This commit is contained in:
Daniel Rodriguez 2019-04-12 12:53:20 +02:00
commit a792128906
2 changed files with 32 additions and 3 deletions

View File

@ -85,7 +85,7 @@ function process_user_login($login, $pass, $api=false)
return process_user_login_local($login, $pass, $api);
} else {
$login_remote = process_user_login_remote($login, io_safe_output($pass), $api);
if ($login_remote == false && $config['fallback_local_auth'] == '1') {
if ($login_remote == false) {
return process_user_login_local($login, $pass, $api);
} else {
return $login_remote;
@ -1252,9 +1252,34 @@ function check_permission_ldap(
function fill_permissions_ldap($sr)
{
global $config;
$permissions = [];
if (!$config['ldap_advanced_config']) {
$permissions_profile = [];
if ((bool) $config['ldap_save_profile'] === false) {
$result = db_get_all_rows_filter(
'tusuario_perfil',
['id_usuario' => $sr['uid'][0]]
);
foreach ($result as $perms) {
$permissions_profile[] = [
'profile' => $perms['id_perfil'],
'groups' => [$perms['id_grupo']],
'tags' => $perms['tags'],
'no_hierarchy' => (bool) $perms['no_hierarchy'] ? 1 : 0,
];
}
if (empty($permissions_profile)) {
$permissions[0]['profile'] = $config['default_remote_profile'];
$permissions[0]['groups'][] = $config['default_remote_group'];
$permissions[0]['tags'] = $config['default_assign_tags'];
$permissions[0]['no_hierarchy'] = $config['default_no_hierarchy'];
return $permissions;
} else {
return $permissions_profile;
}
}
if ($config['autocreate_remote_users']) {
$permissions[0]['profile'] = $config['default_remote_profile'];
$permissions[0]['groups'][] = $config['default_remote_group'];
$permissions[0]['tags'] = $config['default_assign_tags'];

View File

@ -604,6 +604,10 @@ function config_update_config()
config_update_value('ldap_save_password', 1);
}
if (!config_update_value('ldap_save_profile', get_parameter('ldap_save_profile'))) {
$error_update[] = __('Save profile');
}
if (!config_update_value('rpandora_server', get_parameter('rpandora_server'))) {
$error_update[] = __('MySQL host');
}