sgcAuth OAuth2 i JWT, natywnie w Delphi. Klucze dostępu też.

Dwa komponenty wnoszą tokenową stronę nowoczesnego uwierzytelniania do twojej aplikacji. TsgcHTTP_OAuth2_Client runs the Authorization Code, PKCE, Client Credentials, Resource Owner Password and Device Code grants against any OAuth2/OIDC provider. TsgcHTTP_JWT_Client builds, signs and verifies JSON Web Tokens, on its own or as the Bearer token source for your WebSocket and HTTP clients. Standalone, the sgcWebSockets Core runtime is included.

  • OAuth2
  • JWT
  • Klucze dostępu WebAuthn
  • PKCE, Device Code, DPoP
  • Delphi 7 do 13
  • C++ Builder
  • Pełny kod źródłowy
  • 2Komponenty klienckie, OAuth2 i JWT, na jednej stronie palety
  • 9Zaimplementowane RFC: OAuth2, PKCE, DPoP, Device Code, JWT/JWS/JWE i inne
  • 5Platformy docelowe: Windows, macOS, Linux 64-bit, iOS i Android
  • 1Samodzielny instalator ze środowiskiem Core w środku
  • 100%Kod źródłowy w każdej licencji
Zobacz, jak działa

Zobacz sgcAuth w dwie minuty.

JWT, OAuth2 i WebAuthn po stronie klienta i serwera, z poziomu Delphi. Z lektorem i napisami. Nic się nie pobiera, dopóki nie naciśniesz odtwarzania.

Szybki start sgcAuth

Tokeny, delegowana autoryzacja i klucze dostępu w jednym pakiecie.

  1. Trzy drogi startuJWT, gdy już znasz użytkownika, OAuth2, gdy tożsamość przechowuje strona trzecia, WebAuthn, gdy w ogóle nie ma hasła.
  2. Podpisz JWTUstaw algorytm i sekret, uzupełnij standardowe claimy, a potem podłącz komponent do klienta WebSocket lub HTTP jako token Bearer.
  3. Zweryfikuj go na serwerzeSprawdzane są podpis, exp and nbf are checked, and a request with a bad token never reaches your handler.
  4. OAuth2 w jednym komponencieIdentyfikator klienta, adresy dostawcy, zakresy i typ grantu. Komponent otwiera przeglądarkę i sam uruchamia lokalny serwer przekierowania.
  5. WebAuthn i klucze dostępuRejestracja i asercja sterowane przez komponent serwera. Klucz prywatny nigdy nie opuszcza urządzenia.
Co jest w pakiecie

Jeden komponent na zadanie, jeden styl API.

Upuść komponent na formularz, ustaw dane dostawcy lub klucza, podepnij zdarzenia, a następnie wywołaj Start or Sign. The naming is consistent across both, so an authentication flow reads the same whichever grant or algorithm it uses.

Każdy typ grantu, jeden komponent

TsgcHTTP_OAuth2_Client drives OAuth2Options.GrantType through auth2Code for trusted server-side apps, auth2CodePKCE for native, mobile and single-page apps, auth2ClientCredentials for daemons and service accounts, auth2ResourceOwnerPassword, and auth2DeviceCode (RFC 8628) for smart TVs, kiosks and other input-constrained devices.

Zobacz klienta OAuth2 →

Cały cykl życia tokenu

Start opens the system browser and stands up a small local HTTP server from LocalServerOptions to catch the redirect, exchanging the code for a token over plain HTTPS. Refresh, Revoke and Introspect cover the token lifecycle after that, and DPoPOptions adds proof-of-possession (RFC 9449) for providers that require it.

Metody cyklu życia →

Podpisz, dołącz lub zweryfikuj, jak wolisz

TsgcHTTP_JWT_Client publishes everything RFC 7519 needs through JWTOptions: the JOSE Header, the registered Payload claims (iss, sub, aud, exp, nbf, iat, jti, plus custom claims), and the key material for HMAC, RSA and ECDSA. Call Sign for the compact-serialization token directly, or set RefreshTokenAfter and let the component re-sign automatically.

Zobacz klienta JWT →

Świeży token Bearer w każdym żądaniu

Komponent JWT podłącza się bezpośrednio do Authentication.Token.JWT on TsgcWebSocketClient, TsgcHTTP1Client and TsgcHTTP2Client, so every outbound request carries a fresh Bearer token without a line of header code.

