gdpr / passwordsecuritychecker
PasswordSecurityChecker is a component that verifies the security of a password according to the GDPR
Installs: 40
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 0
Forks: 1
Open Issues: 0
Language:JavaScript
Requires
- php: ^5.4 || ^7.0
This package is auto-updated.
Last update: 2024-10-21 17:14:00 UTC
README
Auteur : @igorcyberdyne Version : V1
PasswordSecurityChecker est un composant qui permet de vérifier la sécurité d'un mot de passe selon le GDPR. Le traitement avec ce composant est reparti sous deux environnements. Un côté client avec du Javascript et l'autre côté serveur du PHP
Comment ça marche ?
Côté Javascript
Permet de voir en live les règles de sécurités remplies. Le processus se construit comme tel:
- Construction des règles dans le front à partir des règles par défaut (1)
- Mise à jour des statuts des règles lors de la saisie des valeurs du PWD
- Reconstruction des règles dans le DOM ==> (1).
- Mise à jour des règles dans le front selon le statut des règles
Côté PHP
Permet de vérifier le PWD puis d'afficher les règles ou critères de sécurités non respectés. Il joue le rôle de renforcement de la sécurité côté serveur surtout s'il arrivait que le client désactive le Javascript sur son navigateur.
Exemple
Ci-dessous la mise en place du composant
Télécharger le composant sur github/PasswordSecurityChecker, soit utiliser
$ composer gdpr/passwordsecuritychecker
<?php
require_once 'vendor/autoload.php';
extract($_POST, EXTR_OVERWRITE);
$PasswordSecurityChecker = new PasswordSecurityChecker();
if(!empty($password) && !$PasswordSecurityChecker->isPasswordValid($password))
echo $PasswordSecurityChecker->getError();
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<link rel="stylesheet" href="assets/css/PasswordSecurityChecker.css" />
</head>
<body>
<?php
$PasswordSecurityChecker->displayDefaultRules();
?>
<form action="" method="post">
<label>Password:</label>
<br>
<input id="password" class="form-control" type="password" name="password" value="<?=$PasswordSecurityChecker->getPassword()?>" />
<input type="submit" name="submit" value="valider" />
</form>
<script src="assets/js/PasswordSecurityChecker.js"></script>
<script type="text/javascript">
(function(){
new PasswordSecurityChecker("#password");
})();
</script>
</body>
</html>
Explications
- Le code PHP entre les
lignes 1 et 7
permet d'importer la classe PasswordSecurityChecker puis de vérifier le PWD une fois que le formulaire est validé - Le code PHP à la
ligne 17
visualise uniquement les règles prédéfinies. C'est à retirer lors de la mise en PROD - Le code javascript sur la
ligne 29
permet de charger le composant sur le champ, en passant en argument l'identifiant du champ