From 12158467554ea4e178173eb533231489cf6a186a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=B4me=20Chilliet?= <come@opensides.be> Date: Tue, 21 Mar 2017 15:45:08 +0100 Subject: [PATCH] Fixes #5425 Added password recovery login attribute to configuration --- contrib/openldap/core-fd-conf.schema | 8 +++++++- html/class_passwordRecovery.inc | 2 ++ plugins/config/class_recoveryConfig.inc | 5 +++++ 3 files changed, 14 insertions(+), 1 deletion(-) diff --git a/contrib/openldap/core-fd-conf.schema b/contrib/openldap/core-fd-conf.schema index fa23ae862..4fbed2ffd 100644 --- a/contrib/openldap/core-fd-conf.schema +++ b/contrib/openldap/core-fd-conf.schema @@ -517,6 +517,12 @@ attributetype ( 1.3.6.1.4.1.38414.8.110.9 NAME 'fdPasswordRecoveryUseAlternate' SYNTAX 1.3.6.1.4.1.1466.115.121.1.7 SINGLE-VALUE ) +attributetype ( 1.3.6.1.4.1.38414.8.110.10 NAME 'fdPasswordRecoveryLoginAttribute' + DESC 'Fusion Directory - Password recovery login attribute (usually uid)' + EQUALITY caseExactIA5Match + SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 + SINGLE-VALUE ) + # Object Class objectclass ( 1.3.6.1.4.1.38414.8.2.1 NAME 'fusionDirectoryConf' @@ -562,7 +568,7 @@ objectclass ( 1.3.6.1.4.1.38414.8.2.3 NAME 'fdPasswordRecoveryConf' fdPasswordRecoveryMailSubject $ fdPasswordRecoveryMailBody $ fdPasswordRecoveryMail2Subject $ fdPasswordRecoveryMail2Body $ fdPasswordRecoveryValidity $ fdPasswordRecoverySalt $ - fdPasswordRecoveryUseAlternate + fdPasswordRecoveryUseAlternate $ fdPasswordRecoveryLoginAttribute ) ) # Dashboard Object Class diff --git a/html/class_passwordRecovery.inc b/html/class_passwordRecovery.inc index 013f21021..92ff66ffd 100644 --- a/html/class_passwordRecovery.inc +++ b/html/class_passwordRecovery.inc @@ -374,6 +374,8 @@ class passwordRecovery extends standAlonePage { $this->usealternates = $config->get_cfg_value('passwordRecoveryUseAlternate'); + $this->loginAttribute = $config->get_cfg_value('passwordRecoveryLoginAttribute', 'uid'); + @DEBUG(DEBUG_TRACE, __LINE__, __FUNCTION__, __FILE__, $config->get_cfg_value('passwordRecoveryActivated'), "passwordRecoveryActivated"); return ($config->get_cfg_value('passwordRecoveryActivated') == "TRUE"); } diff --git a/plugins/config/class_recoveryConfig.inc b/plugins/config/class_recoveryConfig.inc index 59f503dce..6f0ed6221 100644 --- a/plugins/config/class_recoveryConfig.inc +++ b/plugins/config/class_recoveryConfig.inc @@ -74,6 +74,11 @@ class recoveryConfig extends simplePlugin 'fdPasswordRecoveryUseAlternate', FALSE ), + new StringAttribute ( + _('Login attribute'), _('Usually uid, but you can use something else for instance in case of SSO'), + 'fdPasswordRecoveryLoginAttribute', TRUE, + 'uid' + ), ) ), 'first_email' => array ( -- GitLab