Criando telas de Login e controle de Acesso no WaveMaker Nesse artigo exploraremos o recurso de login e controle de acessos via banco de dados do WaveMaker.

Introdução

Trata-se de um controle para criação de uma tela de Login, onde seu sistema poderá conter o mínimo de segurança para limitar acessos indesejados.

Primeiramente vamos ter o conhecimento de uma demo que o próprio WaveMaker nos dá, veja:

1 - Clique na aba Security:


Figura 1.

Você em as opções de trabalhar com o DEMO (demonstração de como usar o login) ou diretamente no seu banco de dados, no nosso caso, primeiramente vamos usar a demo pra ver como vai ficar:

2 - Na tela de Security:


Figura 2.

2.1- Veja as opções, Demo, Database, LDAP e JOSSO:

  • Demo = Demo para apenas apresentar o recurso, e pode ser usado apenas para diagramação/prototipação de tela(demonstração);
  • Database = Usando um banco de dados num caso real;
  • LDAP = Protocolo de privilégios por diretório;
  • JOSSO = Serviço de Segurança baseado em Web-Application Secure;

3 - Selecione a opção DEMO e crie um usuário e senha nos respectivos campos, ou se preferir apenas testar sua aplicação, use a opção pré-definida "demo", (usuário), e "demo" (senha):


Figura 3.

Veja que nessa tela, temos que selecionar as opções de Enable Security e Show Login Page.

Você pode adicionar mais usuários se quiser, digitando o nome e senha nos respectivos campos e adicionando-os ao clicar no botão de (+).

Como colocamos a opção de Show Login Page, temos que instanciar ela no inicio da aplicação. Para fazer isso clique em:


Figura 4.

Page->Set as Home Page->Login

4 - Salve tudo e dê um Run na sua aplicação: deverá ter algo assim:


Figura 5.

Caso não tenha dado certo refaça os passos de 1 à 3 e vá salvando seu projeto a cada etapa, pode ser que você tenha se esquecido de salva e a sua aplicação não mostrara a sua última ação, dando a impressão que não funcionou.

Nosso outro caso é de fazê-lo funcionar usando um banco de dados real, portanto vou usar a seguinte tabela de usuários dentro de minha aplicação fictícia. Segue a tabela:

USUARIO

  • usCodigo;
  • usNome;
  • usSenha;
  • usNivelAcesso;
  • usDataCad;

Logicamente você pode ter outro esquema de tabela, esse é apenas um exemplo e você poderá usar o esquema, o tipo de dados mais adequado, pois nesse Wizard (assistente) o Wave Maker não fará distinção e apenas verificará se dado digitado é igual ao que está no banco de dados.

5 - Criando por BD


Figura 6.

Nesse caso, selecione a opção Security Provider para ->DATABASE e configure os campos:

  • Data Model: (Selecione o banco de dados desejado)
  • Entity: (Selecione a tabela que você deseja obter o controle de usuários e senhas);
  • UserName Field: (Campo de login/nome);
  • User ID Field: (Campo de ID da sua tabela, pode ser o código, ou outra Key, ou até mesmo a senha);
  • Password Field:(Campo de senha, propriamente dito);
  • Role Field:(regras que podem ser criadas aqui mesmo, ou advindas do banco de dados via Query SQL);

Clique em Salvar e dê um Run na sua aplicação e teste, o resultado deve ser o mesmo da figura 5, com exceção que agora você deverá digitar um nome de um usuário do seu banco de dados.


Figura 7.

Por enquanto ficamos por aqui pessoal, espero tê-los ajudado, um forte abraço++