0
votes

CakePhP3 AUTH Mot de passe non crypté

J'utilise CakePHP3 et les composants authentifiés pour la connexion / la déconnexion. Ma table [utilisateurs] utilisateurs. [Mot de passe] La colonne n'est pas cryptée juste des caractères normaux. Est-ce que c'est une façon de ne pas utiliser ou remplacer le mot de passe Authhacher?


2 commentaires

Si vos données ne sont pas hachées, vous êtes déjà pas à l'aide de la hachage de mot de passe (qui est généralement une très mauvaise idée)!?


Que signifie "pas crypté"? Qu'est-ce qui est stocké à la place? Qu'avez-vous essayé d'activer ce cryptage?


3 Réponses :


1
votes

Créer un fichier nommé user.php avec le contenu ci-dessous dans / src / modèle / entité dossier. Cela crypté automatiquement votre mot de passe tout en épargnant.
xxx


0 commentaires

1
votes

Vous pouvez également utiliser le mot de passe de hachage dans le contrôleur comme ci-dessous. Utilisez la bibliothèque de mots de passe dans le contrôleur.

$password = "Your Password";
$hasher = new DefaultPasswordHasher();
$hasher->hash($password);


1 commentaires

@Nicohaase Vous pouvez le mettre juste avant d'enregistrer les données. Signifie dans le contrôleur dans lequel vous avez écrit le code pour enregistrer des données.



0
votes
$user = $this->Users->newEntity();
$hasher = new new DefaultPasswordHasher();
$user = $this->Users->patchEntity($user, $this->request->getData());
$user->password=$hasher->hash($user->password); //follow this
if ($this->Users->save($user)) {
}

0 commentaires