Zobacz kod →

Klucze dostępu, przez sgcCustomIndy

Logowanie bezhasłowe jest obsługiwane przez TsgcWSAPIServer_WebAuthn, a sgcWebSockets Enterprise/All-Access component built on the patched Indy library that sgcCustomIndy ships as an add-on. It is always included when you order sgcAuth, and so are the TOTP, LDAP, SAML, OpenID Connect and Mail OAuth2 components.

Zobacz, co potrafi →

Logowanie, konta usługowe i własne API

Logowanie przez Google lub Microsoft, dostęp do API serwer-serwer, smart TV i kioski, długie sesje bez ponownego logowania oraz tokeny Bearer dla twoich własnych API WebSocket i HTTP. Oba komponenty działają bez problemu wewnątrz aplikacji VCL lub FMX, usługi albo procesu konsolowego.

Matryca funkcji →

Czyste HTTPS i podpisywanie, bez natywnej biblioteki

Żaden z komponentów nie zależy od niczego poza stosem klienta HTTP środowiska Core i prymitywami kryptograficznymi platformy, więc oba kompilują się i działają wszędzie tam, gdzie Delphi: w Windows, macOS, Linuksie 64-bit, iOS i Androidzie. Od Delphi 7 po RAD Studio 13 oraz w C++ Builderze.

Matryca funkcji →

Dowolny dostawca, gotowe ustawienia w zestawie

sgcAuth mówi opublikowanymi standardami OAuth2/OIDC i JWT/JWS zamiast opakowywać SDK producenta, więc dostawcę wybierasz sam: Google, Microsoft, Auth0, Okta, Keycloak lub dowolny serwer autoryzacji zgodny z RFC. Gotowe ustawienia Google i Microsoft konfigurują za Ciebie typowe punkty końcowe i zakresy.

Konfiguracja dostawcy →

Pełne źródła, bez opłat licencyjnych

sgcAuth to samodzielny pakiet. Zawiera środowisko Core sgcWebSockets, na którym jest zbudowany, a każda licencja obejmuje pełny kod źródłowy, więc wymiany tokenów można prześledzić we własnym debugerze. Wdrożenie jest bez opłat licencyjnych.

Zobacz cennik →

Strony referencyjne każdego komponentu:

Kod

Pobierz token, podpisz token.

Skonfiguruj opcje, a następnie wywołaj metodę. Oba komponenty kompilują się w Delphi od 7 do 13 oraz w C++ Builder, a te same właściwości są wystawione w .NET.

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;

Ten sam kształt w Object Pascalu i w C++ Builder. Pełna matryca funkcji →

  1. Upuść komponent na formularzTsgcHTTP_OAuth2_Client and TsgcHTTP_JWT_Client sit on one palette page.
  2. Ustaw dostawcę lub kluczAdresy autoryzacji i tokenu, identyfikator klienta i zakresy dla OAuth2. Algorytm, sekret lub para kluczy oraz claimy dla JWT.
  3. Podłącz zdarzeniaOnAfterAccessToken hands you the token, and the refresh, revoke and introspect calls follow the same pattern.
  4. Wywołaj Start lub SignAlbo przekaż komponent JWT klientowi WebSocket lub HTTP i pozwól mu dołączać świeży token Bearer do każdego żądania.
Bliższe spojrzenie

Trzy wejścia, jeden pakiet.

Klatki z filmu o szybkim starcie sgcAuth.

JWT wędruje od komponentu klienta do serwera jako token Bearer, gdzie sprawdzane są podpis, exp, nbf, iss i aud

Podpisany po stronie klienta, sprawdzony po stronie serwera.

Klient JWT podpisuje za pomocą HMAC, RSA lub ECDSA i podróżuje w nagłówku Authorization: Bearer header. On the other side the signature is checked against the same secret or public key, expired and not-yet-valid tokens are rejected, and a request with a bad token never reaches your handler.

Typy grantów OAuth2 w sgcAuth: kod autoryzacji, kod z PKCE, poświadczenia klienta, hasło właściciela zasobu i kod urządzenia, z odświeżaniem, unieważnianiem, introspekcją i DPoP

Wybierz grant dopasowany do aplikacji.

Authorization Code dla aplikacji webowych z backendem, PKCE dla aplikacji natywnych i mobilnych, Client Credentials dla komunikacji maszyna do maszyny, Device Code dla telewizorów i konsol. Odświeżanie, unieważnianie, introspekcja i DPoP są również obsłużone za Ciebie.

