1. Herzlich willkommen bei WPDE.org, dem grössten und ältesten deutschsprachigen Community-Forum rund um das Thema WordPress. Du musst angemeldet oder registriert sein, um Beiträge verfassen zu können.
    Information ausblenden

Eigene Forenbridge, Passwörter und Cookie

Dieses Thema im Forum "Installation" wurde erstellt von Honulu, 18. Januar 2017.

  1. Honulu

    Honulu Member

    Registriert seit:
    18. Januar 2017
    Beiträge:
    19
    Zustimmungen:
    0
    Grüß euch.

    Ich arbeite derzeit an einer Bridge zwischen Wordpress und einem etwas unbekannten Forum.
    Die User lassen sich schon mal alle in WP importieren genau so wie umgekehrt. Was mir Probleme bereitet sind die Passwörter. In beidem Systemen werden unterschiedliche Verschlüsselungsmethoden für das Passwort genutzt. Wie kann man damit am besten Umgehen?
     
  2. danielgoehr

    danielgoehr Well-Known Member

    Registriert seit:
    13. Juli 2016
    Beiträge:
    2.674
    Zustimmungen:
    128
    Bridge heißt in dem Fall vermutlich, User können sich in beiden Systemen registrieren und dann mit den selben Zugangsdaten beide Seiten nutzen?

    Von der einen Verschlüsselung in die andere wird nicht gehen. Du kommst ja vom jeweiligen Hashwert nicht mehr auf das Augangspasswort (das ist ja Sinn der Sache).

    Das einzige was mir jetzt einfällt wäre, beide Systeme dahingehend zu erweitern, dass gleich beim Anlegen bzw. der Vergabe der Passwörter beide Hashs generiert und in der Datenbank angelegt werden...
     
  3. Honulu

    Honulu Member

    Registriert seit:
    18. Januar 2017
    Beiträge:
    19
    Zustimmungen:
    0
    Genau so ist es gedacht.

    Dies wurde bereits umgesetzt aber es gilt nur für neue User. Was mache ich mit den bereits vorhandenen?
    Was mir Spontan noch einfällt, nach der Installation der Bridge alle Cookies im Forum und Blog löschen. Sobald der User sich einloggt prüfen ob er bereits im System ist, wenn ja dann lasse ich Ihn im anderen System eintragen.

    Jetzt die Frage ob das eine annehmbare Lösung ist?
     
  4. danielgoehr

    danielgoehr Well-Known Member

    Registriert seit:
    13. Juli 2016
    Beiträge:
    2.674
    Zustimmungen:
    128
    Ach so...

    Was die vorhandenen angeht, geht es nur so, dass du die Hashes neu aus den Passwörtern erzeugst. Der Weg von Hash zu Hash klappt wie gesagt nicht.

    Das geht entweder so, wie du jetzt beschrieben hast (du erstellst den zweiten Hash beim anmelden bzw. der Passworteingabe).

    Oder Variante zwei wäre, einfach alle Passwörter zurücksetzen und die Leute auffordern, ein neues Passwort zu erstellen.
    Machen viele Seiten und Dienste ja hin und wieder mal (auch aus Sicherheitsgründen).
     
  5. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.661
    Zustimmungen:
    1.783
    Ein möglicher Lösungsansatz ist hier beschrieben.

    Man benötigt nur etwas Code aus dem Password-Check des alten Forums.

    Aus Benutzersicht ändert sich nichts, das alte Passwort gilt damit weiterhin.
     
  6. Honulu

    Honulu Member

    Registriert seit:
    18. Januar 2017
    Beiträge:
    19
    Zustimmungen:
    0
    Hört sich einfach an. Was ich mich jedoch Frage. Um das Foren Passwort in WP zu übertragen muss es ja entschlüsselt werden.
    Das Forenpasswort nutzt sha1, md5 und Salt als Verschlüsselung.

    Vereinfacht:
    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Man müsste also aus diesem Teil das Passwort in Klartext bekommen, was unmöglich ist und es dann für WP wieder verschlüsseln oder habe ich da etwas ganz falsch verstanden?
     
    #6 Honulu, 19. Januar 2017
    Zuletzt bearbeitet: 19. Januar 2017
  7. danielgoehr

    danielgoehr Well-Known Member

    Registriert seit:
    13. Juli 2016
    Beiträge:
    2.674
    Zustimmungen:
    128
    Ich glaube @b3317133 meint etwas anderes:

    Er würde für beide Systeme (das Forum und Wordpress) den gleichen Hash benutzen und Wordpress entsprechend (durch Anpassung/Änderung der wp check password() ) "beibringen", dass er die Authentifizierung mit der gleichen Methode macht, wie das Forum.

    Dafür bräuchtest du ja das Passwort gar nicht im Klartext, sondern müsstest den Vergleichs-Hash in WordPress nur identisch erzeugen, wie den Vergleichs-Hash im Forum.

    Ich hoffe, ich habe das jetzt richtig verstanden und wiedergegeben...

    Edit: Ziemlich smarte Idee übrigens :)
     
    #7 danielgoehr, 19. Januar 2017
    Zuletzt bearbeitet: 19. Januar 2017
  8. Honulu

    Honulu Member

    Registriert seit:
    18. Januar 2017
    Beiträge:
    19
    Zustimmungen:
    0
    Ah, Danke für die Erklärung. Jetzt leuchtet es auch ein. Das ist natürlich eine Methode die eher in Frage kommt.
     
  9. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.661
    Zustimmungen:
    1.783
    In der Datenbank würde bei user_pass entweder der Hash aus dem alten Forum stehen oder ein nomaler von WordPress. Der erweiterte Check probiert dann einfach beide Hash-Algorithmen und vergleicht das Ergebnis jeweils mit dem Wert in der Datenbank.

    Exakt nach diesem Muster macht das WordPress auch mit den (uralten) MD5-Hashes, deren Verwendung für einen manuellen Passwort-Reset in der Datenbank nach wie vor im Codex beschrieben wird:

    Diese Funktion würde man mit einem dritten Check anhand altem Forum-Code erweitern, dann geht es mit allen drei Varianten.
     
  10. Honulu

    Honulu Member

    Registriert seit:
    18. Januar 2017
    Beiträge:
    19
    Zustimmungen:
    0
    Ich Danke euch für die Ausführlichen Informationen. Damit lässt sich doch Arbeiten
     
  11. Honulu

    Honulu Member

    Registriert seit:
    18. Januar 2017
    Beiträge:
    19
    Zustimmungen:
    0
    So, nach einigen Tagen klappt es auch mit dem 3 Check um die Passwörter aus dem Forum in Wordpress zu nutzen. Ganz ohne Importieren bzw. Kopieren.

    Was mir jetzt noch Probleme macht, das Forum bietet genau an diesem Punkt keine Schnittstelle um im Forum den pw hash aus Wordpress einzubinden, habe mir sagen lassen zwecks Sicherheit.

    Einzige Lösung wäre das ich, wenn sich ein User in Wordpress Registriert alle Daten direkt auch in die Foren User Tabelle Schreibe.

    Soweit so gut. Mit einer für meine Bedürftnise angepasste Form von diesem Script https://codex.wordpress.org/Customizing_the_Registration_Form lasse ich während der Registration alle Daten in die Foren Tabelle schreiben. Nur das abfangen des WP Passwortes macht Probleme. Während der Registration erstellt er ja automatisch ein Passwort. Das kann ich in meinem Script mit $user_pass abfangen. $user_pass stammt aus der function register_new_user wp-includes/user.php

    PHP:
    Entschuldige, aber du musst dich registrieren oder anmelden um den Inhalt sehen zu können!
    Erweitere ich also den INSERT mit der Variable $user_pass, so schreibt er das von Wordpress verschlüsselte Passwort in die Foren Datenbank. Ein Abfangen des Blank Passwort scheint nicht möglich zu sein.

    Was sind eure Vorschläge/Lösungen? Blank Passwort selber Generieren und dieses in die Datenbank von WP und dem Forum einpflegen? Dann ist die Frage wie gehe ich da voran? Reg Link überschreiben so das eine Registration nur über das Forum möglich ist?
     
  12. b3317133

    b3317133 Well-Known Member

    Registriert seit:
    21. November 2014
    Beiträge:
    11.661
    Zustimmungen:
    1.783
    Man könnte auch noch wp_hash_password() erweitern, dort sollte das "Blank Passwort" irgendwann vorbeikommen, dann könnte man es in eine global Variable zwischenspeichern und im weiteren Verlauf in einem anderen Filter/Action (falls nötig) entspr. verwenden.
     
  13. Honulu

    Honulu Member

    Registriert seit:
    18. Januar 2017
    Beiträge:
    19
    Zustimmungen:
    0
    Ich muss euch mal sagen, diese Community ist genial.
    [FONT=&amp]wp_hash_password() [/FONT]brauchte ich nicht erweitern. Ich konnte im obigen Beispiel das Passwort in Klartext mit $userdata['user_pass'] abgreifen.
     
    #13 Honulu, 21. Januar 2017
    Zuletzt bearbeitet: 21. Januar 2017
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden