Versões comparadas

Chave

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

Índice



Objetivo

...

Este documento tem o objetivo de auxiliar as equipes no entendimento dos processos, tanto automático quanto manual, de funcionamento do Credencial Helper e assim servir como documento base.

Introdução

...

O Credential Helper é um serviço disponível na plataforma TOTVS Apps para uso pelos ERPs e outras aplicações TOTVS que necessitem obter credenciais (Client ID e Client Secret) para habilitar a comunicação com a solução SmartLink.

Antes dessa nova implementação do Credential Helper, a obtenção das credenciais eram feitas de forma manual através da integração com SmartLink utilizando o Credential Helper TotvsApp, onde na etapa final de conclusão da configuração eram geradas as credenciais.

...

Veja mais sobre

...

Credential Helper

...

.

Como as coisas funcionam

...

Agora com as novas implementações, a obtenção das credenciais no RM é feita de 2 formas:

...

Quando houver algum detalhe que impeça a execução automática, então haverá a necessidade de uma intervenção manual, através do processo de Resolução de Conflitos (Classificação de Ambientes e Configurador do SmartLink (Wizard de Recuperação de Credenciais)), que deve ser feita pelo Supervisor do RM.

Objetos relacionados
Âncora
CamposNovos
CamposNovos

A tabela GSmartLinkConfig recebeu novos campos para que os fluxos de processamento possam ser executados corretamente. São eles: Controle, Origem, LastPoolingTaskExecution, TaskId e EnvironmentId.


Informações
titleObs Campo Origem

Pode conter 3 valores de configurações diferentes (1, 2 e 3)

  1. As credenciais não foram recuperadas pelo servidor do Credential Helper, foi adquirida pelo processo de sincronização das credenciais existentes.
  2. As Credenciais foram recuperadas pelo servidor do Credential Helper através do processo automático.
  3. As Credenciais foram recuperadas pelo servidor do Credential Helper através do processo manual.
Informações
titleObs Campo Controle

É usado para o cálculo do CRC, que é feito sempre que alguma atualização na tabela GSmartLinkConfig é feita. Esse cálculo também leva em consideração as alterações no campo GParams.Environment, que também entra na regra do recálculo da tabela GSmartLinkConfig.

Importante ressaltar que qualquer alteração manual feita diretamente nas tabelas relacionadas deve interferir no recalculo do CRC impactando assim na veracidade das informações e nos processos e fluxos.

Os principais campos envolvidos no processamento do Credential Helper são:

  • GSmartLinkConfig.DataBaseId: Informação referente à base de dados como Servidor e nome da base armazenado de forma segura;
  • GSmartLinkConfig.EnvironmentId: Identificador único usado para identificar o ambiente que está sendo provisionado no servidor do Credential Helper
  • GSmartLinkConfig.Credenciais: os dados de Credenciais (ClientId e SecretId) armazenados de forma segura
  • GSmartLinkConfig.TaskId: Identificador único usado para acompanhar o andamento da criação do ambiente do Credential Helper.
  • GParams.Environment: Usado para identificar o ambiente (dev, prod, staging) do RM.

APIs de Integração:

O Credential Helper fornece APIs de comunicação por onde conseguimos realizar as seguintes operações:

...

    • Caso, após ser feita a chamada para Obter as credenciais, o Credential Helper identificar a necessidade de uma intervenção do usuário, com isso deve retornar o parametro de “abertura do Credential Wizard” juntamente com o “identificador de ambiente” para abertura do Wizard de “Recuperação de Credenciais” pelo RM.


O Credential Helper no RM.Host.

...

O RM.Rost é responsável por executar o processo automático do Credential Helper para geração e manutenção das Credenciais usadas pelo SmartLink.

