Páginas filhas
  • Inactive TimeOut - Desconexão de usuários inativos

Configuração para desconectar usuários inativos no sistema

Produto:

Microsiga Protheus

Versões:

11 e 12

Passo a passo:

A configuração de Inactive TimeOut no Protheus serve para desconectar usuários que estejam ociosos no sistema. A configuração pode ser feita em 3 lugares: No arquivo appserver.ini, que vale para todo o ambiente; no usuário; no grupo.


Configuração no arquivo appserver.ini
- Abra o arquivo appserver.ini do Servidor de Aplicação
- Na seção do ambiente, insira a linha InactiveTimeOut=###, onde ### é um número em segundos para que os usuários ociosos sejam desconectados

[P12]
SourcePath=C:\TOTVS 12\Microsiga\protheus\apo\
RootPath=C:\TOTVS 12\Microsiga\protheus_data
CtreeRootPath=C:\TOTVS 12\Microsiga\protheus_data
StartPath=\system\
x2_path=
RpoDb=top
RpoLanguage=Portuguese
RpoVersion=120
LocalFiles=CTREE
Trace=0
localdbextension=.dtc
HELPSERVER=localhost:8079
FWTraceLOG=1
TOPMEMOMEGA=1
InactiveTimeOut=300


Configuração no Usuário
- Abra o Configurador > Usuário > Senhas > Usuários
- Clique sobre o Usuário e clique em Alterar
- Na aba Restrições de acesso, em Timeout da estação (em minutos), insira a quantidade de minutos para a desconexão do usuário, e clique em Confirmar



Configuração no Grupo
- Abra o Configurador > Usuário > Senhas > Grupos
- Clique sobre o Grupo e clique em Alterar
- Na aba Grupo, Seção Parâmetros, em Timeout da estação (em minutos), insira a quantidade de minutos para a desconexão do usuário, e clique em Confirmar


Quando a configuração é feita em mais de um lugar, existe uma regra de prevalência. De um modo geral, a configuração que está no Grupo sobrepõe as demais, a menos que a Regra de acesso por grupo esteja como Desconsiderar. A configuração no arquivo appserver.ini serve para todos os usuários que não tiverem configuração específica no seu Usuário ou no Grupo. Abaixo uma tabela de possibilidades:

Appserver.iniUsuárioGrupoRegra de Acesso
por Grupo
Permite acessar
5 min1 minSem grupoSem grupoUsuário
1 min5 minSem grupoSem grupoUsuário
5 min3 min1 minSomarGrupo
5 min3 min1 minPriorizarGrupo
5 min3 min1 minDesconsiderarUsuário
1 min5 min3 minSomar/PriorizarGrupo
1 min3 min5 minSomar/PriorizarGrupo
3 min0 min0 minSomar/PriorizarAppserver.ini
1 min3 min0 minSomar/PriorizarAppserver.ini
Sem configuração1 min3 minSomar/PriorizarGrupo
Sem configuração1 min3 minDesconsiderarUsuário
Sem configuração3 min0 minSomar/PriorizarSem timeout



Baseando-se na tabela acima, seguem abaixo alguns exemplos de cenários, e a configuração que deve ser feita:

Cenário 1: Preciso definir o Timeout para um único Usuário que pertence a um Grupo.
>>> Esta configuração só irá funcionar se a Regra de acesso por grupo deste Usuário estiver como Desconsiderar e o Timeout da estação (em minutos) no Usuário estiver configurado com algum número diferente de 0.

Cenário 2: Configurei o Timeout para um Grupo de Usuários tendo já configurado um Timeout no Usuário que faz parte deste Grupo. Qual Timeout será respeitado?
>>> A configuração no Grupo prevalece sobre as outras. Porém, se a Regra de acesso por grupo deste Usuário estiver como Desconsiderar, a configuração que será respeitada será a do Usuário.


Com pacote de Lib anteior a versão:  20231121_P12:

No acesso via SIGAMDI, a desconexão da Thread é realizada apenas da que esta aberta em uma rotina e não na Main Thread, que é a Janela Principal.

A partir do pacote de Lib com a versão:  20231121_P12:

Foi criada uma verificação de abas abertas no SIGAMDI, caso nenhuma aba seja encontrada, o timeout é ligado novamente permitindo assim que o SIGAMDI seja encerrado por completo na situação de inatividade.