Sitzungsverwaltung
Sitzungsverwaltung ist eine Best Practice für die Verwendung von DoS (Anti-Denial of Service) für die API-Sicherheit. Eine Sitzung gibt die Zeit an, die eine Besucherin oder ein Besucher auf Ihrer Website verbringt, und hängt nicht damit zusammen, wie lange Admin-Benutzende oder -Kunden bei ihren Konten angemeldet sind.
Eine Sitzung ist eine Sequenz von HTTP-Anfrage- und -Antworttransaktionen im Netzwerk, die demselben Benutzer zugeordnet sind. Es ist eine Möglichkeit, einen Client (Administrator) mit seinen Daten zu verknüpfen, wenn er auf den Server zugreift. Sitzungen werden verwendet, um Variablen wie Zugriffsrechte und Lokalisierungseinstellungen festzulegen, die für jede Interaktion eines Benutzers mit einer Web-Anwendung während der Sitzung gelten.
Sitzungsgröße
Verwenden Sie die folgenden Konfigurationseinstellungen, um die maximale Sitzungsgröße für Admin-Benutzer und Storefront-Besucher zu begrenzen:
- Max Session Size in Admin - Begrenzt die maximale Sitzungsgröße in Byte.
0
zum Deaktivieren verwenden. - Max Session Size in Storefront - Begrenzt die maximale Sitzungsgröße in Byte.
0
zum Deaktivieren verwenden.
256000
Byte (oder 256 KB) eingestellt.So konfigurieren Sie die maximale Sitzungsgröße:
-
Navigieren Sie in Admin-Seitenleiste zu Stores > Settings>Configuration.
-
Erweitern Sie im linken Bereich Advanced und wählen Sie System.
-
Erweitern Sie
-
Geben Sie neue Sitzungsgrößen in Byte ein.
note warning WARNING Ein zu niedriger Wert kann Probleme verursachen. Wenn Sie eine der Optionen unter dem Standardwert von 256000 Byte festlegen, wird eine Warnmeldung angezeigt. Wenn Sie auf No klicken, ändert das System den Wert in 256000
. -
Klicken Sie auf Save Config.
Admin-Sitzungen
Wenn Sie die maximale Sitzungsgröße überschreiten, wird eine Fehlermeldung angezeigt und das System protokolliert die Sitzungsgrößenbeschränkung im var/log
.
Wenn Sie den Zugriff auf den Administrator verlieren, nachdem Sie die Sitzungsgröße auf einen zu niedrigen Wert festgelegt haben, verwenden Sie die CLI, um die Konfiguration zurückzusetzen:
bin/magento config:set system/security/max_session_size_admin 256000
Storefront-Sitzungen
Wenn Sie die maximale Sitzungsgröße überschreiten, wird kein Fehler angezeigt, aber das System protokolliert die Sitzungsgrößenbeschränkung im var/log
.
Sitzungsvalidierung
Adobe Commerce und Magento Open Source ermöglichen es Ihnen, Sitzungsvariablen zu validieren, um vor möglichen Sitzungsfixierungsangriffen oder Versuchen zu schützen, Benutzersitzungen zu vergiften oder zu entführen. Die Sitzungsvalidierungseinstellungen bestimmen, wie Sitzungsvariablen bei jedem Store-Besuch validiert werden und ob die Sitzungs-ID in der URL des Stores enthalten ist.
Technische Informationen finden Sie unter Verwenden von Redis fürSitzungsspeicherung) im Konfigurationshandbuch.
Die Validierung prüft, ob Besucher sich selbst ausgeben, indem der Wert in den Validierungsvariablen mit den Sitzungsdaten verglichen wird, die in $_SESSION
Daten für den Benutzer gespeichert sind. Die Validierung schlägt fehl, wenn die Informationen nicht erwartungsgemäß übermittelt werden und die entsprechende Variable leer ist. Abhängig von den Einstellungen für die Sitzungsvalidierung wird die Clientsitzung sofort beendet, wenn der Validierungsprozess einer Sitzungsvariablen fehlschlägt.
Die Aktivierung aller Validierungsvariablen kann Angriffe verhindern, aber auch die Leistung des Servers beeinträchtigen. Standardmäßig ist die Validierung aller Sitzungsvariablen deaktiviert. Es wird empfohlen, mit den Einstellungen zu experimentieren, um die beste Kombination für Ihre Adobe Commerce- oder Magento Open Source-Installation zu finden. Die Aktivierung aller Validierungsvariablen kann sich als unangemessen restriktiv erweisen und den Zugriff auf Kunden mit Internetverbindungen, die einen Proxy-Server durchlaufen oder hinter einer Firewall stammen, verhindern. Weitere Informationen zu Sitzungsvariablen und deren Verwendung finden Sie in der Systemadministrationsdokumentation für Ihr Linux®-System.
So konfigurieren Sie die Sitzungsvalidierung:
-
Navigieren Sie in Admin-Seitenleiste zu Stores > Settings>Configuration.
-
Erweitern Sie im linken Bereich General und wählen Sie Web.
-
Erweitern Sie
-
Legen Sie jede der Konfigurationsoptionen fest:
-
Validate REMOTE_ADDR - Mit
Yes
überprüfen Sie, ob die IP-Adresse einer Anfrage mit dem übereinstimmt, was in der$_SESSION
-Variablen gespeichert ist. -
Validate HTTP_VIA - Mit
Yes
stellen Sie sicher, dass die Proxy-Adresse einer eingehenden Anfrage mit der in der$_SESSION
gespeicherten übereinstimmt. -
Validate HTTP_X_FORWARDED_FOR - Wird auf
Yes
gesetzt, um zu überprüfen, ob die weitergeleitete Adresse einer Anfrage mit dem übereinstimmt, was in der$_SESSION
-Variablen gespeichert ist. -
Validate HTTP_USER_AGENT - Legen Sie hierfür
Yes
fest, um sicherzustellen, dass der Browser oder das Gerät, der/das während einer Sitzung auf den Store zugreift, mit dem übereinstimmt, was in der$_SESSION
-Variablen gespeichert ist.
-
-
Klicken Sie abschließend auf Save Config.
Lebensdauer der Admin-Sitzung
Als Sicherheitsmaßnahme ist Admin zunächst auf eine Zeitüberschreitung nach 900 Sekunden (15 Minuten) Tastaturinaktivität eingestellt. Sie können die Lebensdauer der Sitzung an Ihren Arbeitsstil anpassen.
So passen Sie die Lebensdauer der Admin-Sitzung an:
-
Navigieren Sie in Admin-Seitenleiste zu Stores > Settings>Configuration.
-
Scrollen Sie nach unten und erweitern Sie Advanced im linken Seitenbereich.
-
Klicken Sie auf Admin.
-
Erweitern Sie
-
Geben Sie Admin Session Lifetime (seconds) die Anzahl der Sekunden ein, nach denen eine Sitzung aktiv bleibt, bevor eine Zeitüberschreitung eintritt.
-
Klicken Sie abschließend auf Save Config.