...

    • Cliente tem permissão por parte do License Server (Slot 7012) ou Se tem registros na GSmartLinkConfig :ou Ter Credenciais válidas na GTotvsApp ou GSmartLinkConfig ou o Campo Origem estiver com o valor de -1
    •  GParams. GParams.Environment ser preenchido
    • O Campo Controle estar preenchido com o cálculo de CRC válido
    • Ter o DataBaseId preenchido e válido
    • O Campo EnvironmentId não estar preenchido
    • Se o campo TaskId estiver preenchido: Vai para o fluxo Acompanhar o andamento da geração de credenciais
    • Se tiver Registro na GTotvsApp: Vai para o fluxo Sincronizar credenciais vindo da GTotvsApp
    • Se não tiver Credenciais válidas na GSmartLinkConfig: Vai para o fluxo Gerador de novas credenciais pelo CH

...

    • Verifica se as Credenciais da GTotvsApp são válidas e se tem integrações antigas (Consignado, Antecipa, RH…)
    • Se não tiver Credenciais válidas na GSmartLinkConfig: Vai para o fluxo Sincronizar credenciais existentes


  • Sincronizar credenciais existentes
    Âncora
    SincronizarCredenciaisExistentes
    SincronizarCredenciaisExistentes

...

As Funcionalidades são equivalentes aos processamentos. Abaixo o de/para identificando cada um.

Fluxo

Funcionalidade

Startup inicial da integração

StartupIntegration

Atualizador de credenciais

AutomaticCredentialsGenerator

CredentialsUpdater

Sincronizar credenciais vindo da GTotvsApp

SyncCredentialsByGTotvsApp

Sincronizar credenciais existentes

SyncExistsCredentials

Gerador de novas credenciais pelo CH

AutomaticCredentialsGenerator

Acompanhar o andamento da geração de credenciais

FollowProgressCredentialsGenerator

Resolução de Conflitos

ConflictResolutionByWizard

Acompanha algumas das iterações com a GSmartLinkConfig e o cálculo do CRC

DatabaseRepository


Exemplo de acompanhamento da funcionalidade StartupIntegration no Log pelo arquivo de logs do RM.

...

Para melhorar a visualização do TrackLog, pode ser usado o Seq, uma ferramenta que disponibiliza algumas funcionalidades e facilita no acompanhamento dos Logs.


Mais informações do Veja mais sobre Seq.

Mais informações Veja mais sobre o TrackLog.

Troubleshoot

O tracklog é a nossa fonte de informação quando o assunto é identificação das instabilidades que podem acontecer com o processamento do Credential Helper

...

  • Cliente não é permitido no LS e não possui credenciais configuradas.

O que pode ocasionar:

Cliente deve ter o Slot 7012 habilitado no License Server para poder conseguir Credenciais válidasacessar o wizard do Credential Helper que está no Modulo Integração| Menu TOTVS App   | Ativação SmartLink


Image Added


O Credential Helper na Resolução de Conflitos.

...

Requisitos para que o processo manual seja executado:

  • Os campos novos da tabela GSmartLinkConfig devem existir;
  • A Base de Dados  não pode estar convertida para Base Teste;
  • O Usuário de acesso ao RM deve ser Supervisor de Globais;

...

  1. Quando a classificação do ambiente não foi definida no RM;
  2. Quando for identificado que houve alguma atualização na integração com o Smartlink;
  3. Quando o Endereço da Base de Dados utilizada pela integração Smartlink está diferente da utilizada pelo RM;

Link do material de apoio 01

Veja mais sobre Classificação de Ambientes.

Material de apoio sobre Classificação de AmbientesLink do material de apoio 02

Após a seleção de ambientes ser realizada, o processo de Resolução de Conflitos realiza validações para decidir qual caminho seguir no processo:

...

O Configurador do SmartLink, é quem habilita a integração do ERP com a Plataforma de Aplicações TOTVS, é a ferramenta que torna o processo de configuração mais ágil e seguro, orientando o usuário na obtenção das credenciais e na realização do vínculo do ERP com a plataforma.

Link do material de apoio

Veja mais sobre Configurador do SmartLink


Requisitos para que o processo seja executado:

...