Você está vendo a versão antiga da página. Ver a versão atual.

Comparar com o atual Ver Histórico da Página

« Anterior Versão 6 Próxima »

A autenticação é um processo fundamental em sistemas de segurança e gerenciamento de acesso, que visa verificar a identidade de um usuário e permitir o seu acesso a aplicação. Por padrão, no Cronapp, o processo de autenticação de um usuário é realizado através da Fonte de Dados Autenticar, utilizando os registros do Banco de Dados da aplicação. No entanto, caso seja necessário, é possível personalizar a autenticação de um usuário no Cronapp. Neste tutorial, veremos como fazer isso.

Pré-requisitos

Antes de começar a seguir os passos do tutorial é preciso ter certeza de que se tem um ambiente minimamente preparado para reproduzir o exemplo. Abaixo estão os requisitos principais.

  • Projeto do tipo web e mobile criado. Caso haja dúvidas de como criar esse tipo de projeto, acesse a documentação Criar projeto.
  • Criar blocos de programação. Caso haja dúvidas, acesse a documentação Bloco de programação.

Passos

Para alterar o processo padrão de autenticação de um usuário no Cronapp, é preciso alterar a ação Para Autenticar da janela de Eventos e Ações. Essa ação é responsável por realizar a autenticação dos usuários ao logar na aplicação, substituindo a autenticação padrão do Cronapp. Durante esse processo essa ação é executada duas vezes. A primeira no momento de validar a existência do usuário na aplicação e a segunda para verificar se a senha informada é válida.

Neste tutorial, criaremos uma função de bloco de programação com uma regra genérica de autenticação e, em seguida, adicionaremos a função criada à ação Para Autenticar, citada anteriormente. Essa ação deverá receber, como retorno da função passada, os valores booleanos true ou false. Desse modo, a depender das validações executadas, a autenticação do usuário será permitida ou não.

É importante destacar que a regra criada neste tutorial é apenas um exemplo de uso geral, você pode criar e utilizar regras personalizadas de acordo com os requisitos específicos de sua aplicação. As configurações do projeto serão detalhadas nos tópicos a seguir. Se desejar, o projeto previamente configurado está em um repositório no GitHub. Para mais informações sobre como importar projetos de um servidor Git, acesse a documentação Criar projeto.

Configurando o bloco de programação

Vamos dar início ao nosso tutorial criando a nossa função de bloco de programação do tipo servidor. Inicialmente, criamos um arquivo blockly e atribuímos o nome "ParaAutenticar" à nossa função. Ela será responsável pelo processo de autenticação do usuário, ou seja, irá verificar se o login e senha do usuário são válidos. Para configurá-la siga os passos abaixo.


Figura 1 - Configurando a parte inicial da função


  1. Primeiramente, vamos adicionar dois parâmetros de entrada na função "ParaAutenticar". Para isso, clique no ícone de engrenagem da função e adicione os parâmetros "username" e "password", que terá por objetivo armazenar as informações de login e senha do usuário.
  2. Defina uma variável com o nome "usuários" e, nela, adicione o bloco Para Json com o bloco de texto que contém as informações de login de dois usuários, "user1" e "user2", contidas no bloco abaixo:

    [
        {
            "username":"user1",
            "password":"senha1",
            "email":"user1@email.com"
        },
        {
            "username":"user2",
            "password":"senha2",
            "email":"user2@email.com"
        }
    ]
  3. Defina uma variável com o nome "valorBooleano" e insira o bloco de valor nulo. Essa variável será adicionada no retorno da função (destaque 5) e será passada como parâmetro na ação Para Autenticar da janela de Eventos e Ações. No decorrer da execução essa variável assumirá os valores true ou false a depender das validações realizadas e, a partir disso, a autenticação do usuário será válida ou não.
  4. Adicione o bloco condicional se faça, ele será responsável por validar as informações de login e senha de um usuário. Para configurá-lo, clique no ícone de engrenagem do bloco e, abaixo do bloco "se", adicione os blocos "senão se" e "senão", nesta ordem (destaque a).
  5. Insira a variável "valorBooleano" no retorno da função.

Agora vamos configurar o bloco condicional se faça, responsável por validar as informações de login e senha de um usuário e determinar se ele está autorizado a acessar a aplicação. Na primeira condição (Figura 1.1), iremos verificar se a senha informada por um usuário na tela de login é válida. Configure a sua função de acordo com os passos da imagem abaixo.


Figura 1.1 – Configurando a verificação de senha da aplicação


  1. No parâmetro se do bloco se faça, encaixe o bloco de negação lógica e, em seguida, o bloco é nulo ou vazio? com a variável "password" como parâmetro. Como mencionado anteriormente, essa função será executada duas vezes. Na primeira execução, apenas o usuário é obtido, enquanto a senha permanece vazia. Dessa forma, essa primeira condição verifica inicialmente se a senha está vazia; se estiver, o próximo parâmetro do bloco será executado para a checagem do usuário (Figura 1.2). Na segunda execução, os próximos passos serão executados.
  2. No parâmetro faça do bloco condicional, defina a variável "valorBooleano" com o bloco de valor booleano falso.
  3. Adicione o bloco de repetição para cada item da lista e, nele, a variável "usuários", que foi criada anteriormente e contém as informações dos usuários autorizados a acessar a aplicação. Este bloco será responsável por acessar todos esses usuários e obter seu login (destaque 4) e senha (destaque 5).
  4. Defina uma variável com o nome "obterUsuario" e insira o bloco Obter campo do Json. No parâmetro Json do bloco, adicionamos a variável "i" do laço de repetição, que contém as informações dos usuários cadastrados na aplicação, e no parâmetro Caminho a percorrer incluímos o caminho "username" para obter o login do usuário.
  5. Defina uma variável com o nome "obterSenha" e adicione outro bloco Obter campo do Json, que obterá a senha do usuário, utilizando o caminho "password".
  6. Adicione o bloco se faça e, no parâmetro se, o bloco de operação lógica "e". Em cada um de seus parâmetros, insira o bloco de comparação lógica que irá validar o login e senha informados. Essa condição será válida apenas se as comparações de usuário e senha dos blocos forem verdadeiras. Se o resultado for verdadeiro, indica que o usuário informado está registrado na aplicação e a senha informada é válida para esse usuário.
    1. No parâmetro faça do bloco se faça, se a condição anterior for verdadeira, a variável "valorBooleano" será definida com o bloco de valor booleano verdadeiro, e o bloco encerra finalizará o laço de repetição. Isso significa que o usuário poderá acessar a aplicação, caso contrário a variável "valorBooleano" continuará com o valor false (destaque 2).

Na imagem abaixo, podemos observar as configurações das demais condições do bloco se faça para verificar a autenticidade do usuário na aplicação.


Figura 1.2 – Configurando a verificação de usuário da aplicação


  1. No parâmetro senão se do bloco condicional se faça, encaixe o bloco de negação lógica e, em seguida, o bloco é nulo ou vazio? com a variável "username" como parâmetro. Essa condição inicialmente verifica se o campo de usuário está vazio; se estiver, o próximo parâmetro do bloco será executado (destaque 6).
  2. No parâmetro faça do bloco condicional, definimos a variável "valorBooleano" com o bloco de valor booleano falso.
  3. Adicione o bloco de repetição para cada item da lista e, nele, a variável "usuários". Este bloco será responsável por acessar todos os usuários registrados na aplicação e obter seu login (destaque 4).
  4. Defina uma variável com o nome "obterUsuario" e, nela, insira o bloco Obter campo do Json. No parâmetro Json do bloco, adicionamos a variável "i" do laço de repetição e no parâmetro Caminho a percorrer incluímos o caminho "username" para obter o login do usuário.
  5. Adicione o bloco se faça e, no parâmetro se desse bloco, insira o bloco de comparação lógica, que retornará verdadeiro apenas se a comparação do usuário obtido estiver registrada na aplicação.
    1. No parâmetro faça do bloco se faça, se a condição anterior for verdadeira, a variável "valorBooleano" será definida com o bloco de valor booleano verdadeiro, e o bloco encerra finalizará o laço de repetição. Na primeira execução da função, isso indica que o usuário está presente no registro de usuários da aplicação. Na segunda execução, a senha informada terá sido obtida e a condição detalhada na Figura 1.1 poderá ser validada.
  6. Se nenhuma das condições acima forem verdadeiras, a variável "valorBooleano" receberá o bloco de valor booleano falso. Isso significa que o usuário não terá permissão para acessar a aplicação.

Configurando ação Para Autenticar

Após seguir os passos acima, iremos configurar a ação Para Autenticar da janela de Eventos e Ações, responsável por realizar a autenticação dos usuários ao logar na aplicação, substituindo a autenticação padrão do Cronapp. Para acessar essa funcionalidade, clique em Projetos > Eventos e Ações no menu do sistema.


Figura 1.3 – Configurando a ação Para Autenticar da aplicação


Em seguida, na ação Para Autenticar, clique no botão (destaque 1) para abrir a janela de seleção do bloco de programação. Na janela que for exibida, clique no botão "..." e selecione a função de bloco de programação configurada anteriormente. Após esta ação, os dois parâmetros da função serão exibidos. Na coluna Valor do campo de cada parâmetro, selecione os valores "username" e "password" (destaque 3), respectivamente. Por fim, após seguir esses passos, clique em Selecionar e, na janela de Eventos e Ações, clique em OK.

Executando o projeto

Após completar os passos anteriores, salve as alterações e execute o projeto. Na tela de login, preencha os campos com um nome de usuário e senha registrados na sua aplicação e faça login. Para este exemplo, utilizamos "user1" como usuário e a senha correspondente com base nas informações de usuário criadas (destaque 1 da Figura 1).


Figura 1.4 – Tela de login


Após a autenticação bem-sucedida, o usuário será redirecionado para a página inicial da aplicação. É importante ressaltar que todos os usuários autenticados na aplicação, por padrão, herdarão as regras do permissionável Authenticated. Para obter mais informações, consulte a documentação Permissões de Segurança.


Figura 1.5 – Página inicial exibida após autenticação do usuário


Nesta página

  • Sem rótulos