Auslesen des MD5 Passworts des Frontendusers aus der DB

Gesperrt
risibility
Beiträge: 89
Registriert: Fr 25. Feb 2005, 00:13
Wohnort: Darmstadt
Kontaktdaten:

Auslesen des MD5 Passworts des Frontendusers aus der DB

Beitrag von risibility » Mi 14. Dez 2005, 16:24

Ich versuche schon seit Stunden mir das MD5 Passwort des momentan angemeldeten Frontendusers ausgeben zu lassen. Kann mir da jemand helfen?

Ich weiß zum Beispiel das man mit

Code: Alles auswählen

$auth->auth["uid"]
die UserID des momentan angemeldeten Backendusers ausgeben lassen kann. Das gleiche möchte ich mit dem MD5 machen...

Vielen Dank im voraus...
Contenido Version: 4.8.3
Apache 1.3.34
MySQL Serverversion 5.0.32
Installierte PHP-Version 5.2.5

Dodger77
Beiträge: 3626
Registriert: Di 12. Okt 2004, 20:00
Wohnort: Voerde (Niederrhein)
Kontaktdaten:

Beitrag von Dodger77 » Mi 14. Dez 2005, 16:37

Du willst aber schon den Hash (Klartext kann ja nicht funktionieren)? Den solltest du mit einer SQL-Abfrage ohne Problem rausbekommen. Schau dir mal die "con_frontendusers" an.

HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB » Mi 14. Dez 2005, 16:39

Ich denke, dass ist nicht in der Klasse enthalten. Erhältst Du nur, in dem Du mit uid-Werte eine SQL-Abfrage machst.

Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net

risibility
Beiträge: 89
Registriert: Fr 25. Feb 2005, 00:13
Wohnort: Darmstadt
Kontaktdaten:

Beitrag von risibility » Mi 14. Dez 2005, 16:48

Ich erkläre mal am besten wofür ich das brauche...

Ich benötige ien USER_ID zur Weiterleitung auf eine zweite externe Seite. Die sorgt dafür das man sich auf der externen nicht mehr einzuloggen braucht.

Das Problem ist, dass bei den Frontendusern in der DB keine USER_ID festgehalten wird. Wenn man sich also im Frontend als Frontenduser anmeldet wird bei der Übertragung der UID nir die "IDFRONTENDUSER" übermittelt und die besteht bekanntlich beim z. B. ersten User nur aus "1". Das ist mir aber zu heikel nur eine einzelne Zahl zu übermitteln und deshalb dachte ich mir, ich übermittel das MD5 Passwort...
Contenido Version: 4.8.3
Apache 1.3.34
MySQL Serverversion 5.0.32
Installierte PHP-Version 5.2.5

HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB » Mi 14. Dez 2005, 18:40

Öhm, gilt trotzdem das Gesagte:
Ich denke, dass ist nicht in der Klasse enthalten. Erhältst Du nur, in dem Du mit uid-Werte eine SQL-Abfrage machst.
Den md5 zu senden, hört grundsätzlich gar nicht sooo schlecht an - wobei ich Dich darauf hinweisen möchte, dass ein md5(irgendwas) nicht eindeutig sein muss.

Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net

risibility
Beiträge: 89
Registriert: Fr 25. Feb 2005, 00:13
Wohnort: Darmstadt
Kontaktdaten:

Beitrag von risibility » Do 15. Dez 2005, 09:10

Dann mal folgende Frage:

Wenn ich mich einlogge, dann wird das Password ja gegengecheckt. Dazu muß das eingegebene Passwort in MD5 umgewandelt werden und dann mit dem in der Datenbank vorhandenen verglichen werden.
Bei diesem Vorgang ist das umgewandelte MD5-Passwort doch in einer Variablen des Login-Moduls gespeichert.

Kann ich nicht einfach diese Variable aus dem Login-Mudul ausgeben lassen?
Und wenn ja, weiß vielleicht irgend jemand welche Variable das ist?

Gruß
Contenido Version: 4.8.3
Apache 1.3.34
MySQL Serverversion 5.0.32
Installierte PHP-Version 5.2.5

risibility
Beiträge: 89
Registriert: Fr 25. Feb 2005, 00:13
Wohnort: Darmstadt
Kontaktdaten:

Beitrag von risibility » Do 15. Dez 2005, 16:08

Hab es so gemacht...

Code: Alles auswählen

<?php
if ($auth->auth["uid"] == "nobody")
{ echo "kein zugang";
} else 
{
$Verbindung = mysql_pconnect( "localhost", "Benutzername", "Passwort")
@mysql_select_db("Datenbankname", $Verbindung)
 	
$tabellenname = "con_frontendusers";
$spaltenname = "idfrontenduser";
$userid = $auth->auth["uid"]; 

$SQLAbfrage = "SELECT password FROM $tabellenname
WHERE $spaltenname = $userid";

$Ergebnis = mysql_query($SQLAbfrage, $Verbindung)

while ( $aDaten = mysql_fetch_array( $Ergebnis ) )
{echo $aDaten["password"] ;}
?>
und es funktioniert... ;)
Contenido Version: 4.8.3
Apache 1.3.34
MySQL Serverversion 5.0.32
Installierte PHP-Version 5.2.5

HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB » Fr 16. Dez 2005, 00:19

Was Du da erstellt hast, ist eine einfache DB-Abfrage (das wurde mehrfach erwähnt).

Dazu bräuchtest Du aber kein mysql_pconnect, denn es handelt sich (zumindest in dem Beispiel) um die Contenido-DB - da gibt es das Objekt DB_Contenido, siehe andere Module.

Mit anderen DBs dürfte es so nicht ganz funktionieren, da dazu nach Ausführung die DB-Verbindung wieder auf die Contenido-DB "zurückgebogen" werden muss (nur so zur Info...).

Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net

risibility
Beiträge: 89
Registriert: Fr 25. Feb 2005, 00:13
Wohnort: Darmstadt
Kontaktdaten:

Beitrag von risibility » Fr 16. Dez 2005, 13:59

Dann werd ich das mit dem DB_Contenido nochmal abändern. Vielen Dank HerrB für die vielen Mühen hier und wegen der Umlaute im anderen Tread ;)
Contenido Version: 4.8.3
Apache 1.3.34
MySQL Serverversion 5.0.32
Installierte PHP-Version 5.2.5

Gesperrt