Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

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 disponibilizados pelo projeto de microsserviços. Para fazer a integração desses dois projetos, será preciso copiar o Token (destaque 1 da Figura 2), localizado na subaba "Autenticação e Segurança" nas Configurações do projeto de autenticação, e adicioná-lo no mesmo 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 a autenticação dos do acesso aos recursos dos projetos de microsserviços.


Image Added

Figura 2 - Janela de Configurações do Projeto

Projeto de Microsserviços

O projeto do tipo de 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 (Figura 2) nas Configurações do projeto. Além disso, é essencial fundamental que os permissionáveis neste do 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á afetarão 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 pelo projeto será através por meio de uma função de bloco de programação, exibida conforme mostrado na imagem abaixo. Acesse Para acessar as configurações do bloco clicando bloco, clique no ícone de engrenagem (destaque 1 da Figura 2.1) do editor de blockly. No Na janela exibida, no campo "Segurança" da janela exibida, deixe , certifique-se de que todas as opções estão configuradas como "Autenticado", dessa forma apenas usuários autenticados poderão acessar esse serviço. No garantindo que somente usuários autenticados tenham acesso a este serviço. Ainda na janela de configuração, no campo "Endereço REST", ao lado do endpoint da função que pode ser utilizado para requisições externas, 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


Image Added

Figura 2 .1 - Função de bloco de programação do projeto de microsserviços

Fonte de dados

Outro serviço disponibilizado será através por meio da fonte de dados da imagem a seguir. Para o este exemplo da imagem abaixo, criamos foi criada uma classe "Pessoa" no diagrama Diagrama de dados e, a partir dela, a Fonte de dados "Registro". Em seguida, na aba Ações (destaque 1 da Figura 2.2), no campo "Segurança", selecionamos foi selecionado o permissionável "Autenticado" para todas as ações. Também habilitamos , garantindo que apenas usuários autenticados tenham permissão para acessar esse recursos. Além disso, foi habilitada a opção "Swagger/Open API" (2). O endpoint (3) da fonte de dados, assim como no bloco de programação pode ser utilizado em requisições externas. Para mais informações de configuração, acesse o tópico "Como configurar" da documentação do Swagger.


Image Added

Figura 2.1 - 2 - Fonte de dados do projeto de microsserviços


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 tipo web e mobile será utilizado para consumir os serviços REST disponibilizados pelo projeto de microsserviços. Para  exemplosNeste tutorial, utilizaremos a funcionalidade Importar OpenAPI/Swagger para importar os recursos do bloco de programação e fonte de dados do criados anteriormente no projeto de microsserviços. Consulte a documentação correspondente para mais detalhes de importação. No entanto, é importante destacar que os serviços também podem ser consumidos de outras formas, utilizando os endpoints configurados.

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


Image Added

Figura 2.3 - Bloco de programação configurado utilizando os blocos importados do projeto de microsserviços


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 32.1 4

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 32.2 5 -


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 32.2 6 -



Nesta página

Índice