Árvore de páginas

Objetivo

  1. Visão Geral
  2. Exemplo de utilização
  3. Tela de propriedades JWT
  4. Documentos auxiliares

01. VISÃO GERAL


Possibilitar a configuração e gerenciamento do JWT. Neste CARD estão contidas as informações para integração do JWT.



02. Exemplo de Utilização


A configuração das propriedades JWT no DTS4THF corresponde as informações do CARD JWT.

Essas informações devem ser preenchidas utilizando o CARD Propriedades Jwt, alocado no programa de Propriedade do Sistema do produto:


Aviso

A tela JWT já está desenvolvida, porém pode ser que não seja apresentada no card adequado. Caso isso ocorra, deve-se atribuir uma permissão do usuário ao programa "propriedades-jwt".

03. Tela de propriedades JWT



      • Aba "Mingle"

PropriedadesDescrição
URL do certificado (Mingle)

URL utilizada para carregar o certificado do Mingle.

Este é um certificado externo e o Datasul o utiliza para a resolução do token's JWT com o intuito de resgatar o código do App utilizado para o licenciamento.

A chave pública para validação da assinatura JWT está disponível em: Controle de Licenças dos Aplicativos 

Dica

Para mais informações, consultar o link: https://tdn.totvs.com/pages/releaseview.action?pageId=682055442


      • Aba "Datasul"

Aviso

O cadastro dos alias relacionados aos certificados somente possuem a característica de decodificação do token JWT para as origens de autorização de acesso ou licenciamento.

Caso o token JWT for gerado pelos endpoints /accesstoken (autorização acesso) ou /accesskey (licenciamento), sempre será considerado o certificado nativo do produto, ignorando todos os demais cadastrados nesta tela.

PropriedadesDescrição
Audiência (aud)
Identificador servidor

Valor relacionado ao atributo aud do Token JWT gerado. 

Caso não seja preenchido, o atributo aud será o nome do servidor no qual foi efetuada a requisição.

Trecho da RFC000015 - Padronização do JWT

"...O campo aud deverá conter o domínio referente a aplicação destino. Cada resource server deverá validar o campo aud através do framework.

Cada JWT deverá ser criado com um resource server não podendo ser aceito em outro lugar. Se o client precisa chamar dois resource server o mesmo deverá gerir 2 tokens de acesso..."

Identificador servidor (Externo)

Valor relacionado ao atributo aud do Token JWT gerado. 

Caso não preenchido, seguirá as regras descritas do campo Identificador servidor.

Caso preenchido, substituirá qualquer valor do Identificador servidor.

Dica

Utilizar este campo em ambientes que possuam diversos servidores Web (Tomcat) com o redirecionamento por um balancer (ou proxy), pois assim todos os servidores retornarão o mesmo valor preenchido em Identificador servidor (Externo), onde seriam considerados como uma única farm.

Tenant ID

Tenant ID

Identificador do tenantId que será gerada na Claim do token JWT

Nota

A partir da release 12.1.2403, o campo TenantId (antes relacionado ao código da empresa) passou a ser parametrizável de acordo com este campo.

Para o GUID da empresa, deve-se considerar o atributo companyId.

Exemplo:

Validade
Expiração Access Token

Tempo (em segundos) de validade do Token de acesso JWT.

Caso este campo não esteja preenchido, é assumido o valor padrão de 1800 segundos (30 minutos).

Expiração Refresh Token

Tempo (em segundos) de validade do Token de refresh JWT.

Caso este campo não esteja preenchido, é assumido o valor padrão de 1800 segundos (30 minutos).

Cadastro de alias JWT
Alias

Cria uma lista com os "Alias" correspondentes aos certificados, no qual podem ser utilizados para decodificação do Token JWT para licenciamento ou autorização de acesso a um recurso.

Utilizar somente um alias JWT
"Seleção"

Ativa ou desativa a validação por um único alias, tanto para validações de licenciamentos quanto para autorizações de acesso.

  • Quando o parâmetro estiver ativado, é obrigatório informar o alias no combo-box que será considerado para a decodificação do JWT;
    • Os valores disponíveis no combo-box será preenchido automaticamente de acordo com a lista de alias apresentado no Cadastro de alias JWT.
  • Caso o parâmetro esteja desativado, o token JWT pode ser decodificado com qualquer alias da lista apresentada anteriormente.

Informação

Independentemente da quantidade de alias presente na lista, será realizada a validação pelo certificado "nativo" do Datasul quando esta chave estiver desabilitada.


Alias

Alias único que será considerado caso o campo Utilizar somente um alias JWT estiver habilitado.

Nota

Quando preenchido o valor, não será considerado o certificado nativo do Datasul para a decodificação do JWT em autorizações de acesso.

Caso o token seja de licenciamento, sempre é efetuada a tentativa de decodificação pelo certificado nativo.

EmissorValor relacionado ao atributo issuer e iss do Token JWT gerado, os dois possuem valor fixo datasul

Dica

Para mais informações do uso em autorizações de acesso, consultar o link: https://tdn.totvs.com/pages/releaseview.action?pageId=546255442

Caso o token JWT seja utilizado para licenciamento sem a utilização do Mingle, consultar o link: https://tdn.totvs.com/pages/releaseview.action?pageId=682055506

  • Aba "Certificados"


PropriedadesDescrição
Diretório

Diretório onde é salvo o arquivo de certificados (JKS)

Informação

Caso este campo não for preenchido, o arquivo será gerado no diretório do Tomcat (.../temp/jwt-jks)

Senha

Senha do arquivo JKS

Informação

É recomendada a definição de uma senha. Caso não seja definido, o produto atribuirá uma senha padrão.

(Botão) Gerar JWKS

Ação de gerar o certificado para uso posterior no token JWT

Tabela
Alias

Identificador do certificado gerado

Data Criação

Data / Hora em que o certificado foi gerado

(Ação) Habilitar

Ação para definir que os tokens JWT serão gerados por este certificado

(Ação) Desabilitar

Ação para desabilitar a geração do token com base neste certificado

Informação

A autorização de acesso considera todos os certificados, mesmo os desabilitados  

(Ação) Excluir

Ação para remover o certificado gerado dinamicamente

Informação

Ao excluir um certificado, o acesso ao endpoint com um token JWT gerado por este, não será autorizado.

Dica

Para mais informações quanto a parametrização e uso dos certificados, consulte o link: [DTS4THF] Geração e uso de certificados em tokens JWT