Nesta seção, serão apresentadas algumas orientações para o processo de configuração do TOTVS API Hub.



Obtenção do certificado SSL
Adquira um certificado SSL válido, emitido e assinado por uma autoridade certificadora no formato .pfx (PKCS#12). 


Localização do arquivo de configuração
Acesse o arquivo ta-api-hub.xml, localizado no diretório de instalação do TOTVS Agro API Hub


Configuração das propriedades SSL
Antes da instrução -jar do arquivo de configuração, adicione as seguintes propriedades:

-Dserver.ssl.enabled=true → Habilita o protocolo SSL no servidor.

-Dserver.ssl.key-store → Define o caminho absoluto do arquivo .pfx que será utilizado.

-Dserver.ssl.key-store-password → Informa a senha do arquivo .pfx .

-Dserver.ssl.key-store-type=PKCS12 → Especifica o formato do arquivo de keystore utilizado (PKCS12)


A imagem abaixo apresenta um exemplo do processo de configuração.

O processo de conexão com a base do produto pode ser realizado por meio dos seguintes modelos:

  • Utilização do Owner do próprio produto
    Conectar-se utilizando o mesmo Owner do produto, acessando diretamente seus objetos na base de dados.


  • Utilização de um Owner diferente do produto
    Nesse cenário, é necessário utilizar o recurso do Oracle Logon Trigger. Esse mecanismo permite que o Owner definido acesse, de forma transparente, os objetos da base de dados do TOTVS Agro Bioenergia.


    CREATE OR REPLACE TRIGGER TRIGGER_NOME_EXEMPLO
      AFTER LOGON ON USUARIO_ORIGEM.SCHEMA
    BEGIN
         EXECUTE IMMEDIATE 'ALTER SESSION SET CURRENT_SCHEMA = USUARIO_DESTINO';
    END;



No PostgreSQL, quando a base de dados e o TOTVS Agro API Hub não estão no mesmo servidor, é necessário informar os IPs/DNS que podem acessar os schemas, deve ser realizada a seguinte configuração:

  • No arquivo pg_hba.conf

    • Caminho: /PostgreSQL/{versão_utilizado}/data/pg_hba.conf

    • TYPE: Define o tipo de conexão que a linha permite
    • DATABASE: Define a quais bancos de dados essa regra se aplica
    • USER: Define a quais usuários essa regra se aplica
    • ADDRESS: Indica de quais endereços IP a conexão pode ser feita
    • METHOD: Define o método de autenticação que será usado

Exemplo:

host    apihub          all          192.168.0.0/24          md5


Essas configurações vão depender muito do seu contexto e ambiente, mais informações, podem ser achados no link de documentação do PostgreSQL.

https://www.postgresql.org/docs/current/auth-pg-hba-conf.html



No Windows Server 2016, ocorre um erro ao tentar subir o serviço do TOTVS Agro API Hub após realizar alguma alteração no arquivo ta-api-hub.xml.

Este erro é sistêmico no Windows Server 2016, sendo necessário, como alternativa, reinstalar o serviço do TOTVS Agro API Hub.

Para realizar este processo, podemos seguir da seguinte forma:

  • Executar o arquivo unistall.bat

    • Caso ainda fique instalado o serviço, reinicie o Windows Server 2016

  • Após, execute o arquivo install-service-only.bat
    • Se não iniciar o serviço automaticamente, acesse a página de Serviços do Windows Server 2016 e inicie o serviço do TOTVS Agro API Hub manualmente.



  1. Para alterar o clientId e clientSecret padrão, primeiro devemos gerar as novas credenciais através do ta-api-hub-encrypt.jar
  2. Com as credenciais geradas, devemos acrescentar ou modificar o argumento na tag <arguments> </arguments> no arquivo de configuração ta-api-hub.xml

    <arguments>
     -Dta-api-hub.credentials.client-id=ENC(VGnuE7ODZpa8Sj2OFC/bQt5NwBAZQntbLBCDF/myCkqmN0r5tduQhF9mdbGd5ez+)
     -Dta-api-hub.credentials.client-secret=ENC(yullLPu69+0RBWHWcNjwLFJPsdmPPXVr6HuFz6G+E5fResQ0gIGIRZZX3L+iWSiT)
    </arguments>
  3. Pronto, agora para realizar um teste, basta codificar SEU_CLIENT_ID:SEU_CLIENT_SECRET (no exemplo: teste:teste:123) para Base64
  4. Agora basta chamar http://SEU_IP:SUA_PORTA/oauth2/token enviando no Headers
    1. Key: Authorization
    2. Value: Basic dGVzdGU6dGVzdGUxMjM=



Esta atualização adiciona suporte para múltiplas conexões de banco de dados de produtos externos no TOTVS Agro API Hub (mínimo 1, máximo 3) , permitindo integração simultânea com Bioenergia , Indústria PI e Indústria MI . A configuração da base de Bioenergia é obrigatória , enquanto Indústria PI e Indústria MI são opcionais. A seguir, será demonstrado como o XML de argumentos deve ser ajustado, mostrando o antes e depois da atualização para garantir a compatibilidade.


Como era antes:

Como ficou:


Para ajustar o XML de argumentos:

  1. Localize as propriedades antigas que começaram com -Dta-api-hub.product...

  2. Ajuste para o novo padrão: -Dta-api-hub.products.<produto>..., conforme mostrado na imagem de exemplo;
  3. Para cada produto que deseja ativar (bioenergia, industria-pi, industria-mi), repita o bloco de propriedades, atualizando <produto> pelo nome correspondente e preenchendo os dados necessários;
  4. Caso não utilize algum produto, ajuste a propriedade -Dta-api-hub.products.<produto>.enabled =false;
  5. A propriedade default-instance foi movida para o nível do ta-api-hub:
    1. Antes: -Dta-api-hub.product.default-instance;
    2. Agora: -Dta-api-hub.default-instance e -Dta-api-hub.default-company.
  6. Após configurar e salvar o ta-api-hub.xml , execute o uninstall.bat para remover o serviço antigo. Em seguida, execute install-service-only.bat para instalar o serviço com a nova configuração.


Observação: Esta explicação se aplica à instalação do ta-api-hub utilizando os arquivos .bat.