Árvore de páginas

Versões comparadas

Chave

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

O controle de licença por demanda é uma solução desenvolvida para os aplicativos com driver Protheus, para permitir o serviço REST (backend Protheus) cadastrados no Mingle, que permite o serviço REST  do backend consumir licenças somente quando uma API está em execução, ao invés de manter permanente o consumo consumo permanente de uma licença para cada Working Thread em funcionamento no REST.

Configuração:

No cadastro de aplicativos do Portal Mingle, temos o campo Código de licençaa aba Controle de Licenças:

Image RemovedImage Added

Caso queira realizar o controle de licenciamento, informe o seu código de licença para um administrador.

...

Este campo não é obrigatório, caso o código de licença não for preenchido o backend Protheus está preparado para consumir licença padrão chamada TOTVS  I.a informação não será enviada ao backend através do Mingle. 

No sistema Protheus , por exemplo, quando essa informação não é enviada o backend utiliza a licença padrão TOTVS I que A licença TOTVS I é um tipo de licença utilizado para licenciar o Pool de conexões de Web Services, que atendem customizações e/ou funcionalidades do produto como Portais e aplicativos. A natureza de controle desta licença é concorrente.

Saiba mais sobre a gestão de licenças no Protheus aqui: https://tdn.totvs.com/pages/viewpage.action?pageId=527852596

Funcionamento:

Ao realizar qualquer tipo de integração com o backend, seja autenticação ou requests rest no gateway, o Mingle realiza uma consulta no cadastro do aplicativo em uso. 

...

Este JWT é assinado com uma chave privada .No momento da integração, independente do método (GET, POST, PUT ou DELETE) o JWT é enviado no header e será encapsulado nos headers com o nome "x-totvs-appcode". 

Estrutura do payload no JWT enviado:

Image Added


Diagrama: Login do aplicativo.

...

Diagrama: Requisições REST para do aplicativo para o backend


Chave Pública para validação da assinatura no JWT:

Conforme mencionado no tópico anterior, para a segurança da informação, o JWT contendo o código de licença é assinado com uma chave privada.

Para o backend verificar se o JWT recebido foi criado pelo MIngle, é necessário ter a chave pública criptografada no formato PEM. Tal chave é obtida através do endpoint:

https://mingle.totvs.com.br/api/api/v1/services/certificateAo realizar uma chamada REST para o endpoint, terá como retorno a chave pública do JWT criptografada no formato .PEM

Para mais informações:

http://mingle.totvs.com.br/api/docs/#api-Certificate-getCertificate

...