Date de bazăWeb și mobil

Gestionarea sesiunilor

Stocați sesiuni cu expirare automată și găsiți-le sau revocați-le după utilizator, rol sau dispozitiv, fără să construiți un index.

căutare pentru a găsi sesiunile unui utilizator
1
indexuri secundare
0
expirare, etichetele incluse
Auto
Pasul 1 din 5
Autentificați-vă pe trei dispozitive

Fiecare dispozitiv primește propria sesiune, cu expirare la 30 de minute.

Sesiune de exempluplaying
# Autentificați-vă pe trei dispozitive
hotkv> SET session:9f2c "{\"user\":42}" EX 1800
OK

O demonstrație animată cu comenzi HotKV reale și răspunsuri de exemplu. Faceți clic pe orice pas pentru a sări la el. Comenzile și răspunsurile rămân în engleză, exact așa cum le tastați și le vedeți în HotKV.

Problema

Sesiunile sunt mici, fierbinți și de scurtă durată, ceea ce se potrivește unui store în memorie. Partea grea vine mai târziu, când suportul trebuie să deconecteze un utilizator peste tot sau securitatea trebuie să încheie fiecare sesiune a unui rol sau a unui dispozitiv. Un simplu store cheie-valoare poate găsi o sesiune doar după id-ul ei.

Cum o rezolvă HotKV

HotKV stochează fiecare sesiune ca pe o cheie cu expirare și vă lasă să o etichetați cu utilizatorul, rolul sau dispozitivul căruia îi aparține. Etichetele fac parte din motor și dispar odată cu cheia, deci puteți lista sau revoca toate sesiunile potrivite dintr-o singură căutare, în loc să întrețineți un set paralel de chei.

Pas cu pas

Ce se întâmplă, comandă cu comandă

  1. 01

    Autentificați-vă pe trei dispozitive

    Fiecare dispozitiv primește propria sesiune, cu expirare la 30 de minute.

    SET session:9f2c "{\"user\":42}" EX 1800
  2. 02

    Etichetați fiecare sesiune

    Utilizatorul, rolul și dispozitivul sunt atașate imediat după crearea sesiunii.

    TAG.SET session:9f2c user:42 role:admin device:ios
  3. 03

    Rămâneți conectat cât sunteți activ

    Fiecare cerere reîmprospătează expirarea, ceea ce dă un timeout glisant.

    EXPIRE session:9f2c 1800
  4. 04

    Găsiți fiecare sesiune a utilizatorului 42

    Un laptop furat este raportat. O singură căutare returnează toate sesiunile utilizatorului.

    TAG.MEMBERS user:42
  5. 05

    Deconectați de peste tot

    Ștergeți cheile care s-au întors. Etichetele lor pleacă odată cu ele, iar fiecare dispozitiv este deconectat.

    DEL session:9f2c session:71aa session:0c8e
Unde se potrivește

Scenarii din lumea reală

Aplicații bancare și fintech

Echipele de securitate încheie toate sesiunile unui cont compromis, sau ale fiecărui dispozitiv cu o versiune depășită a aplicației, printr-o singură acțiune.

Produse SaaS

Când rolul unui admin este eliminat, fiecare sesiune etichetată cu acel rol este revocată deodată.

Servicii de streaming

Numărați și limitați sesiunile simultane pe cont din răspunsul TAG.MEMBERS pentru eticheta utilizatorului.

Integrat

Ce primiți

Expirare automată

Sesiunile dispar singure când TTL-ul se termină, iar etichetele lor pleacă odată cu ele.

EXEXPIRE

Căutare fără index

Găsiți sesiuni după orice etichetă sau după mai multe etichete deodată.

TAG.MEMBERSTAG.INTER

Verificați rapid etichetele

TAG.COUNT și TAG.EXISTS vă spun ce poartă o cheie.

TAG.COUNTTAG.EXISTS

Rapid la valuri de autentificări

Citirile și scrierile de sesiuni rulează pe thread-uri paralele.

Întrebări frecvente

Cum deconectez un utilizator de pe un singur dispozitiv?

Folosiți TAG.INTER cu eticheta utilizatorului și eticheta dispozitivului, apoi ștergeți cheile returnate.

Ce se întâmplă cu o etichetă când expiră sesiunea ei?

Etichetele unei chei pleacă odată cu cheia, inclusiv la expirare. Etichetele nu fac parte din snapshoturi, deci aplicați-le din nou dacă serverul repornește dintr-un snapshot.

Pot limita sesiunile simultane pe cont?

Da. TAG.MEMBERS pe eticheta utilizatorului listează sesiunile, deci le puteți număra și puteți refuza sau încheia cea mai veche la autentificare.

Cazuri de utilizare înrudite

Încercați pe propria sarcină de lucru

HotKV vorbește protocolul Redis, așa că puteți îndrepta spre el un client existent și rula aceleași comenzi.