Overview
Comment: | Ajout d'un signal de plugin motdepasse.compromis |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
501bf924d3c8ae30d1b060be7aa887d6 |
User & Date: | bohwaz on 2019-12-09 18:10:47 |
Other Links: | manifest | tags |
Context
2019-12-10
| ||
14:49 | Alerter du besoin de créer un type de cotisation avant de pouvoir affecter une cotisation check-in: dba8af4479 user: bohwaz tags: trunk | |
2019-12-09
| ||
18:10 | Ajout d'un signal de plugin motdepasse.compromis check-in: 501bf924d3 user: bohwaz tags: trunk | |
18:10 | Clarification de la valeur de retour de Plugin::fireSignal, qui doit renvoyer TRUE si un plugin a arrêté l'exécution, FALSE si des plugins ont été appelés mais aucun n'a interrompu l'exécution, et NULL si aucun plugin n'a été exécuté check-in: 126edcf10c user: bohwaz tags: trunk | |
Changes
Modified src/include/lib/Garradin/Membres/Session.php from [13db0ba2f7] to [d704d4547a].
︙ | ︙ | |||
20 21 22 23 24 25 26 | class Session extends \KD2\UserSession { // Personalisation de la config de UserSession protected $cookie_name = 'gdin'; protected $remember_me_cookie_name = 'gdinp'; protected $remember_me_expiry = '+3 months'; | | > > > > > > > > > > > > > > | 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 | class Session extends \KD2\UserSession { // Personalisation de la config de UserSession protected $cookie_name = 'gdin'; protected $remember_me_cookie_name = 'gdinp'; protected $remember_me_expiry = '+3 months'; const MINIMUM_PASSWORD_LENGTH = 8; static public function checkPasswordValidity($password) { if (strlen($password) < self::MINIMUM_PASSWORD_LENGTH) { throw new UserException(sprintf('Le mot de passe doit faire au moins %d caractères.', self::MINIMUM_PASSWORD_LENGTH)); } $session = new Session(DB::getInstance()); $session->http = new HTTP; if ($session->isPasswordCompromised($password)) { throw new UserException('Ce mot de passe figure dans une liste de mots de passe compromis. Si vous l\'avez utilisé sur d\'autres sites il est recommandé de le changer sur ces autres sites également.'); } } public function isPasswordCompromised($password) { // Vérifier s'il n'y a pas un plugin qui gère déjà cet aspect // notamment en installation mutualisée c'est plus efficace $is_compromised = null; $called = Plugin::fireSignal('motdepasse.compromis', ['password' => $password], ['is_compromised' => $is_compromised]); if ($called !== null) { return $is_compromised; } return parent::isPasswordCompromised($password); } // Extension des méthodes de UserSession public function __construct() { $url = parse_url(ADMIN_URL); //throw new \Exception('lol'); |
︙ | ︙ |