Histórico da Página
...
Aviso | ||
---|---|---|
| ||
O produto TOTVS Datasul disponibiliza a autenticação Json Web Token (JWT) para integração seguindo os padrões de mercado. Para integrações que utilizem de ferramentas APIs Gateways (ex:WSO2) é de responsabilidade dos provedores de tais ferramentas o suporte para esse tipo de configuração e uso. Para o produto TOTVS Datasul, esse documento define o que é necessário para que a comunicação aconteça de forma adequada. |
Premissas/Requisitos
...
- Utilização do API Manager (WSO2).
- Configuração API Manager para uso do token JWT
- O token deve conter o email do usuário, o mesmo do cadastro de usuário do produto.
Configuração
...
Utilização com API Manager WSO2
...
Com a API Manager previamente configurado, deve-se importar o certificado no cacert do "Java" no qual o servidor de aplicação foi inicializado, com o alias cadastrado em "Propriedades JWT" (apresentado posteriormente).
...
Dica | ||
---|---|---|
| ||
Para localizar o Java que iniciou o Apache Tomcat (servidor de aplicação), basta localizar por "Java Home" no arquivo "catalina.YYYY-MM-DD.log". Exemplo: Java Home: c:\Program Files\java\jdk1.8.0_101\jre O diretório onde estão os cerificados está em c:\Program Files\java\jdk1.8.0_101\jre\lib\security OBS: O caminho pode mudar conforme a versão do java. |
Bloco de código | ||
---|---|---|
| ||
# Verifica se existe o alias keytool -v -list -alias "<ALIAS_CERTIFICADO>" -keystore cacerts -storepass changeit # Importação para o cacerts keytool -v -import -noprompt -trustcacerts -alias "<ALIAS_CERTIFICADO>" -file <ARQUIVO_CERTIFICADO> -keystore cacerts -storepass changeit # Exclui o certificado do cacert keytool -delete -noprompt -alias "<ALIAS_CERTIFICADO>" -keystore cacerts -storepass changeit |
Utilização geração e validação "nativas" do produto Datasul
...
A partir da release 12.1.27, o produto Datasul disponibiliza a geração do token JWT e sua validação no acesso aos endpoints. Para isto, basta que seja efetuado uma requisição ao endpoint http://<SERVIDOR>:<PORTA>/api/auth/accesstoken, passando como parâmetros a autenticação por "Basic Authentication" um usuário e senha de acesso ao produto Datasul. Caso seja um usuário válido e autorizado a entrar no produto, será retornado o token JWT.
...
Exemplo requisição via Postman com usuário interno
<USUARIO>: Código do usuário (Interno) do ERP Datasul
<SENHA>: Senha do usuário (Interno) do ERP Datasul
Exemplo requisição via Postman com usuário externo
<USUARIO>: Login do usuário de rede (Active Directory)
<DOMINIO>: Domínio de rede do usuário
<SENHA>: Senha do usuário da rede (Active Directory)
Obs: Para o usuário externo é necessário configurar o LDAP.
De posse a este token JWT (com prazo de utilização por 1 hora), é permitido o acesso as requisições onde o token gerado deve ser repassado com a Header de Authorization via "Bearer Token".
Não é necessário efetuar o cadastro do alias para que seja realizada a validação por este cerificado (nativo no produto Datasul), porém a chave "Utilizar este Alias como default" (em versões superiores a 12.1.29, apresentado posteriormente) deve estar desativada.
Exemplo de acesso a endpoint com token JWT:
Importação de um certificado específico
...
A partir da release 12.1.29 da linha Datasul, foi disponibilizada uma tela (Propriedades JWT) para o cadastro dos "alias" específicos na resolução de um token JWT externo, onde o certificado deve estar previamente importado no cacerts (Java).
O campo "Alias Default" apresenta as opções passiveis de seleção, que por sua vez, pertencem a lista de "Alias" da própria tela. Em conjunto com a chave "Utilizar este Alias como default" ativam a validação do token JWT exclusivamente por este certificado.
Caso a opção "Utilizar este Alias como default" esteja desabilitado, o token JWT será validado por todos os alias cadastrados na lista.
o
Informações | ||
---|---|---|
| ||
Independentemente da quantidade de alias cadastrados na tela de "Propriedades JWT", será realizada a validação pelo certificado "nativo" do Datasul quando a chave "Utilizar este Alias como default" estiver desativada. |
Para mais informações do local de parametrização está disponível em: https://tdn.totvs.com/pages/releaseview.action?pageId=580483346
Funcionamento
...
Documentos relacionados
...