Verschlüsselte Passwörter von OSC zu Shopware kopieren?

Hallo zusammen,

ich muss ein paar Kundendaten aus einem alten OS-Commerce-Shop in Shopware importieren. Das Problem sind eigentlich nur die Passwörter.
Wenn ich das richtig verstehe nutzt das steinalte OSC MD5 und verschlüsselt das noch weiter.

Hat schon jemand solche Passwörter importiert? 

Kann man die irgendwie bearbeiten, damit Sie in Shopware nutzbar sind?

Kann das überhaupt funktionieren?

Grüße
sunflower

Wird das da mit einem Salt gemacht?

Normales MD5 kann Shopware ja noch. Das kannst du per Import/Export oder API importieren, als Encoder einfach md5 setzten.

1 „Gefällt mir“

Ich bin da nicht so der Spezialist, aber ich denke da war von Salt die Rede. Dann teste ich das mal mit MD5. Danke für den schnellen Hinweis.

Wenn es da einen Salt gibt, dann brauchst du einen eigenen encoder. Da haben wir ein Beispiel in der Doku: https://developers.shopware.com/developers-guide/password-encoder/#search-results

Am besten ohne Salt probieren und sonst versuchen herauszubekommen welchen Salt die nutzen. Manchmal kann man den auch selbst definieren.

Hat schon jemand solche Passwörter importiert? 

Ja, über die API und mittels rawPassword 

Was bedeutet rawPasswort?

Ich habe lediglich die MySQL-Datenbank mit den Kundendaten und da ist das Passwort verschlüsselt abgespeichert.

Das sind anscheinend die beiden Passwort-Funktionen in dem alten OSC-Shop:

 

Das solltest du aber relativ einfach mit dem Beispiel in der Doku als Plugin lösen können.

Die nehmen die ersten beiden Werte des MD5 hashes als Salt. Der Salt wird nach einem : an das Passwort angehängt. Und die Validate Funktion hast du ja quasi auch schon im Quelltext. Die machen aus dem Passwort ein Array ab dem : und nutzen dann die [1] als Salt.

 

 

 

Danke für die Info. Mich wundert nur etwas, dass anscheinend noch niemand Kundendaten aus OSC kopiert hat.

Gesetzt den Fall ich baue das Plugin, wie kann ich dann die zukünftigen Registrierungen unterscheiden?

An dem Feld “encoder”? Muss ich dann hier für die alten Bestandskunden eine eigene Kennung verwenden?

@sunflower schrieb:

Was bedeutet rawPasswort?

Ich habe lediglich die MySQL-Datenbank mit den Kundendaten und da ist das Passwort verschlüsselt abgespeichert.

Um noch diese Frage zu beantworten, gibt es sogar ein älteres Thread dazu:

https://forum.shopware.com/discussion/comment/77866/#Comment%5C_77866

Ich habe das auch über die DB aus dem OSC gemacht, jedoch mir dazu ein Script geschrieben und mittels API die Kundendaten im SW Shop eingelesen.

 

@sunflower schrieb:

Danke für die Info. Mich wundert nur etwas, dass anscheinend noch niemand Kundendaten aus OSC kopiert hat.

Gesetzt den Fall ich baue das Plugin, wie kann ich dann die zukünftigen Registrierungen unterscheiden?

An dem Feld „encoder“? Muss ich dann hier für die alten Bestandskunden eine eigene Kennung verwenden?

Beim Login entscheidet Shopware anhand der Spalte Encoder ob das Plugin oder der Core genutzt wird. Im gleichen Zuge wird das Passwort automatisch auf Bcrypt (Shopware Standard) umgezogen. D.h. sobald der Kunde sich einmal einloggt, wird das Passwort für zukünftige Logins neu verschlüsselt. 
Wenn du die Kunden trennen willst, kannst du das ja bspw. über die Kundengruppe machen.  

@sunflower‍ setzt aber scheinbar eine andere Version ein, die einen Salt verwendet. Da reicht rawPassword nicht aus, da muss man einen Encoder implementieren, wie [@Moritz Naczenski](http://forum.shopware.com/profile/14574/Moritz Naczenski „Moritz Naczenski“)‍ bereits erwähnt hat.

Viele Grüße

@simkli‍

Ja ich weiß, aber eventuell ist das System ja wirklich so alt wie oben beschrieben und benutzt nur MD5. Ich hatte bereits so eine Fall.

OK, habs hingekriegt.  Smile

Danke an alle für die HInweise.