Conn2Flow
Navegação das docs

Referência / Bibliotecas

Biblioteca jwt.php

Tokens JWT HS256 com chaves simétricas versionadas no banco, rotação e período de carência. Não é o token de login do Gestor.

Caminho no Gestor bibliotecas/jwt.php

Gera e valida JWT HS256 com um conjunto de chaves simétricas guardado no banco, com rotação e período de carência.

Chaves

O conjunto fica em JSON na tabela variaveis (modulo='sistema', id='jwt_keys'), cada chave com key_id, key_secret (256 bits), created_at, status (active/expired) e expired_at. A primeira chamada a jwt_generate_token() cria a chave ativa se não houver nenhuma.

jwt_rotate_keys() expira a chave ativa, cria uma nova e apaga as expiradas cuja carência já passou. A carência é AUTH_JWT_GRACE_HOURS (padrão 24) horas contadas de expired_at.

Uso

gestor_incluir_biblioteca('jwt');
$token = jwt_generate_token(['sub' => $idUsuario, 'exp' => time() + 3600]);
try {
    $r = jwt_validate_token($token);          // ['status' => 'Active'|'Grace', 'payload' => [...]]
    if (($r['payload']['exp'] ?? 0) < time()) throw new Exception('Token expirado.');
    if ($r['status'] === 'Grace') { /* emitir um token novo */ }
} catch (Exception $e) {
    // malformado, kid desconhecido, assinatura inválida ou chave fora da carência
}

Outros detalhes:

  • iat é acrescentado se ausente; o cabeçalho leva kid com o key_id.

  • O alg do cabeçalho é ignorado (a verificação é sempre HMAC-SHA256), o que evita o ataque de troca de algoritmo.

  • As chaves secretas ficam em texto claro na tabela variaveis: quem lê o banco (ou um backup) consegue emitir tokens.

Auxiliares internos (usados pelas funções acima; raramente chamados direto): jwt_base64url_encode(), jwt_base64url_decode(), jwt_rotation_days(), jwt_grace_hours(), jwt_keys_load(), jwt_keys_save(), jwt_nova_chave(), jwt_get_active_key().

Funções

Gerado a partir de gestor/bibliotecas/jwt.php · 11 funções

11 de 11

jwt_rotate_keys

ver no código · linha 216 ↗
jwt_rotate_keys(): array

Rotaciona as chaves JWT: marca a ativa como expirada, gera uma nova ativa e purga as chaves expiradas que já ultrapassaram o período de carência.

Retorno

array
A nova chave ativa.

O Futuro é Híbrido: Humano + IA.

O Conn2Flow é a ferramenta. Se você precisa do Arquiteto para desenhar a estratégia da sua empresa usando essa tecnologia...

Contrate Consultoria Especializada