Sessões no Jitterbit App Builder
Todas as interações com o App Builder ocorrem dentro do contexto de uma sessão. Uma sessão é criada quando um usuário visita o App Builder pela primeira vez. Solicitações subsequentes do mesmo usuário estão associadas à sessão.
Se você deseja definir um tempo limite com base na inatividade do usuário por motivos de segurança, isso pode ser realizado definindo um valor de Expiração de Autenticação. Consulte a seção Autenticação + Tempo Limite de Sessão deste artigo para mais informações.
Rastreamento
O App Builder rastreia sessões atribuindo a cada navegador individual um identificador exclusivo. O identificador é armazenado em um cookie em memória. Assim, fechar (todas as instâncias do) navegador efetivamente termina a sessão. O cookie é marcado como HttpOnly. Se o navegador estiver conectado ao servidor usando HTTPS, o cookie também é marcado como Seguro.
Para máxima compatibilidade entre implementações de provedores de dados, o identificador da sessão assume a forma de UUID. Especificamente, é um UUID versão 4, gerado usando um gerador de números aleatórios criptograficamente seguro. UUIDs são compostos por 128 bits. No entanto, 6 bits são reservados para identificar a versão. Isso fornece um total de 122 bits de aleatoriedade, que deve ser suficientemente longo para ser imprevisível.
Desenvolvimento
Os desenvolvedores podem acessar o identificador da sessão atual usando a função session() mvSQL. Isso está disponível independentemente de um evento ser executado em primeiro ou segundo plano. Note, no entanto, que eventos agendados recebem um identificador de sessão transitório. O identificador de sessão transitório não está associado a uma sessão de usuário e muda cada vez que o evento agendado é executado.
Identificadores de sessão podem ser armazenados em colunas do tipo "ID Único".
Autenticação + tempo limite de sessão
As sessões em si não terão tempo limite. No entanto, administradores de segurança podem definir a expiração da autenticação, que fornece controle sobre o tempo limite da sessão. A expiração da autenticação define a duração dos tokens de segurança. Quando um usuário faz login, ele ou ela recebe um token de segurança. O token de segurança em si tem uma duração com uma janela deslizante: o App Builder emitirá um novo token se o usuário interagir com o App Builder mais da metade do tempo de expiração.
Por padrão, o token de segurança tem uma duração de 2 semanas. Para definir a expiração da autenticação:
- Faça login no App Builder como administrador.
- Navegue até o IDE.
- Clique no botão Security Providers.
- No painel Configuration, clique no botão Edit.
-
Forneça um valor para a Authentication Expiry.
- A duração do token de segurança é medida em minutos.
-
Clique no botão Save.
Nota
A duração do token de segurança se aplica apenas a tokens de segurança recém-emitidos.
Como configurar sessões
Por padrão, o App Builder persiste as informações da sessão no banco de dados. Os administradores podem visualizar sessões e forçar o logout de sessões de usuários. O rastreamento de sessões protege contra certas vulnerabilidades, como ataques de repetição de cookies. Este artigo descreve as políticas de armazenamento de sessão configuráveis.
Para configurar sessões
- Navegue até o IDE
- No painel Connect, clique no botão Security Providers
-
As seguintes opções podem ser encontradas no painel Configuration sob Sessions:
-
Session Storage = Determina quando as sessões são armazenadas. Opções:
- Authenticated = Armazena apenas sessões autenticadas.
- Nonpersistent = As sessões não são armazenadas. Corresponde ao comportamento legado.
- Persistent = Armazena todas as sessões anônimas e autenticadas.
- Sign Out = Armazena apenas sessões desconectadas.
-
Anonymous Expiry = Valor numérico (segundos) que determina quanto tempo as sessões anônimas são armazenadas.
- Max Concurrent = Valor numérico (contagem) que especifica o número máximo de sessões simultâneas que um usuário pode ter ao mesmo tempo.
-
Para gerenciar sessões
- Navegue até o IDE
- No painel Runtime, clique no botão User Management
- No painel Users, clique no botão More e escolha Sessions
-
A partir daqui, você pode visualizar sessões existentes, desconectar sessões individuais ou limpar todas as sessões (incluindo a sua).
