eSeGeCe — Delphi ve .NET için Kurumsal İletişim Bileşenleri
ÖNE ÇIKAN · sgcAuth

OAuth2 ve JWT, Delphi'de yerel

İki bileşen, modern kimlik doğrulamanın token tarafını uygulamanızın içine taşır. TsgcHTTP_OAuth2_Client, herhangi bir OAuth2/OIDC sağlayıcısına karşı Authorization Code, PKCE, Client Credentials, Resource Owner Password ve Device Code akışlarını çalıştırır. TsgcHTTP_JWT_Client, JSON Web Token'ları tek başına ya da WebSocket ve HTTP istemcileriniz için Bearer token kaynağı olarak oluşturur, imzalar ve doğrular. Bağımsız olarak, sgcWebSockets Core çalışma zamanı dahildir.

  • 2 istemci bileşeni
  • OAuth2 · JWT · WebAuthn
  • 9 uygulanan RFC
  • Delphi 7'den 13'e · C++ Builder

İki Bileşen, Token Yaşam Döngüsünün Tamamı

sgcAuth bağımsız bir pakettir. Üzerine kurulduğu sgcWebSockets Core çalışma zamanını pakete dahil eder ve her lisans tam kaynak koduyla gelir; böylece token değişimlerinde kendi hata ayıklayıcınızla adım adım ilerleyebilirsiniz.

2 İstemci bileşeni TsgcHTTP_OAuth2_Client ve TsgcHTTP_JWT_Client, tek bir palet sayfasında.
9 Uygulanan RFC OAuth2, PKCE, DPoP, Device Code, JWT/JWS/JWE ve daha fazlası.
5 Hedef platform Tek bir kaynak ağacından Windows, macOS, Linux 64-bit, iOS ve Android.
1 Bağımsız kurulum paketi sgcWebSockets Core çalışma zamanı ve HTTP/TLS katmanı, ikisi de pakete dahildir.
100% Kaynak kodu dahil Her lisans, her iki bileşenin ve pakete dahil çalışma zamanının tam kaynağını içerir.
sgcAuth

Delphi ve C++ Builder için OAuth2 istemcisi, JWT istemcisi ve WebAuthn passkey desteği. sgcWebSockets Core çalışma zamanının pakete dahil olduğu bağımsız bir paket, tam kaynak kodu ve telifsiz dağıtım.

İş Başına Bir Bileşen, Tek API Stili

Bir bileşeni bir forma bırakın, sağlayıcı ya da anahtar bilgilerini ayarlayın, olayları bağlayın, ardından Start ya da Sign'ı çağırın. Adlandırma her ikisinde de tutarlıdır; bu yüzden bir kimlik doğrulama akışı, hangi grant ya da algoritmayı kullanırsa kullansın aynı okunur.

OAuth2

Beş Akış Tipi, Tek Bileşen

TsgcHTTP_OAuth2_Client, OAuth2Options.GrantType'ı; güvenilir sunucu taraflı uygulamalar için auth2Code, yerel, mobil ve tek sayfa uygulamalar için auth2CodePKCE, daemon'lar ve servis hesapları için auth2ClientCredentials, auth2ResourceOwnerPassword ve akıllı TV'ler, kiosklar ve diğer girdi kısıtlı cihazlar için auth2DeviceCode (RFC 8628) üzerinden çalıştırır. Start, sistem tarayıcısını açar ve yönlendirmeyi yakalamak için LocalServerOptions'tan küçük bir yerel HTTP sunucusu ayağa kaldırır, kodu düz HTTPS üzerinden bir token ile değiştirir. Bundan sonra token yaşam döngüsünü Refresh, Revoke ve Introspect kapsar; bunu gerektiren sağlayıcılar için DPoPOptions ise proof-of-possession (RFC 9449) ekler.

OAuth2 istemcisini görüntüleyin →
JWT

İmzalayın, Ekleyin ya da Doğrulayın, Seçim Sizin

