php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2008

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 02.09.2008, 10:50  
Neuer Benutzer
 
Registriert seit: 13.08.2008
Beiträge: 4
MauMau befindet sich auf einem aufstrebenden Ast
Standard Login-System ohne Sessions ratsam?

Ich bin gerade dabei, ein Login-System zu basteln, würde das aber gerne ohne Sessions, Cookies etc. verwirklichen, also möglichst rustikal und kompatibel. Ist das ratsam? Ein simples Login-System (ohne Sessions) stelle ich mir so vor:

Wenn ein User sich einloggt, werden seine IP und die Einlogzeit gespeichert. 15 Minuten nach seiner letzten Aktion wird der User automatisch ausgeloggt. Damit niemand anderer sich während dieser Zeit als dieser User ausgeben kann, wird bei jeder Aktion des Users überprüft, ob die IP gewechselt hat (evtl. auch der User Agent). Ganz simpel eben.

Als zusätzliche Massnahme könnte man beim Einloggen eines Users eine persönliche Zufallszahl generieren, in der Datenbank ablegen und diese Zufallszahl in seinen Formularen als hidden field mitführen, quasi als "pseudo session id" eben.

Die Frage ist, wie kann man so ein System exploiten? Woran müsste man mindestens denken, um ein Mindestmass an Sicherheit zu gewährleisten? Ich möchte halt möglichst auf Sessions verzichten.
MauMau ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 02.09.2008, 11:01  
Moderator
 
Benutzerbild von agrajag
 
Registriert seit: 02.10.2006
Beiträge: 3.820
PHP-Kenntnisse:
Fortgeschritten
agrajag wird schon bald berühmt werdenagrajag wird schon bald berühmt werden
Standard

Die Frage ist: Warum möchtest du auf die tausendfach erprobten (PHP-eigenen) Sessions verzichten? (Und dann letztlich mit deiner Zufallszahl + Hiddenfield selbst einen Session-Mechanismus implementieren?)

Deine Idee das ganze an der IP festzumachen ist nicht gut. Eine IP ist nicht eindeutig einer Person / einem User zuordnenbar.
__________________
Today you...Tomorrow me.
agrajag ist offline  
Alt 02.09.2008, 11:01  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Du verzichtest nicht auf Sessions, denn das ist nur ein Name für die Zuordnung von x Requests zu einem Benutzer. Ich lese aus dem Text nur raus, dass Du auf Cookies verzichten willst.
Wenn Du nur die IP verwendest, können alle, die sich einen Router/NAT teilen, "mitspielen". Hier, wo ich gerade sitze, wären das dann gerade 22 Personen.
Die SessionId per url oder input/hidden zu übertragen, beherrscht das Session-Modul von PHP bereits von Hause aus, siehe: PHP: Runtime Configuration - Manual
Wenn jemand einen url kopiert und weitergibt (irc,icq,skype usw), wird auch die Session mit übergeben - aber das kannst Du eventuell noch mit der Überprüfung der IP Adresse abfangen. Du kannst aber den HTML Code nicht vor anderen Javascripten im selben Fenster schützen (meshups). Bei Cookies geht das über das HttpOnly-flag.
David ist offline  
Alt 02.09.2008, 11:50  
Neuer Benutzer
 
Registriert seit: 13.08.2008
Beiträge: 4
MauMau befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von David Beitrag anzeigen
Wenn Du nur die IP verwendest, können alle, die sich einen Router/NAT teilen, "mitspielen". Hier, wo ich gerade sitze, wären das dann gerade 22 Personen.
Deshalb würde ich dem User ja eine persönliche "Zufallszahl" generieren, die er dann von Formular zu Formular trägt. Das würde es schon mal nur auf den benutzten Browser einschränken und man würde den User sowieso daran erinnern, sich nach dem Benutzen auszuloggen.

Ich möchte auf Sessions aus mehreren Gründen verzichten, zum einen, weil ich es als Einschränkung empfinde, das Session-Commands aufgerufen werden müssen, bevor irgend etwas an den Browser geschickt wird. Ausserdem möchte ich gänzlich auf Cookies verzichten und auch so weit wie möglich unabhängig von einer speziellen Serverkonfiguration sein, falls das Projekt hin und wieder mal umziehen müsste.
MauMau ist offline  
Alt 02.09.2008, 12:09  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Wie gesagt: Das Session-Modul von PHP beherrscht das Übertragen der Session Id per input/hidden. Siehe PHP: Runtime Configuration - Manual und PHP: Runtime Configuration - Manual

Die der Session zugehörigen Daten wirst Du in irgendeiner Form laden und speichern müssen. Also ist der Aufruf von session_start() wirklich kein Mehraufwand - es sei denn Du kannst außergewöhnlich Umstände geltend machen.
Wenn Du es unbedingt selbst programmieren willst, tu es. Viel Spaß dabei.
David ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Login System matii PHP Tipps 2008 6 16.04.2008 11:35
Login System Probleme ! 7Style PHP Tipps 2008 2 07.01.2008 13:55
Problem mit meinem Login System DJ Nuno PHP Tipps 2008 9 16.10.2007 16:44
oop login system spoi Trash 4 16.10.2006 23:24
Etwas komplexerer Login --> Keine Angst, Suche benutzt dethlef14 PHP Tipps 2006 7 02.10.2006 00:35
Login System umstädnlich stahlguru Trash 1 17.07.2006 19:31
Sicheres Login System? PHP Tipps 2006 11 14.03.2006 15:05
phpBB Loginscript in eigenes Login Script einbinden 2wuck PHP Tipps 2007 4 19.12.2005 23:10
Problem mit Login Bereich (Sessions, MySQL) nicobischof PHP Tipps 2005-2 6 19.10.2005 09:54
Login System für die eigene HP? Datenbanken 1 05.10.2005 19:48
Module im Eingenbau die 2te (SESSIONS and Security) ChewyF5 PHP-Fortgeschrittene 8 05.08.2005 11:16
Login, LogIn, Anmelden, Einloggen -> ??? Off-Topic Diskussionen 20 14.07.2005 11:01
parse error Login mit Sessions PHP Tipps 2005 12 08.03.2005 14:13
Login und probleme mit Sessions PHP Tipps 2005 8 09.01.2005 17:48
keine Sessions beim Login PHP Tipps 2004 6 06.06.2004 22:37

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php login ohne session, login ohne session, php login ohne sessions, login script ohne session, login-system mit sessions, login php ohne session, login system ohne session, php login script ohne session, php login system ohne session, login system ohne sessions, session login system, login script ohne sessions, php login system, php5 login system mit session, php login modul mit session, ein loginsystem sicher programmieren mit php, php benutzeranmeldung ohne session, login system mit session, login ohne sessions, http://www.php.de/php-tipps-2008/47119-login-system-ohne-sessions-ratsam.html

Alle Zeitangaben in WEZ +1. Es ist jetzt 13:13 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum