Pular para o conteúdo principal

Configuração de sessão

A configuração de sessão define controles em nível de locatário para quanto tempo as sessões de login do Logto permanecem ativas e como as políticas de acesso relacionadas à sessão são aplicadas.

Esta página aborda:

  • Configuração de TTL da sessão
  • Máximo de dispositivos autenticados simultâneos por aplicativo

Configuração de TTL da sessão

O TTL da sessão determina o tempo de vida máximo da sessão de login OIDC do Logto. É uma configuração em nível de locatário: uma vez configurada, aplica-se a todos os aplicativos e fluxos de autenticação nesse locatário.

Comportamento padrão

  • Por padrão, o TTL da sessão é de 14 dias.
  • Se nenhum TTL personalizado for configurado, o Logto continuará usando esse valor padrão.

Configurar via Logto Console

Você pode configurar o TTL da sessão no Console em:

Console > Locatário > Configurações > Configurações OIDC

Use Tempo máximo de vida da sessão para atualizar o valor.

nota:

O Console utiliza dias para entrada e exibição, enquanto a configuração subjacente da sessão OIDC / API utiliza segundos.

Configurar via Management API

Use estes endpoints para ler e atualizar a configuração da sessão OIDC:

  • GET /api/configs/oidc/session
  • PATCH /api/configs/oidc/session

Exemplo (ttl em segundos):

curl https://[tenant-id].logto.app/api/configs/oidc/session \
-H 'authorization: Bearer <management_api_access_token>'
curl -X PATCH https://[tenant-id].logto.app/api/configs/oidc/session \
-H 'authorization: Bearer <management_api_access_token>' \
-H 'content-type: application/json' \
--data-raw '{"ttl":1209600}'

1209600 segundos = 14 dias.

nota:

Para implantações OSS, reinicie a instância do serviço após alterar o logto-config para que o servidor possa captar as configurações OIDC mais recentes.

Para aplicar atualizações de configuração OIDC automaticamente sem reiniciar o serviço, habilite o cache central redis.

Máximo de dispositivos autenticados simultâneos por aplicativo

O máximo de dispositivos autenticados simultâneos por aplicativo é um controle em nível de aplicativo que limita quantas concessões ativas cada usuário pode manter para um aplicativo específico.

Isso é configurado através do campo maxAllowedGrants em customClientMetadata da aplicação. Saiba mais em Estrutura de dados da aplicação.

Comportamento

Quando maxAllowedGrants está definido, o Logto avalia as concessões ativas do usuário para o aplicativo atual a cada autorização bem-sucedida. Se o número de concessões ativas exceder o limite, o Logto revoga primeiro as concessões mais antigas.

Se maxAllowedGrants não estiver definido, não há limite de simultaneidade.

Configurar via Logto Console

Você pode configurar isso na página de detalhes de cada aplicativo em:

Console > Aplicativos > Detalhes do aplicativo > Limite de dispositivos simultâneos

Defina o número máximo de concessões ativas simultâneas (dispositivos) por usuário para o aplicativo atual.

nota:

Esta configuração não é suportada para aplicativos máquina para máquina, aplicativos protegidos e aplicativos SAML.

Monitorar remoções com um webhook

Quando o Logto revoga as concessões mais antigas de um usuário para aplicar o maxAllowedGrants, ele aciona o evento de webhook Grant.LimitExceeded evento de webhook, para que você possa reagir a dispositivos sendo desconectados em vez de descobrir isso por tickets de suporte.

O payload identifica o usuário e o aplicativo, o limite em vigor, quantas concessões estavam ativas antes da remoção e os IDs das concessões que foram revogadas. Veja Payload Grant.LimitExceeded para a estrutura completa.

Casos de uso comuns:

  • Notificar o usuário de que ele foi desconectado em outro dispositivo, e de onde.
  • Alimentar taxas de remoção de dispositivos em sua análise para saber se o limite configurado está muito baixo.
  • Sinalizar padrões incomuns de remoção para um único usuário como possível compartilhamento de credenciais ou sinal de tomada de conta.

Navegue até Console > Webhooks para se inscrever, ou crie o hook via Management API. Veja Webhooks para detalhes de configuração.

Sessões Gerenciar sessões de usuário

Gerenciar aplicativos autorizados do usuário (concessões)

Estrutura de dados da aplicação: maxAllowedGrants

Eventos de webhooks: eventos de exceção

Interagir com Management API