User Import aus .csv Datei

  • Hi ich würde gerne über 300 User ins WBB per .csv Datei importieren, gibt es dafür ein Plugin oder kann ich das direkt via phpMyAdmin machen ?

    Problem ist allerdings das daß derzeitige Passwort in der .csv Datei klar lesbar ist, es müsste dann also per hash verschlüsselt werden.

    Jemand eine Idee oder ev. gar einfache Lösung ?

    Ich habe schon mal per phpmyadmin geschaut scheiter dann aber am Passwort Hash (das war ja in früheren WBB Versionen glaube ich mal md5, passt aber jetzt nicht mehr).



    Bin für Ratschläge offen ;) :/

  • zls

    Changed the title of the thread from “UserImport aus .csv Datei” to “User Import aus .csv Datei”.
  • Naja, aber das Initialpasswort könnte man nachträglich setzen und dann von dem Account auf alle anderen Kopieren.

    An sich bei einer korrekten CSV-Datei mit Struktur der Tabelle wcf1_user kann man die User-Daten importieren und im Anschluss per SQL die entsprechenden Standard-Gruppen zuweisen. Wobei dann eben noch einige spezielle Datensätze fehlen.

  • Leider keine Lösung !
    Da das Passwort (also die derzeitige PLZ) bleiben muss !
    Nach welchem verfahren wird denn das PW in der DB gesichert ?
    bzw. wie also nach welchem Weg entsteht der HASH in der DB für das PW ?
    So das ich aus der PLZ den HASH erstellen kann !

  • Besser wäre hier, ein kleines Script zu bauen. Dann kann man auch das Kennwort ordentlich verschlüsseln und läuft nicht Gefahr, dass irgendwo etwas vergessen wurde.


    Ansonsten besteht auch die Möglichkeit, Kennwörter einfacher in der Datenbank zu speichern. Diese werden dann beim ersten Login in das neue Format konvertiert.

  • Ansonsten besteht auch die Möglichkeit, Kennwörter einfacher in der Datenbank zu speichern. Diese werden dann beim ersten Login in das neue Format konvertiert.

    Wie meinen ??
    Ich kann doch keine klar lesbaren Kennwörter in DB speichern :/
    Woher sollte WBB jetzt wissen das er es in das BCrypt Format konvertieren muss :/:/:/


    stehe da gerade ein wenig auf dem Verständnissschlauch (d.h. ich kapier es gerade nicht *lach*)

  • stehe da gerade ein wenig auf dem Verständnissschlauch (d.h. ich kapier es gerade nicht *lach*)

    Das wbb ist dazu in der lage verschiedene passwort mechanismen zu verwenden um einen Import von einer anderen Software zu erleichtern.

    Dazu kannst du z.B. alle passwörter als sha1 hashen und dann in der form abspeichern:


    wbb2:sha1-hash


    Wenn sich ein user dann einloggt wird das passwort akzeptiert und als passender bcrypt hash neu abgespeichert.


    Wobei es leichter sein dürfte die User mit nem kleinen Script anzulegen, das hatte ich hier mal beschrieben:

    Benutzer manuell importieren


    Ist zwar etwas älter, aber wirklich geändert hat sich da nichts dran^^

  • upps jetzt geht garnichts mehr =O=O=O


    Also Step by Step was ich gemacht habe

    via phpmyadmin

    manuell alle relevanten Felder ausgefüllt vermutlich hätte ich nicht alle gebraucht :)

    username = testuser

    email = testuser@testuser.de

    SHA1 Passwort = wbb2:sha1-testuser

    languageID = 1

    registrationDate = 1573226693

    signatureEnableHtml = 1

    lastActivityTime = 1573226894

    userOnlineGroupID = 1


    Nach dem Speichern der Daten in phpmyadmin versucht einzuloggen mit


    username = testuser

    passwort = testuser


    und nun kommt

    Ein Fehler ist aufgetreten

    Interner Fehlercode: 54a4aada26f626f4a9add3da91c8c9b232461a69


    Error

    • Error Type:

      wcf\system\exception\SystemException

    • Error Message:

      Unable to determine password encryption

    • File:

      */lib/util/PasswordUtil.class.php (125)

    • Stack Trace:
      • #0 */lib/data/user/User.class.php (153):
      • wcf\util\PasswordUtil::checkPassword('test', 'testuser', '90c81566dac8d2ca08b2096e50d72708bca2352b')
      • #1 */lib/system/user/authentication/DefaultUserAuthentication.class.php (44):
      • wcf\data\user\User->checkPassword('testuser')
      • #2 */lib/acp/form/LoginForm.class.php (118):
      • wcf\system\user\authentication\DefaultUserAuthentication->loginManually('test', 'testuser')
      • #3 */lib/acp/form/LoginForm.class.php (186):
      • wcf\acp\form\LoginForm->validateUser()
      • #4 */lib/form/AbstractForm.class.php (60):
      • wcf\acp\form\LoginForm->validate()
      • #5 */lib/acp/form/LoginForm.class.php (140):
      • wcf\form\AbstractForm->submit()
      • #6 */lib/form/AbstractForm.class.php (113):
      • wcf\acp\form\LoginForm->submit()
      • #7 */lib/form/AbstractCaptchaForm.class.php (67):
      • wcf\form\AbstractForm->readData()
      • #8 */lib/acp/form/LoginForm.class.php (227):
      • wcf\form\AbstractCaptchaForm->readData()
      • #9 */lib/page/AbstractPage.class.php (291):
      • wcf\acp\form\LoginForm->readData()
      • #10 */lib/page/AbstractPage.class.php (114):
      • wcf\page\AbstractPage->show()
      • #11 */lib/system/request/Request.class.php (83):
      • wcf\page\AbstractPage->__run()
      • #12 */lib/system/request/RequestHandler.class.php (96):
      • wcf\system\request\Request->execute()
      • #13 */index.php (9):
      • wcf\system\request\RequestHandler->handle('wcf')



    =O=O=O

    jemand eine Idee ?

    erst wenn ich das Passwort von dem eben manuell angelegten User in der DB wieder lösche kann ich die Hauptseite vom wbb wieder aufrufen !



    hier mal ein screenshot wie ich es geschrieben / verstanden habe von Morik




  • du musst das gewünschte passwort via sha1 hashen, und dann eintragen, richtig wäre also:


    wbb2:45c571a156ddcef41351a713bcddee5ba7e95460 (und dabei auf keinen Fall die Mysql Funktion sha1 aktivieren, diese ist hier für deinen Fehler verantwortlich, du musst manuekll hashen und dann einfügen)


    Aber ich würde dir trotzdem empfehlen nicht manuell an der DB rumzuspielen sondern die API zu nutzen...

  • Ich schließe mich hier meinen Vorrednern an. Gerade .csv Dateien lassen sich doch wunderbar verarbeiten. Ein foreach, eine UserAction später ist es fertig und alle Benutzer können sich entsprechend anmelden und du vergisst nichts... ich sag nur mal user_options, die hier u.a noch nicht erwähnt wurden...

  • @SoftCreatR

    Das wäre Super wenn Du mir da helfen würdest :)

    Ich habe eine kleine Beispiel .csv einmal angehängt


    test.zip


    Im Hauptverzeichnis der Software auf dem FTP mitsamt der CSV-Datei ablegen, ggf. die Zeilen 7 & 8 anpassen und dann im Browser aufrufen.