Cookies Und Session Flashcards
Frage
Antwort
Was ist die PHP-Funktion setcookie()?
Die PHP-Funktion setcookie() wird verwendet, um Cookies auf dem Client zu setzen.
Welche Parameter hat die setcookie()-Funktion?
setcookie() nimmt die Parameter Name, Wert, Verfallsdatum, Pfad, Domain, Verbindungstyp und httponly entgegen.
Welcher Parameter ist bei setcookie() zwingend erforderlich?
Der Name des Cookies ist der einzige Pflicht-Parameter.
Was bedeutet das Verfallsdatum eines Cookies?
Das Verfallsdatum gibt an, wann das Cookie ungültig wird. Es wird als Unix-Timestamp angegeben und oft als aktuelles Datum plus eine gewünschte Anzahl an Sekunden gesetzt.
Welche Bedeutung hat der Pfad-Parameter bei setcookie()?
Der Pfad bestimmt, für welche Teile der Domain das Cookie gültig ist. ‘/’ bedeutet, dass es für die gesamte Domain gilt.
Wann wird der Domain-Parameter bei setcookie() benötigt?
Der Domain-Parameter ist nur relevant, wenn das Cookie für Subdomains zugänglich sein soll.
Was bedeutet der true-Wert beim Verbindungstyp-Parameter in setcookie()?
Ein true-Wert bedeutet, dass das Cookie nur über eine sichere HTTPS-Verbindung ausgelesen werden kann.
Was bewirkt der httponly-Parameter bei setcookie()?
Wenn httponly auf true gesetzt ist, kann das Cookie nur über das HTTP-Protokoll ausgelesen werden und nicht über JavaScript (Schutz vor XSS-Angriffen).
Ab welcher PHP-Version ist der httponly-Parameter verfügbar?
Der httponly-Parameter ist ab PHP 5.2 verfügbar.
Warum sind Cookies sicherheitskritisch?
Cookies können sensible Daten enthalten. Ohne Schutzmaßnahmen wie httponly oder Secure-Flag könnten sie durch XSS oder MITM-Angriffe ausgelesen oder manipuliert werden.
Wie kann PHP selbst gesetzte Cookies auslesen?
PHP kann Cookies über die superglobale Variable $_COOKIE auslesen.
Wie ist die Struktur der $_COOKIE-Variable?
Die $_COOKIE-Variable ist ein assoziatives Array, das die Cookies als Key-Value-Paare enthält.
Wie kann ein einzelnes Cookie ausgelesen werden?
Mit echo $_COOKIE[‘Cookie-Name’]; kann der Wert eines Cookies ausgegeben werden.
Wie setzt man ein Cookie in PHP?
Mit setcookie(‘Geschmack’, ‘Chocolate-Chip’); wird ein Cookie mit dem Namen ‘Geschmack’ und dem Wert ‘Chocolate-Chip’ gesetzt.
Wie kann man alle Cookies auslesen?
Mit einer foreach-Schleife: foreach ($_COOKIE as $key => $value) { echo ‘$key = $value’; }
Warum sollte man prüfen, ob ein Cookie gesetzt ist, bevor man es ausliest?
Wenn das Cookie nicht existiert, führt der direkte Zugriff auf $_COOKIE[‘name’] zu einer Warnung. Die Funktion isset() sollte vorher geprüft werden.
Wie kann man sicherstellen, dass Cookies nach dem Setzen sofort verfügbar sind?
Cookies sind erst in der nächsten Anfrage verfügbar. Man kann alternativ in der gleichen Sitzung eine Session-Variable setzen.
Wie kann PHP verhindern, dass ein Cookie von JavaScript ausgelesen wird?
Mit dem httponly-Parameter in setcookie(), z. B. setcookie(‘name’, ‘wert’, time()+3600, ‘/’, ‘’, false, true);
Wie kann PHP prüfen, ob ein bestimmtes Cookie existiert?
Mit isset($_COOKIE[‘name’]); kann überprüft werden, ob ein Cookie gesetzt ist.
Welche Sicherheitsrisiken bestehen beim Umgang mit Cookies?
Cookies können durch XSS gestohlen oder durch Man-in-the-Middle-Angriffe manipuliert werden. Sicheres Setzen mit Secure- und HttpOnly-Flags ist wichtig.
Was sind Sessions in PHP?
Sessions sind eine Methode, um Zustände (Session-Daten) serverseitig zu speichern.
Wo werden Sessions gespeichert?
Sessions werden auf dem Server gespeichert, im Gegensatz zu Cookies, die im Browser des Clients gespeichert werden.
Wofür wird ein Cookie bei Sessions genutzt?
Das Cookie dient nur zur Identifikation des Clients, speichert aber keine eigentlichen Sitzungsdaten.