JWT İstemcisi
Delphi/C++Builder'dan JSON Web Token'larını oluşturun, imzalayın ve doğrulayın. HMAC, RSA ve ECDSA imzaları, PASETO tarzı şifreli JWE, otomatik yenileme ve TsgcHTTP2Client / TsgcHTTPComponentClient ile kolay entegrasyon.
Delphi/C++Builder'dan JSON Web Token'larını oluşturun, imzalayın ve doğrulayın. HMAC, RSA ve ECDSA imzaları, PASETO tarzı şifreli JWE, otomatik yenileme ve TsgcHTTP2Client / TsgcHTTPComponentClient ile kolay entegrasyon.
HS256/HS384/HS512, RS256/RS384/RS512, ES256/ES384, EdDSA token'larını imzalayın; gelen JWT'leri çözün; sona erme süresine yaklaşırken otomatik yenileyin; Authentication.Token.JWT aracılığıyla HTTP ve HTTP/2 istemcileriyle eşleştirin.
TsgcHTTP_JWT_Client
Windows, macOS, Linux, iOS, Android
Professional / Enterprise
Header.alg, Payload.iss / iat / exp değerlerini ayarlayın, imzalama anahtarını yükleyin, ardından JWT istemcisini bearer token kaynağı olarak HTTP / HTTP/2 / WebSocket bileşeninize ekleyin.
uses
sgcHTTP, sgcBase_Helpers;
var
JWT: TsgcHTTP_JWT_Client;
begin
JWT := TsgcHTTP_JWT_Client.Create(nil);
JWT.JWTOptions.Header.alg := jwtES256;
JWT.JWTOptions.Header.kid := 'apple-key-id';
JWT.JWTOptions.Payload.iss := 'team-id';
JWT.JWTOptions.Payload.iat := StrToInt64(GetDateTimeUnix(Now, False));
JWT.JWTOptions.Algorithms.ES.PrivateKey.LoadFromFile('AuthKey_XXX.p8');
JWT.JWTOptions.RefreshTokenAfter := 40 * 60; // auto-mint every 40 min
ShowMessage(JWT.Token);
end;
// uses: sgcHTTP
TsgcHTTP_JWT_Client *JWT = new TsgcHTTP_JWT_Client(this);
JWT->JWTOptions->Header->alg = jwtES256;
JWT->JWTOptions->Header->kid = "apple-key-id";
JWT->JWTOptions->Payload->iss = "team-id";
JWT->JWTOptions->Algorithms->ES->PrivateKey->LoadFromFile("AuthKey_XXX.p8");
ShowMessage(JWT->Token);
HMAC, RSA, ECDSA ve EdDSA imzaları, otomatik yenileme ve HTTP / HTTP/2 / WebSocket bileşenlerine temiz bir devir ile tipli bir JWT oluşturma ve doğrulama bileşeni.
JWTOptions.Header.alg HS256/384/512, RS256/384/512, ES256/384/512, PS256/384/512 veya EdDSA seçer. Anahtarlar PEM, P8 veya bellek içi akışlardan yüklenir.
JWTOptions.Payload.iss, sub, aud, exp, nbf, iat, jti RFC 7519 ile eşleşen tipli özelliklerdir — ayrıca satıcı uzantıları için serbest biçimli bir CustomClaims.
RefreshTokenAfter bileşene N saniye sonra yeni bir JWT oluşturmasını söyler — Apple'ın bir saat içinde döndürülmesini beklediği APNs ES256 token'ları için kullanışlıdır.
Decode(token) gelen bir JWT'yi ayrıştırır ve imzayı yapılandırılan anahtarlara karşı doğrular; OnVerify başarı/başarısızlık ve ayrıştırılan yük ile tetiklenir.
RFC 7516'ya göre şifreli JWT'ler (JWE) desteklenir: AES-CBC, AES-GCM, RSA-OAEP ve ECDH-ES anahtar sarmalama.
Authentication.Token.JWT ayarlayarak TsgcHTTP2Client veya TsgcHTTPComponentClient ile eşleştirin — giden her istek yeni imzalanmış bir bearer token alır.
Bileşen referansına doğrudan bağlanın, kullanıma hazır demo projesini alın ve denemeyi indirin.
| Çevrimiçi Yardım — TsgcHTTP_JWT_Client Bu bileşen için tam özellik, metot ve olay referansı. | Aç | |
| Demo Projesi — Demos\20.HTTP_Protocol\05.JWT Kullanıma hazır örnek proje. sgcWebSockets paketi içinde gelir — aşağıdan denemeyi indirin. | Aç | |
| Teknik Belge (PDF) Delphi ve C++ Builder için özellikler, hızlı başlangıç, kod örnekleri ve birincil kaynak referansları — yalnızca bu bileşen. | Aç | |
| Kullanıcı Kılavuzu (PDF) Kütüphanedeki her bileşeni kapsayan kapsamlı kılavuz. | Aç |