ich kann kein unmittelbar bevorstehendes Problem sehen. Wenn es kritisch ist, stellen Sie sicher, dass die Daten über https gesendet werden, so dass Leute, die den Netzwerkverkehr kapern, diese nicht manipulieren können (wie es Stefan Mai vorgeschlagen hat). Ansonsten scheint es in Ordnung zu sein - solange niemand Ihren User Session-Cookies stiehlt.
Decezes-Methode ist nur eine andere Codierung Stil. es erhöht nicht die Sicherheit per se, aber schlampig Programmierer vor Fehlern in Form verhindern kann:
if (checkIfLoggedIn()) {
doPrivateThing();
}
doAnotherPrivateThing(); // bug: the programmer should have
// put that into the if-conditional
ansonsten sicher, dass der Session-ID in einem Cookie gespeichert wird, und nie transparent über die URL übergeben! Ich bin mir nicht sicher über die Standardeinstellungen in der php.ini heutzutage, aber es pflegte, URLs automatisch zu schreiben, wenn Cookies deaktiviert werden. prüfe das besser.
soweit ich mich erinnere, die ini-Option ist session.use_only_cookies
(aktiviert werden soll)
php/session security
Update:
„Denken Sie einfach vielleicht jemand eine Sitzung nur erstellen können sich auf ihre site "
nein, das wird nicht funktionieren. Sitzungen werden auf session_start();
erstellt (oder manchmal automatisch). $_SESSION['id']
hat nichts mit der session_id();
zu tun, es ist nur eine Variable. obwohl es nicht sehr gut benannt ist, weil andere es tatsächlich verwechseln könnten (Wartbarkeit!). besser nennen Sie es $_SESSION['isUserLoggedIn'];
oder so ähnlich.
$ _SESSION ['id'] wird auf dem Server erstellt, es ist nicht einfach zu fälschen –
@haim evgi: es hängt vom Sitzungsspeichersystem ab. Einige Sitzungsspeichersysteme verwenden Cookies zum Speichern von Werten. – Salaryman
@Salaryman so mit Cookies SESSION zu speichern bedeutet, sitzt nicht sicher genug, oder? – jrharshath