Benutzername auf externer Seite anzeigen.

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Benutzeravatar
gn#36
Ehrenadmin
Beiträge: 9313
Registriert: 01.10.2006 16:20
Wohnort: Ganz in der Nähe...
Kontaktdaten:

Re: Benutzername auf externer Seite anzeigen.

Beitrag von gn#36 »

Tadashi hat geschrieben:So mal ne Frage :D Ich verzichte jetzt auf die Session, weil ich euren Rat berücksichtige und versuche einfach nur die Datenbank zu benutzen. Leider bin ich ein Total noob was php betrifft, könnte mir hier jemand weiterhelfen ?
Gerade dann solltest du erst mal mit was einfachem Anfangen und das Nutzen, was dir phpBB bereits an Arbeit abnimmt und eben NICHT direkt mit den phpBB eigenen Daten direkt in der Datenbank arbeiten, es sei denn du möchtest Daten abrufen, die phpBB so nicht bereitstellt. Anhand der Datenbank und Cookies und SID festzustellen, ob ein User angemeldet ist erfordert sehr tiefgehende Kenntnis von phpBB, viel tiefer, als die meisten Mod Autoren sich damit auskennen dürften. Mit phpBB Funktionen brauchst du genau eine Variable abzufragen, ohne musst du manuell die Cookies prüfen, ggf. die Session ID Variable an der URL, schließlich musst du die Sessiondaten auslesen und mit den Userdaten verknüpfen. Das ist eine Menge Arbeit, die dir phpBB abnimmt.

Was das Skript angeht was du zusammengeschustert hast: Du kannst die Passwörter von phpBB unmöglich auf die angegebene Weise überprüfen. Zur Sicherheit werden die Passwörter als Salted Hash gespeichert, d.h. es ist nahezu unmöglich aus dem gespeicherten Wert auf das Passwort zu schließen. Das Passwort kann nur überprüft werden, indem man die Eingabe ebenfalls auf die gleiche Weise in einen Hash verwandelt und die Ergebnisse vergleicht. Auch hierfür gibt's eine phpBB Funktion. Mal ganz davon abgesehen wirst du auch nicht aus einer Tabellenspalte "passwort" auslesen können, denn die gibt es in der Tabelle phpbb_users nicht.

Die phpBB Initialisierungen gehören außerdem an den Anfang der Datei, denn es kann sein, dass hierbei Cookies gesetzt werden, das funktioniert nur wenn noch keine Daten ausgegeben wurden.

Ansonsten würde ich mir einen Schreibstil angewöhnen, in dem du Quellcode anhand von Klammern vernünftig einrückst, so dass immer ein Klammernpaar auf einer Ebene steht und untergeordnete Ebenen weiter eingerückt sind. Auf die Weise behält man die Übersicht über den Quellcode. Im HTML Code gilt das gleiche für die HTML Tags, das erleichtert die Fehlersuche ungemein (z.B. fehlen in deinem Quellcode ein paar Semikolons und schließende Klammern, wenn ich das richtig sehe).

Mein Tipp daher: Konzentrier dich auf das was du darstellen willst und lass phpBB den ganzen sicherheitsrelevanten Kram übernehmen. Solange du keine Nutzereingaben selbst verarbeitest kannst du eigentlich nicht viele Sicherheitslücken in deinen Quellcode einbauen. Wenn du doch Eingaben verarbeiten musst dann beherzige den Grundsatz "Vertrauen ist gut Kontrolle ist besser". Keine Eingabe darf verwendet werden ohne vorherige Validierung auf Gültigkeit.

Gerade beim Login oder der Prüfung der Sessiongültigkeit kann man viel falsch machen und jeder Fehler ist meist Sicherheitsrelevant, da man sich z.B. Admin- oder Moderatorzugriff erschleichen könnte (selbst wenn du den Fehler auf einer eingebundenen Seite machst), da würde ich als Anfänger daher erst mal die Finger von lassen bis du dich besser auskennst.
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
Antworten

Zurück zu „Coding & Technik“