2010-12-18 4 views
1

Ich habe ein paar Fragen hier, wenn mir jemand helfen kann. Zunächst einmal bin ich dabei, ein Login-System für Benutzer meiner Anwendung zu erstellen. Ich verwende Shared Hosting (Dreamhost), und ich wundere mich, nachdem der Benutzer sich anmeldet und es erfolgreich ist, wie kann ich überprüfen, ob der Benutzer auf Seiten angemeldet ist? Ich nehme an, dass ich Sitzungsvariablen verwende, aber der Name des Benutzers muss für bestimmte Zwecke gespeichert werden. Ist es sicher, den Namen des Benutzers in einer Sitzungsvariablen zu speichern, und ist es sicher, im Grunde nur zu speichern, wenn der Benutzer angemeldet ist, in eine Sitzungsvariable: ex: $ _SESSION ['logged'] = 1; oder Wasauchimmer. Außerdem habe ich gelesen, dass jeder auf meine Sitzungsdaten zugreifen kann, da ich Shared Hosting betreibe, und sollte das geändert werden? Oder sollte ich nur etwas anderes als Session-Variablen alle zusammen verwenden?Wie können Sitzungsvariablen für die Anmeldung von Personen sicher festgelegt werden?

+2

wäre es sicherer CURL zu verwenden? – mcbeav

+0

sicher, CURL zu verwenden wäre viel sicherer –

+0

Ich kann nicht zu viel Dokumentation auf cURL finden, aber ich denke, habe genug gefunden, um etwas zu schreiben, aber meine Frage ist, nachdem die cURL-Funktion abgeschlossen wurde und alles wird verifiziert, Wie kann ich die Ergebnisse verwenden, als würde ich eine Session-Variable verwenden, wie zum Beispiel if ($ _ SESSION ['logged']) {VIEW WHATEVER INHALT} else {EINGESCHRANKTEN INHALT ANSCHAUEN} – mcbeav

Antwort

3

Die standardmäßige Sitzungsspeicherkonfiguration verwendet wahrscheinlich einen Speicherort, der von allen Benutzern in Ihrem gemeinsam genutzten Hosting geteilt wird. Um dies zu überprüfen, sehen Sie sich die Ausgabe von phpinfo an, insbesondere die session.save_path und session.save_handler. Diese Einstellungen sind in der PHP session configuration documentation dokumentiert.

Ihr Shared Hosting kann Ihre PHP-Prozesse als Ihr Benutzer ausführen, im Gegensatz zu einem Systembenutzer. In diesem Fall können Sie session.save_path in ein Verzeichnis in Ihrem Ausgangsverzeichnis ändern, das Ihnen gehört, und über Berechtigungen verfügen, die verhindern, dass andere Benutzer dieses Verzeichnis lesen (z. B. 700).

Wenn Ihr Shared Hosting als Systembenutzer ausgeführt wird, können Sie diese Dateien im Grunde nicht sicher speichern. Sie können dann eine datenbankgestützte Sitzungsspeicheroption verwenden, die stattdessen mit session_set_save_handler festgelegt wird - obwohl ich mir nicht sicher bin, wie Sie andere davon abhalten können, Ihre Konfigurationseinstellungen zu lesen.

Verwandte Themen