Przepływ WebAuthn między przeglądarką, uwierzytelniaczem i serwerem: wyzwanie, podpis, weryfikacja

Bez hasła i bez wspólnego sekretu, który mógłby wyciec.

Serwer wysyła losowe wyzwanie, uwierzytelniacz podpisuje je kluczem prywatnym, a serwer sprawdza je względem zapisanego klucza publicznego. Użytkownik loguje się kluczem dostępu, odciskiem palca lub kluczem sprzętowym, a klucz prywatny nigdy nie opuszcza urządzenia.

Zanim kupisz

Cztery rzeczy, które warto wiedzieć na początku.

Czego sgcAuth potrzebuje od Ciebie, czy już masz te komponenty, czego WebAuthn wymaga dodatkowo i na jakie IDE jest przygotowany. Odpowiedzi są krótkie i znajdują się na tej stronie, a nie drobnym drukiem.

job          component                grants / algorithms
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

already own it?
Both the OAuth2 Client and the JWT Client ship inside
  sgcWebSockets from the Standard edition up.
sgcAuth is for licensing OAuth2 + JWT without a full
  sgcWebSockets edition.
  1. sgcAuth jest samodzielnyŚrodowisko Core sgcWebSockets jest w komplecie: stos klienta HTTP/TLS, przez który oba komponenty wysyłają żądania tokenów, oraz mechanizm JSON, który parsuje odpowiedzi. Jeden instalator, pełny kod źródłowy w pakiecie.
  2. Masz to już w swojej edycji sgcWebSockets?Oba klienty są dostarczane w sgcWebSockets od edycji Standard wzwyż. sgcAuth powstał na odwrotny przypadek: obsługa klienta OAuth2 i JWT bez licencjonowania pełnej edycji sgcWebSockets.
  3. WebAuthn wymaga sgcCustomIndyTsgcWSAPIServer_WebAuthn is built on the patched Indy library that sgcCustomIndy ships as an add-on. It is always included when you order sgcAuth, and the sgcAuth price shown already covers it.
  4. Delphi i C++ BuildersgcAuth jest przeznaczony dla Delphi od 7 do RAD Studio 13 oraz C++ Builder. Bezpłatny instalator próbny to wersja próbna sgcWebSockets All-Access, więc oba komponenty możesz wypróbować już dziś.

Granty, odświeżanie, unieważnianie i podpisywanie to pełnoprawne metody i zdarzenia, a pełny kod źródłowy oznacza, że nic pośrodku nie jest czarną skrzynką. Każdy komponent i właściwość →

Część sgcWebSockets

Licencjonowany osobno albo już w Twojej edycji.

sgcAuth to jeden pakiet rodziny sgcWebSockets. Kup go samodzielnie z dołączonym środowiskiem Core albo uzyskaj oba klienty z dowolną edycją sgcWebSockets od Standard wzwyż.

sgcAuth

Klienci OAuth2 i JWT, samodzielnie, ze środowiskiem Core sgcWebSockets w komplecie.

€298 / licencja Single
  • Klient OAuth2: Authorization Code, PKCE, Client Credentials, Device Code
  • Klient JWT do wystawiania, podpisywania i weryfikowania tokenów
  • Klucze dostępu WebAuthn, przez sgcCustomIndy (w komplecie)
  • TOTP, LDAP, SAML, OpenID Connect i Mail OAuth2, przez sgcCustomIndy
  • Pełny kod źródłowy i 1 rok aktualizacji
Cennik sgcAuth →

Team i Site

Ten sam pakiet, licencjonowany dla całego zespołu lub całej lokalizacji.

Team €498 Site €798
  • Wszystko z licencji Single
  • Uprawnienie do środowiska Core sgcWebSockets, naliczone po zerowej cenie
  • sgcCustomIndy, którego wymaga WebAuthn, zawsze w komplecie
  • Delphi 7 do 13 i C++ Builder
Porównaj licencje →

sgcWebSockets

Pełna biblioteka: klienci i serwery WebSocket, HTTP/2, IoT, P2P i komponenty AI. Jej edycje zawierają także klientów OAuth2 i JWT.

€380 / Standard
  • Oba klienty od edycji Standard wzwyż
  • Komponenty WebAuthn, TOTP, LDAP, SAML, OpenID Connect i Mail OAuth2 są w edycji Enterprise
  • Tu mieszka środowisko Core
