web-dev-qa-db-fra.com

Est-il possible de changer l’algorithme d’authentification de l’utilisateur joomla?

Bonjour, je suis en train de faire des recherches initiales pour changer la façon dont joomla authentifie un utilisateur. Je veux faire cela uniquement pour l'utilisateur frontend et non pour l'utilisateur admin.

POURQUOI je veux faire ça? J'importe une liste d'utilisateurs d'un autre CMS utilisant la technique de hachage SHA2SALT et SHA1. Je dois réécrire ce système pour qu'il utilise joomla et que les anciens utilisateurs puissent utiliser les mots de passe existants pour se connecter. Je peux créer une fonctionnalité qui oblige les utilisateurs à changer leur mot de passe immédiatement après la première connexion sur le nouveau système.

J'explore mes options pour y parvenir et je veux connaître le meilleur moyen d'y parvenir. à savoir. si j'ai besoin d'écrire du code ou s'il existe des plugins tiers pour y parvenir.

Serait-ce la meilleure façon de faire? https://docs.joomla.org/J3.x:Creating_an_Authentication_Plugin_for_Joomla

3
J-D

En regardant dans libraries\phpass\PasswordHash.php, Il semble y avoir toutes les fonctions nécessaires, ainsi que des commentaires en haut dans le cas de l'édition des fichiers. Je ne peux pas dire que je l'ai déjà essayé, ni entendu parler de quelqu'un d'autre, mais cela semble être le point de départ.

Bien sûr, écrire un plugin d'authentification en utilisant votre propre algorithme est la voie à suivre, et assurez-vous de vérifier si $app->isSite() ou $app->isAdmin Pour déterminer si vous vouloir vérifier avec votre algorithme.

Vous voudrez commander à votre plug-in de s'exécuter avant le plug-in d'authentification Joomla, de sorte que, lorsqu'il sera contourné par le vôtre, il essaiera Joomlas. De plus, si le vôtre échoue pour un utilisateur front-end, je suis sûr qu'il va continuer à essayer Joomla, alors assurez-vous de gérer l'authentification ayant échoué avec plus que return false .- Je suppose que vous 'voudrais jeter une exception.

4
GDP