web-dev-qa-db-de.com

wie verwende ich das Joomla-Passwort-Format in WordPress?

Ich muss mehr als 1000 Benutzer von Joomla nach WordPress importieren. Das kann ich mit csv machen. Mein Hauptanliegen sind Passwörter. Ich habe ein bisschen gegoogelt und festgestellt, dass es möglich ist, WordPress-Passwortformate zu ändern.

Kann mir jemand einige Codebeispiele zeigen, wie das geht?

6
Märt Rang

Zunächst müssen Sie herausfinden, welcher Hashing-Algorithmus auf der Joomla-Site zum Speichern der Passwörter verwendet wurde. Joomla - anders als Worpdress - wird mit einer Vielzahl von Hashing-Algorithmen ausgeliefert.

Wenn Sie herausgefunden haben, wie die Hashes generiert wurden, können Sie die Hashing-Funktion in WordPress portieren und eine steckbare Funktion mit dem Namen wp_check_password() verwenden, um den Passwort-Hash zu überprüfen.

Pluggable function bedeutet, dass Sie eine gleichnamige Funktion in Ihrem eigenen Plugin definieren können, um die Standardfunktionalität zu überschreiben.

Hier ist der einfache Trick:

Sie vergleichen sowohl den Joomla-Hash als auch den Wordpress-Hash (PHPASS). Zusätzlich können Sie sich auch um MD5 kümmern (der alte Wordpress-Hashing-Algorithmus).

Wenn sich ein Benutzer mit einem Kennwort im alten Hash-Format anmeldet, aktualisieren Sie den Benutzer-Hash in der Datenbank mit dem Standard-WordPress-Hash (PHPASS). Jeder Benutzer, der sich anmeldet, wird automatisch konvertiert.

Die aktuelle wp_check_password() Funktion übrigens. macht schon was ähnliches.

Also, was Sie brauchen, ist

  1. Finden Sie heraus, mit welchem ​​Algorithmus die Hashes generiert wurden.
  2. Portieren Sie diesen Algorithmus auf worpdress, damit Sie ihn für jede Funktion aufrufen können.
  3. Erweitern Sie die Funktion wp_check_password (), um auch Joomla-Hashes zu testen.
10
hakre

Es gibt einige Plugins zum Zurücksetzen von Passwörtern. Ich denke, das ist eine Lösung.

Hier ist der Link zur Referenz der steckbaren Funktionen im Codex . Hier finden Sie alle Arten von Funktionen wie z. wp_salt, wp_hash usw. Vielleicht suchen Sie nach einer Kombination aus wp_check_password & wp_generate_password

1
kaiser