Sessionshantering

Sessionshantering är en bästa praxis för att förhindra denial of service (DoS) för API-säkerhet. En session representerar den tid en besökare tillbringar på din webbplats och är inte relaterad till hur länge administratörsanvändare eller -kunder är inloggade på sina konton.

En session är en sekvens av nätverks-HTTP-begäran och svarstransaktioner som är associerade med samma användare. Det är ett sätt att associera en klient (Admin) med deras data när de ansluter till servern. Sessioner används för att skapa variabler, t.ex. åtkomsträttigheter och lokaliseringsinställningar, som gäller för varje interaktion en användare har med ett webbprogram under sessionen.

Sessionsstorlek

Använd följande konfigurationsinställningar för att begränsa den maximala sessionsstorleken för administratörer och butiksbesökare:

  • Max Session Size in Admin - Begränsa den maximala sessionsstorleken i byte. Använd 0 för att inaktivera.
  • Max Session Size in Storefront - Begränsa den maximala sessionsstorleken i byte. Använd 0 för att inaktivera.
TIP
Båda inställningarna mäts i byte och är som standard 256000 byte (eller 256 kB).

Så här konfigurerar du maximal sessionsstorlek:

  1. Gå till Stores > Settings>Configuration ​på sidofältet_ Admin _.

  2. Expandera Advanced i den vänstra panelen och välj System.

  3. Expandera Expansionsväljaren i avsnittet Security för att komma åt sessionsinställningarna.

    Sessionsinställningar {width="600" modal="regular"}

  4. Ange nya sessionsstorlekar i byte.

    note warning
    WARNING
    Om värdet är för lågt kan det orsaka problem. Om du anger något av alternativen under standardvärdet 256000 byte visas ett varningsmeddelande. Om du klickar på No ändras värdet till 256000.
  5. Klicka på Save Config.

Administratörssessioner

Om du överskrider den maximala sessionsstorleken visas ett felmeddelande och systemet loggar begränsningar för sessionsstorlek till katalogen var/log.

Om du förlorar åtkomsten till administratören efter att du har angett sessionsstorleken för låg kan du återställa konfigurationen med CLI:

bin/magento config:set system/security/max_session_size_admin 256000

Sessioner i butiker

Om du överskrider den maximala sessionsstorleken visas inget fel, men systemet loggar begränsningar för sessionsstorlek till katalogen var/log.

Sessionsvalidering

Med Adobe Commerce och Magento Open Source kan du validera sessionsvariabler som en skyddsåtgärd mot eventuella sessionsfixeringsattacker eller försök att förgifta eller kapa användarsessioner. Inställningarna för sessionsvalidering avgör hur sessionsvariabler valideras under varje butiksbesök och om sessions-ID inkluderas i butikens URL.

Mer teknisk information finns i Använd Redis för sessionslagring i Konfigurationshandboken.

Allmän konfiguration - Webbsessionsvalidering

Valideringen kontrollerar att besökarna är de som de säger att de är genom att jämföra värdet i valideringsvariablerna med sessionsdata som lagras i $_SESSION-data för användaren. Valideringen misslyckas om informationen inte överförs som förväntat och motsvarande variabel är tom. Beroende på inställningarna för sessionsvalidering avslutas klientsessionen omedelbart om en sessionsvariabel misslyckas i valideringsprocessen.

Om du aktiverar alla valideringsvariabler kan du förhindra attacker, men det kan även påverka serverns prestanda. Som standard är all sessionsvariabelvalidering inaktiverad. Vi rekommenderar att du experimenterar med inställningarna för att hitta den bästa kombinationen för din Adobe Commerce- eller Magento Open Source-installation. Att aktivera alla valideringsvariabler kan visa sig vara onödigt begränsande och kan förhindra åtkomst till kunder som har internetanslutningar som passerar genom en proxyserver eller som kommer bakom en brandvägg. Mer information om sessionsvariabler och hur de används finns i systemadministrationsdokumentationen för ditt Linux®-system.

Så här konfigurerar du sessionsvalideringen:

  1. Gå till Stores > Settings>Configuration ​på sidofältet_ Admin _.

  2. Expandera General ​i den vänstra panelen och välj Web.

  3. Expandera Expansionsväljaren i avsnittet Session Validation Settings.

  4. Ange vart och ett av konfigurationsalternativen:

    • Validate REMOTE_ADDR - Ange som Yes för att verifiera att IP-adressen för en begäran matchar det som lagras i variabeln $_SESSION.

    • Validate HTTP_VIA - Ange som Yes för att verifiera att proxyadressen för en inkommande begäran matchar det som lagras i variabeln $_SESSION.

    • Validate HTTP_X_FORWARDED_FOR - Ange som Yes för att verifiera att den vidarebefordrade adressen för en begäran matchar det som lagras i variabeln $_SESSION.

    • Validate HTTP_USER_AGENT - Ange som Yes för att verifiera att webbläsaren eller enheten som används för att komma åt butiken under en session matchar det som lagras i variabeln $_SESSION.

  5. Klicka på Save Config när du är klar.

Administratörssessionens livstid

Som en säkerhetsåtgärd är Admin inställd på timeout efter 900 sekunders (15 minuter) tangentbordsinaktivitet. Du kan justera sessionens livstid så att den passar din arbetsstil.

Så här justerar du administratörssessionens livstid:

  1. Gå till Stores > Settings>Configuration ​på sidofältet_ Admin _.

  2. Bläddra nedåt och expandera Advanced på den vänstra panelen.

  3. Klicka på Admin.

  4. Expandera Expansionsväljaren i avsnittet Security.

  5. För Admin Session Lifetime (seconds) anger du antalet sekunder som en session förblir aktiv innan den timeout-inträffar.

    Avancerad konfiguration - Säkerhetsinställningar för administratör {width="600" modal="regular"}

  6. Klicka på Save Config när du är klar.## Administratörssessionslivstid

Som en säkerhetsåtgärd är Admin inställd på timeout efter 900 sekunders (15 minuter) tangentbordsinaktivitet. Du kan justera sessionens livstid så att den passar din arbetsstil.

Så här justerar du administratörssessionens livstid:

  1. Gå till Stores > Settings>Configuration ​på sidofältet_ Admin _.

  2. Bläddra nedåt och expandera Advanced på den vänstra panelen.

  3. Klicka på Admin.

  4. Expandera Expansionsväljaren i avsnittet Säkerhet.

  5. För Admin Session Lifetime (seconds) anger du antalet sekunder som en session förblir aktiv innan den timeout-inträffar.

    Avancerad konfiguration - Säkerhetsinställningar för administratör {width="600" modal="regular"}

  6. Klicka på Save Config när du är klar.

recommendation-more-help
d3c62084-5181-43fb-bba6-1feb2fcc3ec1