"We are back" « oc.at

solvd: PHP Passwortdatei

Moesli 24.09.2004 - 11:13 550 4
Posts

Moesli

goes Linux
Avatar
Registered: Sep 2002
Location: Salzburg
Posts: 1328
Hab mir einen Script geschrieben der mir einen user+passort(crypt) in ein file schreibt, das file
sieht so aus:

USER1:PASSWORT(crytischverschluesselt)
USER2:PASSWORT(crytischverschluesselt)
..
.



jetzt reichen meine PHP Kenntnisse nicht aus,.. wie kann
ich jetzt einen User aus der Datei rausloeschen bzw. das Passwort updaten ??
Bearbeitet von Moesli am 26.09.2004, 10:23

COLOSSUS

Administrator
GNUltra
Avatar
Registered: Dec 2000
Location: ~
Posts: 12213
Wenn du nicht zu viele User verwalten willst/musst, schreib das Skript so, dass es alle User in den Speicher laedt, also alles aus der "flatfile-db", das zurückgegebene Array wie gewuenscht bearbeitet, und dann die Komplette File neu schreibt. Das spart dir viel Herumgeschisse mit Zeilenadressierung, und sollte bei weniger als 1000 Usern auch performancemaeszig mehr oder minder wurscht sein ;)

Ich bin mir btw nicht ganz sicher, was crypt() macht, fuer's handbook bin ich zu faul. Als Hashalgorithmus empfiehlt sich dennoch sha1, dazu sollte es auch eine PHP-Funktion geben. Nur um der Sicherheit willen. :)

hth,
- colo

Moesli

goes Linux
Avatar
Registered: Sep 2002
Location: Salzburg
Posts: 1328
Zitat von COLOSSUS
Wenn du nicht zu viele User verwalten willst/musst, schreib das Skript so, dass es alle User in den Speicher laedt, also alles aus der "flatfile-db", das zurückgegebene Array wie gewuenscht bearbeitet, und dann die Komplette File neu schreibt. Das spart dir viel Herumgeschisse mit Zeilenadressierung, und sollte bei weniger als 1000 Usern auch performancemaeszig mehr oder minder wurscht sein ;)

Ich bin mir btw nicht ganz sicher, was crypt() macht, fuer's handbook bin ich zu faul. Als Hashalgorithmus empfiehlt sich dennoch sha1, dazu sollte es auch eine PHP-Funktion geben. Nur um der Sicherheit willen. :)

hth,
- colo

Nette Idee,.. thx,..

atrox

in fairy dust... I trust!
Avatar
Registered: Sep 2002
Location: HTTP/1.1 404
Posts: 2782
problematisch wird das nur, wenn zwei user gleichzeitig ihr passwort wechseln:

A: liest passwortdatei
B: liest passwortdatei
A: verändert passwort für user a (b bleibt gleich)
B: verändert passwort für user b (a bleibt gleich)
A: schreibt passwortdatei zurück (mit neuem a, aber altem b)
B: schreibt passwortdatei zurück (mit neuem b, aber altem a)

fazit: b behält sein neues passwort, a verliert seines.

darum: file-locking; zb mit flock()

Moesli

goes Linux
Avatar
Registered: Sep 2002
Location: Salzburg
Posts: 1328
hmm ist mir auch schon durch den kopf gegangen,.. ich glaub ich werde die Usernamen und Passwörter zuerst in eine Datenbankschreiben, und von dort aus das file aktuell halten ist mit sicherheit einfacher,...
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz