OAuth 2.0 İstemcisi

OAuth 2.0 / OAuth 2.1 istemci bileşeni — PKCE ile Authorization Code, Client Credentials, Device Code, refresh-token döndürme ve yerleşik tarayıcı akışı.

TsgcHTTP_OAuth2_Client

OAuth 2.0 / 2.1 istemci tarafını uygular — Authorization Code (PKCE ile), Client Credentials, Device Code ve refresh-token akışlarını kapsar. Yönlendirme URI'si için küçük gömülü bir HTTP dinleyicisi içerir.

Bileşen sınıfı

TsgcHTTP_OAuth2_Client

Platformlar

Windows, macOS, Linux, iOS, Android

Sürüm

Standard / Professional / Enterprise

Sağlayıcıyı yapılandırın, akışı başlatın

ClientId / ClientSecret / Scope / Endpoints değerlerini yapılandırın (veya Google / Microsoft / GitHub için bir Provider hazır ayarı kullanın), StartAuthorization çağırın, ardından HTTP çağrılarınızda Token kullanın.

uses
  sgcHTTP;

var
  OAuth2: TsgcHTTP_OAuth2_Client;
begin
  OAuth2 := TsgcHTTP_OAuth2_Client.Create(nil);
  OAuth2.OAuth2Options.ClientId     := 'your-client-id';
  OAuth2.OAuth2Options.ClientSecret := 'your-client-secret';
  OAuth2.OAuth2Options.Scope        := 'profile email';
  OAuth2.OAuth2Options.RedirectURL  := 'http://localhost:5555/callback';
  OAuth2.OAuth2Options.AuthorizationURL := 'https://auth.example.com/authorize';
  OAuth2.OAuth2Options.TokenURL         := 'https://auth.example.com/token';
  OAuth2.OAuth2Options.PKCE := True;

  // Spawns the user browser at the auth URL
  OAuth2.StartAuthorization;
  // ... user logs in, browser is redirected to the callback URL
  // ... the component captures the code, exchanges for tokens

  ShowMessage(OAuth2.AccessToken);
end;
// uses: sgcHTTP
TsgcHTTP_OAuth2_Client *OAuth2 = new TsgcHTTP_OAuth2_Client(this);
OAuth2->OAuth2Options->ClientId     = "your-client-id";
OAuth2->OAuth2Options->ClientSecret = "your-client-secret";
OAuth2->OAuth2Options->Scope        = "profile email";
OAuth2->OAuth2Options->RedirectURL  = "http://localhost:5555/callback";
OAuth2->OAuth2Options->PKCE = true;
OAuth2->StartAuthorization();

İçeriğinde neler var

OAuth 2.0 istemci yüzeyini PKCE, refresh-token döndürme ve gömülü bir loopback yönlendirme dinleyicisi ile uygular.

Akışlar

Authorization Code (RFC 7636'ya göre isteğe bağlı PKCE ile), Client Credentials (RFC 6749 §4.4), Device Code (RFC 8628) ve Refresh Token (RFC 6749 §6) tipli metotlar olarak desteklenir.

Varsayılan olarak PKCE

OAuth2Options.PKCE değerini açın — bileşen code_verifier / code_challenge çiftini oluşturur ve bunları RFC 7636'ya göre dahil eder (OAuth 2.1'de zorunlu).

Sağlayıcı hazır ayarları

Kardeş bileşenler TsgcHTTP_OAuth2_Client_Google ve TsgcHTTP_OAuth2_Client_Microsoft, doğru uç noktalar ve kapsamlar önceden doldurulmuş olarak gelir. Diğer herkes için temel sınıfı kullanın.

Loopback yönlendirme dinleyicisi

Bileşen, yapılandırılan RedirectURL üzerinde küçük gömülü bir HTTP dinleyicisi başlatır, yetkilendirme kodunu yakalar, ardından dinleyiciyi kapatır — harici bir web sunucusu gerekmez.

Token kalıcılığı

SaveToFile / LoadFromFile refresh token'ı kalıcı hale getirir (yapılandırıldıysa beklemede şifrelenmiş) böylece kullanıcıya her uygulama başlatmasında sorulmaz.

HTTP / WebSocket için hazır eklenti

Authentication.Token.OAuth2 aracılığıyla TsgcHTTPComponentClient, TsgcHTTP2Client veya TsgcWebSocketClient ile eşleştirin — bearer token her isteğe otomatik olarak eklenir.

Spesifikasyonlar ve referanslar

Bu bileşenin uyguladığı standartlar için yetkili kaynaklar.

Belgeler ve Demolar

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_OAuth2_Client Bu bileşen için tam özellik, metot ve olay referansı.
Demo Projesi — Demos\20.HTTP_Protocol\02.OAuth2_Authentication Kullanıma hazır örnek proje. sgcWebSockets paketi içinde gelir — aşağıdan denemeyi indirin.
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.
Kullanıcı Kılavuzu (PDF) Kütüphanedeki her bileşeni kapsayan kapsamlı kılavuz.

Delphi'ye OAuth 2.0 Eklemeye Hazır mısınız?

Ücretsiz denemeyi indirin ve OAuth 2.0 / 2.1 kimlik doğrulamasını Delphi uygulamalarınıza entegre edin.