Controle de tempo de acesso
É possível restringir a criação da sessão a determinados horários do dia ou dias da semana.
Restrições de sessão são definidas pela cláusula ACCESS TIME.
- Se o USER possui uma configuração específica, essa configuração é usada.
- Se o USER não possui configuração, mas a instrução GROUP do usuário possui uma configuração específica, a configuração do grupo é usada.
- Se qualquer GROUP do usuário proíbe o acesso explicitamente, a criação da sessão é rejeitada.
- Se um USER pertence a GROUPS diferentes com tempos de acesso diferentes, a configuração de GROUP mais restritiva é usada. Portanto, um USER tem o acesso permitido se nenhum dos GROUPS restringe o tempo.
A tabela a seguir mostra exemplos de comando para restrições diferentes
em um usuário. Os dias são numerados de 1 a 7, começando com o Domingo como 1.
| Restrição | Definição |
|---|---|
| ACCESS TIME ALL; | Nenhuma restrição no acesso. |
| ACCESS TIME DEFAULT; | As restrições são definidas pelas configurações do GROUP. |
| ACCESS TIME (DAY ALL START '8:00' END '18:00'); | O acesso é permitido todos os dias a partir das 8:00 a.m. até as 18:00 p.m. |
| ACCESS TIME (DAY 3,4,5 START '7:00' END '18:00', DAY 2, 6 START '6:00' END '15:00'); | O acesso é permitido às terças, quartas e quintas-feiras, a partir das a.m. às 18:00 p.m, e às segundas e sextas-feiras, a partir das a.m. até as 15:00 p.m. |
Os tempos definem quando os usuários podem efetuar login, mas os usuários podem permanecer no sistema após o tempo de restrição, se eles efetuaram login durante o intervalo de tempo permitido e não efetuaram logout.
O exemplo a seguir cria um usuário com um limite de sessão simultânea de 2 e um horário de acesso que varia de 7:00 a.m. às 19:00 p.m.:
SYSTEM(ADMIN)=> CREATE USER jdoe CONCURRENT SESSIONS 2 ACCESS TIME
(DAY ALL START '7:00' END '19:00');
CREATE USER
O exemplo a seguir cria um grupo com um limite de 8 sessões simultâneas e um horário de acesso que varia de terça a quinta-feira, a partir das a.m. às 18:00 horas p.m.:
SYSTEM(ADMIN)=> CREATE GROUP finance CONCURRENT SESSIONS 8 ACCESS TIME
(DAY 3,4,5 START '9:00' END '18:00');
CREATE GROUP