Segurança e Usuários
Por default, ao iniciar a execução do Action.NET o sistema registra a seção como sendo de um usuário pré definido “Guest”. Este usuário (convidado) não precisa digitar um nome de usuário ou senha. Se você quiser garantir o acesso a seus projetos, você pode adicionar usuários e configurar senhas e permissões diferenciadas para cada usuário.
Adicionando e Alterando Usuários
Para aumentar a segurança dos dados de uma instalação com o Action.NET, você pode adicionar e editar usuários. O sistema ao ser instalado vem originalmente com os seguintes nomes de usuário configurados por default:
Administrator - usuário que controla o sistema de segurança. Nenhuma senha é configurado por padrão. Você deve definir uma senha para este usuário.
Guest- Usado por default para acessar o Action.NET e quando terminar a sessão com outro usuário. Nenhuma senha é configurada por default.
User - Usado como um usuário genérico. Nenhuma senha é configurada por default.
Os níveis dos Usuários com identificação de Administrator e Guest tem atributos pré definidos no sistema. O Administrator é o unico usuário que pode excluir ou alterar permissões de um usuário e definir senhas para interfaces de bancos de dados na tabela DBs. O usuário Guest é utilizado para o acesso anonimo e não tem senha associada a ele. Não tem também permissão para aletrar configurações no espaço de Engenharia. Não crie outros usuários com estes nomes, nem altere as configurações destes registros na tabela de usuários, porque o sistema presume estes nomes com estes atributos.
Nota: Não se pode excluir o usuário Guest, e nem adicionar uma senha para ele. O usuário Guest deve sempre estar disponível como um usuário default para o qual o sistema se auto-loga, quando outro usuário faz um "log off". Você pode querer alterar as permissões do usuário Guest, para que não tenha acesso a todas as funções. Veja"Configurando Permissões" .
Para adicionar e editar usuários:
Vá para Edit > Security > Users .
Digite ou selecione as informações, conforme necessário.
Coluna | Descrição |
Name | Digite um nome de usuário. O sistema fará com que você saiba se o nome não é válido, mostrando a célula com o contorno vermelho |
Permissions | Selecione o grupo de permissão de uso para este usuário. Veja "Configurando Permissões". |
Password | Digite uma senha para o usuário. O sistema permite que você saiba se a senha não é válida. Você pode configurar requisitos de senha. Veja "Configurando Políticas" |
PasswordHint | Entre as informações que podem ajudar você a lembrar a senha do usuário. |
Policy | Selecione as configurações de política de usos para este usuário. Veja "Configurando Políticas" . |
Blocked | Selecione bloquear o acesso do usuário. Pode-se querer usar isso para usuários que não estão mais na empresa. |
Deleted | Selecione para bloquear o acesso e marcar o usuário como excluído, sem excluir o usuário. Você pode querer usar isso para usuários que não estão mais na empresa. |
Company | Pode-se indicar o nome de uma empresa da qual o usuário faz parte |
UserGroup | Pode-se considerar grupos de usuários. Aqui deve ser indicado qual o grupo ao qual este usuário pertence. |
Profile | Digite o endereço de e-mail, número de telefone e nome completo do usuário |
Continue adicionando tantos usuários quanto você precisar.
Configurando Permissões
Você pode configurar as funções que os Usuários terão permissão de acesso ao editar o projeto e quando estiverem utilizando o sistema em tempo de execução. Você define permissões usando o que é denominado por Grupos de Usuários. O Action.NET vem com alguns Grupos predefinidos que você pode usar como estão. Você pode também criar outros grupos conforme sua necessidade. Cada Grupo utiliza uma linha da tabela.
Para configurar permissões:
Vá para Edit > Security > Permissions.
Digite ou selecione as informações, conforme necessário.
Coluna | Descrição |
Name | Digite um nome para o grupo. O sistema fará com que você saiba se o nome não é válido, mostrando a célula com o contorno vermelho. |
Edit | Clique na célula. Aparecerá uma lista de itens de Menus existente no espaço de Engenharia. Selecione marcando o quadrinho, as funções que os usuários neste grupo podem acessar durante a edição de um projeto.
|
Run | Clique na célula. Aparecerá uma lista de itens de Menus existente no espaço de Engenharia e funções de tempo real. Selecione marcando os quadrinhos, as funções que os usuários neste grupo podem acessar durante a utilização do sistema em tempo de execução
|
Description | Digite um texto descritivo sobre o grupo |
Continue adicionando quantos grupos você precisa.
Os grupos de permissões que você criar estarão disponíveis para uso na aba Users.
Desabilitar opção Alternar Aplicativos do Windows
Uma das permissões de tempo de execução é desativar a facilidade de alternar de um aplicativo para outro no ambiente do MS-Windows. A função é EditSecurityPermissions.Run. Se desativada, as teclas e ações, a seguir listadas, ficarão inibidas, durante a execução em tempo real do Action.NET:
O acesso ao botão Iniciar e a Barra de Ferramentas de tarefas.
botão com o logotipo do Windows
Ctrl + Alt + Del
Ctrl + ESC
Alt + Tab
alt + F4
Logotipo do Windows + L
NOTA - Para permitir desativar os atalhos de teclado que alternam entre aplicações, deve ser executado o arquivo DisableTaskSwitchProtection.bat a partir do diretório de instalação. Esta ação serve para instalar o driver de teclado necessário para implementar esse recurso.
Configurando Políticas
Pode-se configurar as políticas de permissão que se desejar aplicar aos usuários.O Action.NET, por default, já possui algumas políticas predefinidas que podem ser usadas. Se preferir, você também pode criar outras, conforme sua necessidade.
Para configurar políticas:
Vá para Edit > Security > Policies.
Digite ou selecione as informações, conforme necessário.
Coluna | Descrição |
Name | Digite um nome para a política. O sistema fará com que você saiba se o nome não é válido, mostrando a célula com o contorno vermelho. |
Identification | Selecione as regras de senha, tanto para a edição de projetos como para acessar projetos em tempo de execução.
|
Esign | Apenas para tempo de execução. Selecione a opção se desejar impor um tempo limite para a sessão runtime. Digite o período de tempo limite em minutos.
|
Session | Para tempo de execução somente. Selecione se vai causar um logoff automático, em seguida, digite os valores apropriados para InactivityMinutes e DurationHours. Esta definição somente faz o encerramento da sessão do usuário. O aplicativo continua a ser executado.
|
Description | Digite uma descrição para a política. |
Continue adicionando tantas políticas quantas você precisa.
As políticas criadas estão disponíveis para uso na aba Users
Se necessário, clique com o botão direito em uma linha da tabela para cortar, copiar, colar ou excluir a linha.
Removendo Usuários
Você tem três maneiras de desativar usuários em Action.NET:
Bloqueio - Use para bloquear o acesso do usuário. Pode-se usar esta opção para impedir o acesso de usuários que deixaram a sua empresa.
Sinalização de Excluídos - Use para bloquear o acesso do usuário e sinalizar o usuário como excluído, sem excluir o usuário. Você pode querer usar isso para usuários que não estão mais na sua empresa.
Excluindo - Remove o usuário completamente do sistema. Você deve usar o método que é melhor para a situação da sua empresa.
Para remover usuários:
Vá para Edit > Security > Users.
Clique no usuário que você deseja remover.
Siga uma das seguintes opções:
Para bloquear um usuário, selecione a coluna Bloqueado.
Para sinalizar um usuário como excluído, selecione a coluna Excluídos.
Para apagar completamente um usuário, clique com o botão direito do mouse na linha e selecione Delete selected row..
Gerenciando usuários em Tempo de execução
Ao executar o aplicativo, o procedimento de login vai aceitar todos os usuários definidos na configuração do projeto, mas usuários adicionais, definidos somente pelo sistema em tempo de execução, por Scripts, podem também ser incluídos.Os usuários de tempo de execução são definidos no banco de dados RuntimeUsers definidos no menu Datasets. Por default, esse banco de dados é mapeado para um banco de dados SQLite. Você pode selecionar qualquer outro banco de dados através da criação de uma outra conexão DB e atribuir a ele o nome RuntimeUsers (você terá de apagar ou renomear a linha RuntimeUsers existente, antes de criar o nova, pois a tabela não aceita nomes duplicados).Você pode preencher esse banco de dados diretamente antes de iniciar a execução do sistema, ou depois que o projeto já está sendo executado, você pode criar ou modificar os usuários, através de scripts em dot NET, com os métodos disponíveis no Namespace de Segurança.Veja em http://www.spinengenharia.com.br/help/an-2016/runtime/index.html para a referência de programação completa sobre objetos runtime (de tempo de execução).Quando esses métodos são executados, os usuários novos ou modificados são automaticamente salvos no banco de dados RuntimeUsers.
Interface no Espaço de Trabalho de Engenharia
Quando se escolhe Edit > Security no menu principal da ferramenta de Engenharia, fica disponível uma tab "Real Time Users", com as mesmas colunas da tab normal de usuários, que serve para se ver os usuários criados em tempo real e mesmo alterar dados destes usuários. A figura baixo mostra esta ficha.
O botão Refresh, pode ser utilizada a qualquer momento para a verificação do novo estado atual do Dataset, RuntimeUsers, que será relido e mostrado no grid.
Personalizando procedimentos de Login
A página de login é editável, você só precisa selecionar a tela com o nome de LogOn para editar o seu layout. Como você pode ver no código por trás dessa Tela, ele chama o método Security.Logon () para fazer a validação do usuário. Se você quiser executar qualquer outra validação do usuário, você só precisa modificar essa lógica chamando o seu próprio sistema de validação e, em seguida, chamar o método de LogOn, de acordo com os resultados de sua validação.
Outra maneira de personalizar o logon é colocar sua própria lógica personalizada na tarefa de script ClientStartup. O script é executado em qualquer computador que está se conectando ao servidor de aplicação, você pode executar verificações baseada em IP do computador, nome do computador, se o usuário está logado no Windows Active Directory , ou qualquer outro critério para determinar se o usuário tem permissão para iniciar o aplicativo e quais deveriam ser as suas credenciais. Depois desta verificação pode chamar o procedimento client.Shutdown, para encerrar o aplicativo caso o usuário não for autorizado, ou Security.Logon () se o usuário corresponder ao perfil de segurança selecionado.
Por default, quando se inicia o aplicativo em um computador cliente, em vez de solicitar um login, o sistema faz a inicialização da sessão com o usuário GUEST. O usuário Guest é equivalente a um login anônimo, se você não quiser este método em sua instalação, basta substituir a página inicial por uma página solicitando as informações de logon.
Objetos runtime de Segurança
O namespace Security tem todas as informações de tempo de execução em relação ao sistema de segurança.
O objeto Client tem informações sobre o usuário atual conectado nessa estação cliente:
A propriedade Client.Username contém o nome do usuário logado.Client.CurrentUser é uma referência a uma estrutura de dados com todas as informações do usuário conectado no momento.
Veja em http://www.spinengenharia.com.br/help/an-2016/runtime/index.html para a referência de programação completa sobre objetos runtime (de tempo de execução).
Nesta página: