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 4 Próxima »

Projetos Cronapp de Microsserviços permitem a criação de um projeto simplificado, sem muitas funcionalidades predefinidas, oferecendo ao usuário autonomia para desenvolver os serviços necessários à sua aplicação. Para mais detalhes desse tipo de projeto, consulte a documentação Projeto de Microsserviços. Esses projetos não possuem interfaces clientes, por isso não apresentam recursos de autenticação próprios. Ao disponibilizar em um projeto de microsserviços recursos privados, ou seja, que necessitam de autenticação dos usuários, é preciso integrar-se com outro projeto para lidar com a autenticação, assim como exemplifica a imagem a seguir.



Figura 1 - Fluxo de integração entre projetos


Neste tutorial, apresentaremos como integrar projetos Cronapp para disponibilizar requisições autenticados em projetos de microsserviços. Para isso, vamos utilizar três projetos Cronapp: dois projetos do tipo web e mobile serão utilizados para autenticação e consumo dos serviços, enquanto o terceiro disponibilizará os serviços privados (Figura 1).

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 principais requisitos de que se precisa entendimento.

  1. Criar projeto do tipo web e mobile. Caso haja dúvidas de como criar esse tipo de projeto, acesse a documentação Criar projeto.
  2. Criar projeto do tipo microsserviços. Caso haja dúvidas de como criar esse tipo de projeto, acesse a documentação Projeto de Microsserviços.
  3. Criar blocos de programação. Caso haja dúvidas, acesse a documentação Bloco de programação.
  4. Criar fonte de dados. Caso haja dúvidas, acesse a documentação Fonte de Dados.

Passos

Projeto para autenticação

O projeto utilizado para autenticação deve ser do tipo web e mobile. Esse projeto será responsável por gerenciar a autenticação dos usuários que desejam acessar os serviços fornecidos pelo projeto de microsserviços. Para fazer a integração desses dois projetos, será preciso copiar o Token, localizado na subaba "Autenticação e Segurança" nas Configurações do projeto de autenticação, e adicioná-lo no campo Token nas Configurações do projeto de microsserviços. Dessa forma, os usuários autenticados no projeto de autenticação também poderão acessar os recursos do projeto de microsserviços de acordo com suas permissões de segurança. Após finalizar a criação, execute o projeto, faça login na aplicação e copie o token do usuário logado. Esse token será utilizado para autenticação dos recursos dos projetos de microsserviços.

Projeto de Microsserviços

O projeto do tipo microsserviços será responsável por disponibilizar os serviços que serão consumidos pelo cliente. Como informado anteriormente, esse projeto deverá receber o token do projeto de autenticação nas Configurações do projeto. Além disso, é essencial que os permissionáveis neste projeto sejam os mesmos definidos no projeto de autenticação. Para visualizar os permissionáveis do projeto, acesse no menu do sistema Projeto > Permissão de Segurança. As alterações realizadas nessa funcionalidade afetará o arquivo authorities.json (Endereço: src/main/java/META-INF/authorities.json). Para mais informações de configuração desse arquivo, consulte a documentação Arquivo populate json.

Bloco de programação

Um dos serviços disponibilizados por esse projeto será através de uma função de bloco de programação, exibida na imagem abaixo. Acesse as configurações do bloco clicando no ícone de engrenagem (destaque 1 da Figura 2) do editor de blockly. No campo "Segurança" da janela exibida, deixe todas as opções como "Autenticado", dessa forma apenas usuários autenticados poderão acessar esse serviço. No campo "Endereço REST", selecione o verbo HTTP GET, o endereço apresentado neste campo será o endpoint utilizado para as requisições externas. Para mais informações de configuração, acesse o tópico "Propriedades do Blockly" da documentação Bloco de programação


Figura 2 - 

Fonte de dados

Outro serviço disponibilizado será através da fonte de dados da imagem a seguir. Para o exemplo da imagem abaixo, criamos uma classe "Pessoa" no diagrama de dados e, a partir dela, a Fonte de dados "Registro". Em seguida, na aba Ações, no campo "Segurança", selecionamos o permissionável "Autenticado" para todas as ações. Também habilitamos a opção "Swagger/Open API". Para mais informações de configuração, acesse o tópico "Como configurar" da documentação do Swagger.


Figura 2.1 - 


Por fim, após as configurações, execute o projeto como "Arquivo OpenAPI", o link da página exibida será utilizado nos próximos passos do tutorial.

Projeto Cliente

Este projeto do tipo  web e mobile será utilizado para consumir os serviços REST disponibilizados pelo projeto de microsserviços. Para  exemplos, utilizaremos a funcionalidade Importar OpenAPI/Swagger para importar os recursos do bloco de programação e fonte de dados do projeto de microsserviços. Consulte a documentação correspondente para mais detalhes de importação. No entanto, os serviços podem ser consumidos de outras formas utilizando os endpoints configurados.

Após importar os recursos, criamos um bloco de programação da imagem a seguir. Para mais informações de configuração, consulte o tópico "Blocos de programação" da documentação Importar OpenAPI/Swagger. Também criamos uma view para executar a função do bloco.



Figura 3 -


Em seguida, criamos uma fonte de dados a partir da importada do projeto de microsserviços. Visto que o recurso está disponível para acesso apenas de usuários autenticados, na aba "Cabeçalhos" da fonte de dados criada, adicionamos o cabeçalho X-AUTH-TOKEN e passamos o token do usuário obtido no projeto de autenticação. Além disso, no aba "Campos", no campo id selecionamos a expressão "guid". Após isso criamos uma view para visualizar os dados. Para mais informações de configuração, consulte o tópico "Fonte de dados" da documentação Importar OpenAPI/Swagger.



Figura 3.1 - 

Executando o projeto

Após finalizar as configurações, execute o projeto cliente. A Figura 3.2 mostra a execução da função do bloco de programação. A parte superior da imagem, exibe a execução da função utilizando um token de um usuário não autorizado. Já a parte inferior, apresenta a execução com um usuário autenticado.



Figura 3.2 -


A Figura 3.3 apresenta o formulário criado a partir da fonte de dados da Figura 3.1. Nela, podemos visualizar os dados resultantes da configuração.



Figura 3.2 -



Nesta página

  • Sem rótulos