Delphi JWT 서버

서버 측 JWT 검증이에요. TsgcHTTP_JWT_Server를 TsgcWebSocketHTTPServer에 연결하여 요청을 디스패치하기 전에 Authorization Bearer 토큰을 검증해요.

TsgcHTTP_JWT_Server

수신된 JWT를 서명 키(HMAC, RSA, ECDSA, EdDSA)에 대해 검증하고, exp/nbf/aud/iss 클레임을 확인하며, 일치하지 않는 토큰을 애플리케이션 계층을 위한 타입화된 이벤트로 거부해요.

컴포넌트 클래스

TsgcHTTP_JWT_Server

프로토콜

RFC 7519 (JWT)

플랫폼

Windows, macOS, Linux, iOS, Android

에디션

Enterprise

올리고, 서버에 연결하면, 모든 요청을 검증해요

TsgcHTTP_JWT_Server를 올리고, 검증 키(또는 JWKS URL)를 설정한 다음 TsgcWebSocketHTTPServer.JWT에 연결하세요. 들어오는 모든 요청이 자동으로 검증돼요.

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;

내부 구성

TsgcWebSocketHTTPServer 및 TsgcWebSocketServer 인증과 직접 통합되는 서버 측 JWT 검증기예요.

다중 알고리즘 검증

HS256/384/512, RS256/384/512, ES256/384/512, PS256/384/512, EdDSA를 지원해요. 키 교체를 위해 여러 키(kid로 색인)를 불러올 수 있어요.

표준 클레임 검사

Verify.Issuer, Verify.Audience, Verify.Subject, Verify.NotBefore, Verify.ExpirationTime은 기본적으로 모두 수신 페이로드에 대해 검사해요.

JWKS 엔드포인트

Point JWTOptions.JWKS.URL을 발급자의 JWKS 엔드포인트로 지정하세요. 컴포넌트가 공개 키를 가져와 캐시하고, 각 토큰 헤더의 JWK kid에 따라 키를 교체해요.

실패 이벤트

OnAuthError는 거부 사유(서명 불일치, 만료, audience 불일치)를 알려줘요. 401로 응답할지 대체 처리할지는 앱이 결정해요.

WebSocket 훅

TsgcWebSocketServer에서도 동작해요. WebSocket 업그레이드 요청에 Authorization 헤더가 담겨 오고, JWT 서버가 OnConnect가 발생하기 전에 검증해요.

JWE 지원

암호화된 JWE 토큰은 설정된 개인 키로 그 자리에서 복호화하고 검증해요(RSA-OAEP, ECDH-ES 키 래핑, AES-CBC / AES-GCM 콘텐츠 암호화).

사양 및 참조

이 컴포넌트가 구현하는 표준의 공식 출처예요.

문서 및 데모

컴포넌트 레퍼런스 링크, 즉시 실행 가능한 데모 프로젝트, 체험판 다운로드를 제공해요.

온라인 도움말 — TsgcHTTP_JWT_Server 이 컴포넌트의 전체 속성, 메서드, 이벤트 레퍼런스예요.
Demo Project — Demos\20.HTTP_Protocol\05.JWT 즉시 실행 가능한 예제 프로젝트예요. sgcWebSockets 패키지에 포함돼 있어요 — 아래에서 체험판을 다운로드하세요.
기술 문서 (PDF) 이 컴포넌트의 기능, 빠른 시작, Delphi 및 C++ Builder 코드 샘플, 기본 출처 참조를 포함해요.
사용자 매뉴얼 (PDF) 라이브러리의 모든 컴포넌트를 다루는 종합 매뉴얼이에요.
최고의 가성비: All-Access모든 eSeGeCe 제품과 프리미엄 지원이 포함되어 연 €1,059부터 이용할 수 있어요.
All-Access 가격 보기

서버 측에서 JWT를 검증할 준비가 되셨나요?

무료 체험판을 내려받아 Delphi 서버에 JWT 검증을 추가해 보세요.