JWT Server
Validação de JWT no servidor. Conecte o TsgcHTTP_JWT_Server a um TsgcWebSocketHTTPServer para verificar tokens Authorization Bearer antes de despachar as requisições.
Validação de JWT no servidor. Conecte o TsgcHTTP_JWT_Server a um TsgcWebSocketHTTPServer para verificar tokens Authorization Bearer antes de despachar as requisições.
Verifica JWTs de entrada em relação às suas chaves de assinatura (HMAC, RSA, ECDSA, EdDSA), confere as claims exp/nbf/aud/iss e rejeita tokens com falha por meio de um evento tipado para a camada da aplicação.
TsgcHTTP_JWT_Server
Windows, macOS, Linux, iOS, Android
Enterprise
Solte um TsgcHTTP_JWT_Server, configure as chaves de verificação (ou uma URL JWKS) e vincule ao TsgcWebSocketHTTPServer.JWT — todas as requisições recebidas são validadas automaticamente.
uses
sgcWebSocket, sgcHTTP;
var
Server: TsgcWebSocketHTTPServer;
JWT: TsgcHTTP_JWT_Server;
begin
JWT := TsgcHTTP_JWT_Server.Create(nil);
JWT.JWTOptions.Algorithms.HS.Secret := 'shared-secret';
JWT.JWTOptions.Verify.Issuer := 'auth.example.com';
JWT.JWTOptions.Verify.Audience := 'api.example.com';
Server := TsgcWebSocketHTTPServer.Create(nil);
Server.Port := 8443;
Server.SSL := True;
Server.Authentication.JWT.Enabled := True;
Server.Authentication.JWT.Server := JWT;
Server.Active := True;
end;
// uses: sgcWebSocket, sgcHTTP
TsgcHTTP_JWT_Server *JWT = new TsgcHTTP_JWT_Server(this);
JWT->JWTOptions->Algorithms->HS->Secret = "shared-secret";
TsgcWebSocketHTTPServer *Server = new TsgcWebSocketHTTPServer(this);
Server->Authentication->JWT->Enabled = true;
Server->Authentication->JWT->Server = JWT;
Server->Active = true;
Verificador JWT no servidor que se integra diretamente à autenticação do TsgcWebSocketHTTPServer e TsgcWebSocketServer.
Suporta HS256/384/512, RS256/384/512, ES256/384/512, PS256/384/512 e EdDSA. Múltiplas chaves (indexadas por kid) podem ser carregadas para rotação de chaves.
Verify.Issuer, Verify.Audience, Verify.Subject, Verify.NotBefore, Verify.ExpirationTime são todos verificados no payload recebido por padrão.
Aponte JWTOptions.JWKS.URL para um endpoint JWKS do emissor — o componente busca as chaves públicas, faz cache e as rotaciona conforme o kid JWK no cabeçalho de cada token.
OnAuthError expõe o motivo da rejeição (assinatura inválida, expirado, audience incompatível); sua aplicação decide se retorna 401 ou faz fallback.
Funciona também para TsgcWebSocketServer — o upgrade WebSocket carrega o cabeçalho Authorization, e o servidor JWT verifica antes de disparar OnConnect.
Tokens JWE criptografados são decodificados e verificados inline usando a chave privada configurada (wrap de chave RSA-OAEP, ECDH-ES; criptografia de conteúdo AES-CBC / AES-GCM).
Acesse a referência do componente, obtenha o projeto demo pronto para executar e baixe a versão de avaliação.
| Ajuda online — TsgcHTTP_JWT_Server Referência completa de propriedades, métodos e eventos deste componente. | Abrir | |
| Projeto de demonstração — Demos\20.HTTP_Protocol\05.JWT Projeto de exemplo pronto para executar. Acompanha o pacote sgcWebSockets — baixe a versão de avaliação abaixo. | Abrir | |
| Documento técnico (PDF) Recursos, início rápido, exemplos de código para Delphi & C++ Builder e referências de fontes primárias — somente este componente. | Abrir | |
| Manual do usuário (PDF) Manual abrangente cobrindo todos os componentes da biblioteca. | Abrir |