Poznaj sgcWebSockets →

Jeśli masz dowolną edycję sgcWebSockets, masz już oba klienty. sgcAuth jest dla OAuth2 i JWT bez licencjonowania pełnej edycji sgcWebSockets.

Zobacz cennik i licencje
REFERENCJE

Co mówią programiści

Zaufali nam programiści Delphi, C++ Builder, Lazarus i .NET na całym świecie.

Wasza biblioteka sgcWebSockets jest bardzo przydatna i łatwa w konfiguracji. Tak trzymać!
Simone Moretti Programista Delphi
sgcWebSockets jest niesamowity, a wasze wsparcie jest najlepsze!
Christian Meyer Założyciel i CTO
Bardzo dziękuję za pomoc i wsparcie, uwielbiam wasze komponenty.
Mark Steinfeld CTO

Wdrażaj uwierzytelnianie, a nie bibliotekę tokenów.

OAuth2 i JWT w jednym pakiecie, ze środowiskiem uruchomieniowym sgcWebSockets Core w zestawie i pełnym kodem źródłowym w pakiecie.

Ekosystem

Inne produkty eSeGeCe

sgcAuth to jedna z bibliotek komponentów eSeGeCe dla Delphi, C++ Buildera i .NET. Mają wspólne konwencje, są dostarczane z pełnym kodem źródłowym i wdrażane bez opłat licencyjnych.

sgcWebSockets

WebSocket, HTTP/2, MQTT, AMQP, WebRTC, AI oraz ponad 30 integracji API dla Delphi, C++ Builder, Lazarus i .NET. To tutaj mieszka środowisko uruchomieniowe Core.

sgcHTTP

Serwer HTTP, klient HTTP/2, klient gRPC oraz klienty Google Cloud Pub/Sub, Calendar i FCM dla Delphi i C++ Builder. Produkt samodzielny, z dołączonym środowiskiem uruchomieniowym sgcWebSockets Core.

sgcREST

Komponenty serwera REST, serwera OpenAPI i klienta OpenAPI dla Delphi i C++ Buildera. Samodzielne, z dołączonym środowiskiem Core sgcWebSockets.

sgcMQ

Komponenty klienckie MQTT, AMQP 0.9.1 i 1.0, Apache Kafka oraz STOMP dla Delphi i C++ Builder. Produkt samodzielny, z dołączonym środowiskiem uruchomieniowym sgcWebSockets Core.

sgcAI

Komponenty AI, LLM i MCP dla Delphi oraz C++ Builder. Siedmiu dostawców LLM za jednym komponentem, a do tego MCP, embeddingi i mowa. Produkt samodzielny, z dołączonym środowiskiem uruchomieniowym sgcWebSockets Core.

sgcSocial

Komponenty klienckie Telegram i WhatsApp Business dla Delphi i C++ Builder. Produkt samodzielny, z dołączonym środowiskiem uruchomieniowym sgcWebSockets Core.

sgcHTML

Serwerowe komponenty HTML i UI na Bootstrap 5 i htmx, w tym komponent UI logowania WebAuthn.

sgcQUIC

Surowy transport QUIC oraz klient i serwer HTTP/3, z WebTransport. Dodatek do sgcWebSockets Enterprise.

sgcOpenAPI

Parser OpenAPI 3.x, natywny generator SDK w Pascalu, komponent serwera OpenAPI oraz ponad 1 195 gotowych SDK chmurowych.

sgcSign

XAdES, PAdES, CAdES i ASiC dla dokumentów, Authenticode, ClickOnce, NuGet i VSIX dla kodu.

sgcPDF

Twórz, edytuj, przeglądaj, podpisuj, cenzuruj i weryfikuj pliki PDF w czystym Object Pascalu, bez DLL do wdrożenia. Licencjonowany osobno.

sgcBiometrics

Windows Hello, czytniki linii papilarnych i Windows Biometric Framework dla Delphi i C++ Builder.

Pakiety, dodatki i więcej

Najnowsze wpisy na blogu

Zobacz wszystkie wpisy →

Oglądasz widok sgcAuth eSeGeCe.

Pokaż mi inne ujęcie →
30-dniowa gwarancja zwrotu pieniędzyNie jesteś zadowolony? Poproś o pełny zwrot pieniędzy w ciągu 30 dni od zakupu. Zobacz politykę zwrotów