Apps bancários e de fintech
As equipes de segurança encerram todas as sessões de uma conta comprometida, ou de todos os dispositivos em uma versão desatualizada do app, com uma ação.
Armazene sessões com expiração automática e encontre ou revogue sessões por usuário, função ou dispositivo sem construir um índice.
Cada dispositivo recebe a própria sessão, com expiração de 30 minutos.
Uma demonstração animada com comandos reais do HotKV e respostas de exemplo. Clique em qualquer etapa para ir direto a ela. Os comandos e as respostas ficam em inglês, exatamente como você os digita e vê no HotKV.
As sessões são pequenas, muito acessadas e de vida curta, o que combina com um armazenamento em memória. A parte difícil vem depois, quando o suporte precisa desconectar um usuário de todos os lugares, ou a segurança precisa encerrar todas as sessões de uma função ou de um dispositivo. Um armazenamento chave-valor simples só consegue encontrar uma sessão pelo id.
O HotKV armazena cada sessão como uma chave com expiração e permite marcá-la com o usuário, a função ou o dispositivo a que ela pertence. As tags fazem parte do motor e somem junto com a chave, então você pode listar ou revogar todas as sessões correspondentes com uma consulta, em vez de manter um conjunto paralelo de chaves.
Cada dispositivo recebe a própria sessão, com expiração de 30 minutos.
SET session:9f2c "{\"user\":42}" EX 1800Usuário, função e dispositivo são anexados logo depois que a sessão é criada.
TAG.SET session:9f2c user:42 role:admin device:iosCada requisição renova a expiração, o que dá um timeout deslizante.
EXPIRE session:9f2c 1800Um notebook roubado é informado. Uma consulta retorna todas as sessões do usuário.
TAG.MEMBERS user:42Apague as chaves que voltaram. As tags vão junto, e todos os dispositivos são desconectados.
DEL session:9f2c session:71aa session:0c8eAs equipes de segurança encerram todas as sessões de uma conta comprometida, ou de todos os dispositivos em uma versão desatualizada do app, com uma ação.
Quando a função de um admin é removida, todas as sessões marcadas com essa função são revogadas de uma vez.
Conte e limite as sessões simultâneas por conta a partir da resposta de TAG.MEMBERS para a tag do usuário.
As sessões desaparecem sozinhas quando o TTL acaba, e as tags vão junto.
EXEXPIREEncontre sessões por qualquer tag, ou por várias tags ao mesmo tempo.
TAG.MEMBERSTAG.INTERTAG.COUNT e TAG.EXISTS dizem o que uma chave carrega.
TAG.COUNTTAG.EXISTSAs leituras e escritas de sessões rodam em threads paralelas.
Use TAG.INTER com a tag do usuário e a tag do dispositivo, depois apague as chaves que ele retornar.
As tags de uma chave vão embora junto com ela, inclusive na expiração. As tags não fazem parte dos snapshots, então aplique-as de novo se o servidor reiniciar a partir de um snapshot.
Sim. TAG.MEMBERS na tag do usuário lista as sessões, então você pode contá-las e recusar o login ou encerrar a mais antiga.
O HotKV fala o protocolo Redis, então você pode apontar um cliente existente para ele e executar estes mesmos comandos.