TsgcHTTP_JWT_Client, RFC 7519'un ihtiyaç duyduğu her şeyi JWTOptions üzerinden yayınlar: JOSE Header, kayıtlı Payload talepleri (iss, sub, aud, exp, nbf, iat, jti, artı özel talepler) ve HMAC, RSA ve ECDSA için anahtar malzemesi. Doğrudan compact-serialization token'ı geri almak üzere Sign'ı çağırın, ya da RefreshTokenAfter'ı ayarlayın ve bileşenin otomatik olarak yeniden imzalamasına izin verin. Aynı bileşen, TsgcWebSocketClient, TsgcHTTP1Client ve TsgcHTTP2Client üzerindeki Authentication.Token.JWT'ye doğrudan takılır; böylece giden her istek taze bir Bearer token taşır.

JWT istemcisini görüntüleyin →
WebAuthn

Passkey'ler, sgcCustomIndy Aracılığıyla

Parolasız oturum açma, sgcCustomIndy'nin eklenti olarak sunduğu yamalanmış Indy kitaplığı üzerine kurulu bir sgcWebSockets Enterprise/All-Access bileşeni olan TsgcWSAPIServer_WebAuthn tarafından sağlanır. sgcAuth sipariş edildiğinde otomatik olarak eklenir.

Neler yapabildiğini görün →
Kullanım senaryoları

Oturum Açma, Servis Hesapları ve Kendi API'leriniz

Google veya Microsoft ile oturum açma, sunucudan sunucuya API erişimi, akıllı TV'ler ve kiosklar, yeniden yönlendirmeden uzun oturumlar ve kendi WebSocket ve HTTP API'leriniz için Bearer token'lar. Her iki bileşen de bir VCL ya da FMX uygulaması, bir hizmet ya da bir konsol süreci içinde sorunsuz çalışır.

Özellik matrisi →
Çok platformlu

Saf HTTPS ve İmzalama, Yerel Kitaplık Yok

Hiçbir bileşen, Core çalışma zamanının HTTP istemci yığını ve platformun kripto ilkellerinin ötesinde bir şeye bağımlı değildir; bu yüzden ikisi de Delphi'nin çalıştığı her yerde derlenir ve çalışır. Delphi 7'den RAD Studio 13'e ve C++ Builder'da.

Özellik matrisi →

Her bileşen için referans sayfaları:

Bir Token Alın, Bir Token İmzalayın

Seçenekleri yapılandırın, ardından bir metot çağırın. Her iki bileşen de Delphi 7'den 13'e ve C++ Builder'da derlenir, aynı özellikler .NET'te de sunulur.

uses
  sgcHTTP_OAuth2_Client;
var
  OAuth2: TsgcHTTP_OAuth2_Client;
begin
  OAuth2 := TsgcHTTP_OAuth2_Client.Create(nil);
  OAuth2.OAuth2Options.GrantType := auth2CodePKCE;
  OAuth2.OAuth2Options.ClientId := 'your-client-id';
  OAuth2.AuthorizationServerOptions.AuthURL := 'https://provider.com/oauth2/authorize';
  OAuth2.AuthorizationServerOptions.TokenURL := 'https://provider.com/oauth2/token';
  OAuth2.AuthorizationServerOptions.Scope.Text := 'openid profile';
  OAuth2.LocalServerOptions.IP := '127.0.0.1';
  OAuth2.LocalServerOptions.Port := 8080;

  OAuth2.OnAfterAccessToken := OAuth2AccessToken;
  OAuth2.Start;   // opens the browser; the redirect lands on the local server
end;

procedure TForm1.OAuth2AccessToken(Sender: TObject);
begin
  Memo1.Lines.Add('Access token received.');
end;
uses
  sgcHTTP_JWT_Client;
var
  JWT: TsgcHTTP_JWT_Client;
begin
  JWT := TsgcHTTP_JWT_Client.Create(nil);
  JWT.JWTOptions.Header.alg := jwtHS256;
  JWT.JWTOptions.Algorithms.HS.Secret := '79F66F1E-E998-436B-8A0A-3E5DEFA4FD9E';
  JWT.JWTOptions.Payload.iss := 'your-service';
  JWT.JWTOptions.Payload.sub := '1234567890';
  JWT.JWTOptions.Payload.iat := DateTimeToUnix(Now);

  ShowMessage(JWT.Sign);

  // or attach it to a WebSocket / HTTP client directly:
  // Client.Authentication.Token.Enabled := True;
  // Client.Authentication.Token.JWT := JWT;
end;

Object Pascal'da ve C++ Builder'da aynı şekil. Tam özellik matrisi →

Önce Bilmeye Değer Üç Şey

sgcAuth'un sizden ne istediği, bu bileşenlere zaten sahip olup olmadığınız ve WebAuthn'in üstüne ne gerektirdiği. Üç yanıt da kısa ve üçü de küçük yazılarda değil, bu sayfadadır.

Bileşenler ve akış tipleri
iş           bileşen                  akışlar / algoritmalar
OAuth2       TsgcHTTP_OAuth2_Client   Code, PKCE, Client Credentials,
                                       Resource Owner Password, Device Code
JWT          TsgcHTTP_JWT_Client      HS256/384/512, RS256/384/512, ES256/384/512

zaten sahip misiniz?
Hem OAuth2 Client hem de JWT Client, sgcWebSockets
  içinde Standard sürümünden itibaren gelir.
sgcAuth, tam bir sgcWebSockets sürümü lisanslamadan
  OAuth2 + JWT lisanslamak içindir.

sgcAuth bağımsızdır

Bağımsız olarak, sgcWebSockets Core çalışma zamanı pakete dahildir: her iki bileşenin de token isteklerini POST ettiği HTTP/TLS istemci yığını ve yanıtları ayrıştıran JSON altyapısı. Tek kurulum paketi, kutuda tam kaynak kodu.

sgcWebSockets sürümünüzde zaten var mı?

Hem OAuth2 Client hem de JWT Client, sgcWebSockets içinde Standard sürümünden itibaren gelir; bu yüzden herhangi bir sgcWebSockets sürümüne sahipseniz her iki bileşene de zaten sahipsinizdir. sgcAuth, tam tersi durum için vardır: tam bir sgcWebSockets sürümü lisanslamadan OAuth2 ve JWT istemci desteği.

WebAuthn, sgcCustomIndy gerektirir

Parolasız oturum açma, TsgcWSAPIServer_WebAuthn tarafından sağlanır; sgcCustomIndy'nin eklenti olarak sunduğu yamalanmış Indy kitaplığı üzerine kurulu bir sgcWebSockets Enterprise/All-Access bileşenidir. WebAuthn, sgcCustomIndy eklentisini gerektirir; sgcAuth sipariş edildiğinde bu otomatik olarak eklenir. Zaten bir sgcCustomIndy lisansına mı sahipsiniz? Ödeme öncesi sepetinizden otomatik eklenen satırı kaldırın, her iki durumda da ek ücret yoktur.

Delphi ve C++ Builder

sgcAuth, Delphi 7'den RAD Studio 13'e ve C++ Builder'ı hedefler. Ücretsiz deneme kurulum paketi, sgcWebSockets All-Access deneme sürümüdür; böylece her iki bileşen de bugün değerlendirilebilir.

PKCE Device Code DPoP HMAC · RSA · ECDSA Tam kaynak

Her bileşen ve özellik →

sgcAuth, bir satıcı SDK'sını sarmalamak yerine yayımlanmış OAuth2/OIDC ve JWT/JWS standartlarıyla konuşur; bu yüzden sağlayıcı sizin seçiminizdir: Google, Microsoft, Auth0, Okta, Keycloak ya da RFC uyumlu herhangi bir yetkilendirme sunucusu. Akışlar, yenileme, iptal ve imzalama, hepsi birinci sınıf metotlar ve olaylardır; tam kaynak kodu ise aradaki hiçbir şeyin kara kutu olmadığı anlamına gelir.

On İki Kütüphane, Tek Araç Kutusu

sgcAuth, Delphi, C++ Builder ve .NET için on iki eSeGeCe bileşen kitaplığından biridir. Aynı kuralları paylaşırlar, tam kaynak koduyla gelirler ve telifsiz dağıtılırlar.

sgcAuth

Delphi ve C++ Builder için OAuth2 istemcisi, JWT istemcisi ve WebAuthn desteği. Bağımsız ürün, sgcWebSockets Core çalışma zamanı pakete dahildir.

Daha fazla bilgi →

sgcHTTP

Delphi ve C++ Builder için HTTP/2 istemcisi, gRPC istemcisi ve Google Cloud Pub/Sub, Calendar ve FCM istemcileri. Bağımsız ürün, sgcWebSockets Core çalışma zamanı pakete dahildir.

Daha fazla bilgi →

sgcWebSockets

Delphi, C++ Builder, Lazarus ve .NET için WebSocket, HTTP/2, MQTT, AMQP, WebRTC, yapay zeka ve 30+ API entegrasyonu. Core çalışma zamanının bulunduğu yer burasıdır.

Daha fazla bilgi →

sgcMQ

Delphi ve C++ Builder için MQTT, AMQP 0.9.1 ve 1.0, Apache Kafka ve STOMP istemci bileşenleri. Bağımsız ürün, sgcWebSockets Core çalışma zamanı pakete dahildir.

Daha fazla bilgi →

sgcSocial

Delphi ve C++ Builder için Telegram ve WhatsApp Business istemci bileşenleri. Bağımsız ürün, sgcWebSockets Core çalışma zamanı pakete dahildir.

Daha fazla bilgi →

sgcHTML

Bootstrap 5 ve htmx üzerinde sunucu tarafı HTML ve arayüz bileşenleri, WebAuthn login arayüz bileşeni dahil.

Daha fazla bilgi →

sgcQUIC

WebTransport dahil, ham QUIC taşıması ve bir HTTP/3 istemcisi ve sunucusu. sgcWebSockets Enterprise'a bir eklenti.

Daha fazla bilgi →

sgcAI

Delphi ve C++ Builder için yapay zeka, LLM ve MCP bileşenleri. Tek bir bileşenin arkasında yedi LLM sağlayıcısı, ayrıca MCP, embeddings ve konuşma. Bağımsız ürün, sgcWebSockets Core çalışma zamanı pakete dahildir.

Daha fazla bilgi →

sgcOpenAPI

OpenAPI 3.x ayrıştırıcısı, yerel Pascal SDK üreticisi, OpenAPI sunucu bileşeni ve 1.195+ önceden oluşturulmuş bulut SDK'si.

Daha fazla bilgi →

sgcSign

Belgeler için XAdES, PAdES, CAdES ve ASiC; kod için Authenticode, ClickOnce, NuGet ve VSIX.

Daha fazla bilgi →

sgcBiometrics

Delphi ve C++ Builder için Windows Hello, parmak izi sensörleri ve Windows Biometric Framework.

Daha fazla bilgi →

sgcIndy

Delphi 7'den 13'e modern TLS, IPv6 ve HTTP/2 ile güncellenmiş Indy TCP/IP bileşenleri.

Daha fazla bilgi →

Fiyatlandırmayı ve lisansları görüntüleyin Ücretsiz denemeyi indirin

Geliştiriciler Ne Diyor

Dünya çapında Delphi, C++ Builder, Lazarus ve .NET geliştiricilerinin güvendiği.

sgcWebSockets kütüphaneniz çok kullanışlı ve kurulumu kolay. İyi çalışmalarınızı sürdürün!

Simone Moretti Delphi Geliştiricisi

sgcWebSockets harika ve desteğiniz en iyisi!

Christian Meyer Kurucu ve CTO

Yardımınız ve desteğiniz için çok teşekkürler, bileşenlerinize bayılıyorum.

Mark Steinfeld CTO

eSeGeCe'nin Kimlik Doğrulama görünümünü görüyorsunuz.

Bana başka bir açı gösterin →

Bir Token Kitaplığı Değil, Kimlik Doğrulama Gönderin

Tek pakette OAuth2 ve JWT; sgcWebSockets Core çalışma zamanı pakete dahil ve kutuda tam kaynak kodu.