sgcAuth OAuth2 en JWT, native in Delphi. Passkeys ook.

Twee componenten brengen de tokenkant van moderne authenticatie naar je toepassing. TsgcHTTP_OAuth2_Client doorloopt de Authorization Code-, PKCE-, Client Credentials-, Resource Owner Password- en Device Code-grants tegen elke OAuth2/OIDC-provider. TsgcHTTP_JWT_Client bouwt, ondertekent en verifieert JSON Web Tokens, op zichzelf of als de Bearer-tokenbron voor je WebSocket- en HTTP-clients. Standalone, de sgcWebSockets Core runtime is inbegrepen.

  • OAuth2
  • JWT
  • WebAuthn-passkeys
  • PKCE, Device Code, DPoP
  • Delphi 7 t/m 13
  • C++ Builder
  • Volledige broncode
  • 2Clientcomponenten, OAuth2 en JWT, op één palettepagina
  • 9Geïmplementeerde RFC's: OAuth2, PKCE, DPoP, Device Code, JWT/JWS/JWE en meer
  • 5Doelplatformen: Windows, macOS, Linux 64-bit, iOS en Android
  • 1Zelfstandige installer, met de Core-runtime erin
  • 100%Broncode inbegrepen bij elke licentie
Zie het draaien

Zie sgcAuth in twee minuten.

JWT, OAuth2 en WebAuthn, aan de client- en de serverzijde, vanuit Delphi. Ingesproken en ondertiteld. Er wordt niets gedownload totdat je op afspelen drukt.

sgcAuth-snelstart

Tokens, gedelegeerde autorisatie en passkeys in één pakket.

  1. Drie manieren om te beginnenJWT als je de gebruiker al kent, OAuth2 als een derde partij de identiteit beheert, WebAuthn als er helemaal geen wachtwoord is.
  2. Een JWT ondertekenenStel het algoritme en het geheim in, vul de standaardclaims in en koppel het component daarna als Bearer-token aan een WebSocket- of HTTP-client.
  3. Valideer hem op de serverDe handtekening, exp en nbf worden gecontroleerd, en een verzoek met een ongeldig token bereikt je handler nooit.
  4. OAuth2 in één componentClient-id, provider-URL's, scopes en een grant type. Het opent de browser en draait de lokale redirectserver voor je.
  5. WebAuthn en passkeysRegistratie en assertion aangestuurd door het servercomponent. De privésleutel verlaat het apparaat nooit.
Wat er in het pakket zit

Eén component per taak, één API-stijl.

Zet een component op een form, stel de providergegevens of sleutelgegevens in, koppel de events, en roep dan Start of Signaan. De naamgeving is bij beide consistent, dus een authenticatieflow leest hetzelfde, ongeacht welke grant of welk algoritme hij gebruikt.

Elk grant type, één component

TsgcHTTP_OAuth2_Client stuurt OAuth2Options.GrantType via auth2Code voor vertrouwde server-side toepassingen, auth2CodePKCE voor native, mobiele en single-page apps, auth2ClientCredentials voor daemons en serviceaccounts, auth2ResourceOwnerPassword, en auth2DeviceCode (RFC 8628) voor smart-tv's, kiosken en andere invoerbeperkte apparaten.

Bekijk de OAuth2-client →

De hele levenscyclus van het token

Start opent de systeembrowser en zet een kleine lokale HTTP-server op vanuit LocalServerOptions om de redirect op te vangen, waarna de code via gewone HTTPS wordt ingewisseld voor een token. Refresh, Revoke en Introspect dekken de tokenlevenscyclus daarna, en DPoPOptions voegt proof-of-possession (RFC 9449) toe voor providers die dat vereisen.

Levenscyclusmethoden →

Ondertekenen, koppelen of verifiëren, jij kiest

TsgcHTTP_JWT_Client ontsluit alles wat RFC 7519 nodig heeft via JWTOptions: de JOSE- Header, de geregistreerde Payload -claims (iss, sub, aud, exp, nbf, iat, jti, plus eigen claims), en het sleutelmateriaal voor HMAC, RSA en ECDSA. Roep Sign aan om het token in compact-serialisatie direct terug te krijgen, of stel RefreshTokenAfter en laat het component automatisch opnieuw ondertekenen.

Bekijk de JWT-client →

Een vers Bearer-token bij elk verzoek

Het JWT-component sluit rechtstreeks aan op Authentication.Token.JWT op TsgcWebSocketClient, TsgcHTTP1Client en TsgcHTTP2Client, zodat elk uitgaand verzoek een vers Bearer-token meestuurt zonder een regel headercode.

Bekijk de code →

Passkeys, via sgcCustomIndy

Wachtwoordloos aanmelden wordt geleverd door TsgcWSAPIServer_WebAuthn, een sgcWebSockets Enterprise/All-Access-component dat is gebouwd op de gepatchte Indy-bibliotheek die sgcCustomIndy als add-on meelevert. Het is altijd inbegrepen als je sgcAuth bestelt, net als de componenten TOTP, LDAP, SAML, OpenID Connect en Mail OAuth2.

Bekijk wat het allemaal kan →

Aanmelden, serviceaccounts en je eigen API's

Aanmelden met Google of Microsoft, server-naar-server API-toegang, smart-tv's en kiosken, lange sessies zonder opnieuw te vragen, en Bearer-tokens voor je eigen WebSocket- en HTTP-API's. Beide componenten draaien probleemloos binnen een VCL- of FMX-toepassing, een service of een consoleproces.

De feature-matrix →

Pure HTTPS en ondertekening, geen native bibliotheek

Geen van beide componenten hangt af van iets buiten de HTTP-clientstack van de Core-runtime en de crypto-primitieven van het platform, dus beide compileren en draaien overal waar Delphi draait: Windows, macOS, Linux 64-bit, iOS en Android. Van Delphi 7 tot en met RAD Studio 13 en op C++ Builder.

De feature-matrix →

Elke provider, presets inbegrepen

sgcAuth spreekt de gepubliceerde OAuth2/OIDC- en JWT/JWS-standaarden en verpakt geen SDK van een leverancier, dus de provider kies je zelf: Google, Microsoft, Auth0, Okta, Keycloak of elke RFC-conforme autorisatieserver. Kant-en-klare presets voor Google en Microsoft configureren de gangbare endpoints en scopes voor je.

Providerconfiguratie →

Volledige broncode, royaltyvrij

sgcAuth is een zelfstandig pakket. Het bundelt de sgcWebSockets Core-runtime waarop het is gebouwd, en elke licentie wordt met volledige broncode geleverd, zodat je de tokenuitwisselingen in je eigen debugger kunt doorlopen. Distributie is royaltyvrij.

Bekijk de prijzen →

Referentiepagina's voor elk component:

De code

Haal een token op, onderteken een token.

Stel de opties in, roep dan een methode aan. Beide componenten compileren in Delphi 7 tot en met 13 en C++ Builder, en dezelfde eigenschappen zijn beschikbaar op .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;

Dezelfde vorm in Object Pascal en in C++ Builder. De volledige functiematrix →

  1. Zet een component op een formTsgcHTTP_OAuth2_Client en TsgcHTTP_JWT_Client staan op één palettepagina.
  2. Stel de provider of de sleutel inAutorisatie- en token-URL's, client-id en scopes voor OAuth2. Algoritme, geheim of sleutelpaar en claims voor JWT.
  3. Koppel de eventsOnAfterAccessToken geeft je het token, en de aanroepen voor vernieuwen, intrekken en introspectie volgen hetzelfde patroon.
  4. Roep Start of Sign aanOf geef het JWT-component aan een WebSocket- of HTTP-client en laat het bij elk verzoek een vers Bearer-token meesturen.
Een nadere blik

Drie manieren om te beginnen, één pakket.

Beelden uit de sgcAuth-snelstartvideo.

Een JWT reist als Bearer-token van het clientcomponent naar de server, waar de handtekening, exp, nbf, iss en aud worden gecontroleerd

Ondertekend op de client, gecontroleerd op de server.

De JWT-client ondertekent met HMAC, RSA of ECDSA en reist mee als een Authorization: Bearer -header. Aan de andere kant wordt de handtekening gecontroleerd tegen hetzelfde geheim of dezelfde publieke sleutel, worden verlopen en nog niet geldige tokens geweigerd en bereikt een verzoek met een ongeldig token je handler nooit.

De OAuth2 grant types in sgcAuth: authorization code, code met PKCE, client credentials, resource owner password en device code, met vernieuwing, intrekking, introspectie en DPoP

Kies het grant type dat bij de app past.

Authorization Code voor webapps met een back-end, PKCE voor native en mobiele apps, Client Credentials voor machine-naar-machine, Device Code voor tv's en consoles. Vernieuwing, intrekking, introspectie en DPoP worden ook voor je afgehandeld.

De WebAuthn-stroom tussen de browser, de authenticator en je server: challenge, ondertekenen, verifiëren

Geen wachtwoord en geen gedeeld geheim dat kan lekken.

De server stuurt een willekeurige challenge, de authenticator ondertekent die met de privésleutel en de server controleert hem tegen de opgeslagen publieke sleutel. Een gebruiker meldt zich aan met een passkey, een vingerafdruk of een hardwaresleutel, en de privésleutel verlaat het apparaat nooit.

Voordat je koopt

Vier dingen om eerst te weten.

Wat sgcAuth van jou nodig heeft, of je deze componenten al bezit, wat WebAuthn daarbovenop nodig heeft en op welke IDE's het zich richt. De antwoorden zijn kort en staan op deze pagina in plaats van in de kleine lettertjes.

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 is standaloneDe sgcWebSockets Core-runtime is inbegrepen: de HTTP/TLS-clientstack waarlangs beide componenten hun tokenverzoeken POSTen, en de JSON-machinerie die de antwoorden verwerkt. Eén installer, volledige broncode in de doos.
  2. Al in jouw sgcWebSockets-editie?Beide clients worden meegeleverd in sgcWebSockets vanaf de Standard-editie. sgcAuth bestaat voor het omgekeerde geval: OAuth2- en JWT-clientondersteuning zonder een volledige sgcWebSockets-editie te licentiëren.
  3. WebAuthn heeft sgcCustomIndy nodigTsgcWSAPIServer_WebAuthn is gebouwd op de gepatchte Indy-bibliotheek die sgcCustomIndy als add-on meelevert. Het is altijd inbegrepen als je sgcAuth bestelt, en de getoonde sgcAuth-prijs dekt het al.
  4. Delphi en C++ BuildersgcAuth richt zich op Delphi 7 tot en met RAD Studio 13 en C++ Builder. De gratis proefinstaller is de sgcWebSockets All-Access-proefversie, dus beide componenten zijn vandaag al te evalueren.

Grants, vernieuwing, intrekking en ondertekening zijn allemaal volwaardige methoden en events, en met volledige broncode is niets daartussen een black box. Elk component en elke eigenschap →

Onderdeel van sgcWebSockets

Los gelicentieerd, of al in je editie.

sgcAuth is een pakket uit de sgcWebSockets-familie. Koop het zelfstandig met de Core-runtime erbij, of krijg beide clients met elke sgcWebSockets-editie vanaf Standard.

sgcAuth

De OAuth2- en JWT-clients, zelfstandig, met de sgcWebSockets Core-runtime inbegrepen.

€298 / single-licentie
  • OAuth2-client: Authorization Code, PKCE, Client Credentials, Device Code
  • JWT-client om tokens uit te geven, te ondertekenen en te verifiëren
  • WebAuthn-passkeys, via sgcCustomIndy (inbegrepen)
  • TOTP, LDAP, SAML, OpenID Connect en Mail OAuth2, via sgcCustomIndy
  • Volledige broncode en 1 jaar updates
sgcAuth-prijzen →

Team en Site

Hetzelfde pakket, gelicentieerd voor een heel team of een hele site.

Team €498 Site €798
  • Alles uit de single-licentie
  • Het recht op de sgcWebSockets Core-runtime, tegen nultarief
  • sgcCustomIndy, dat WebAuthn vereist, altijd inbegrepen
  • Delphi 7 t/m 13 en C++ Builder
Vergelijk licenties →

sgcWebSockets

De volledige bibliotheek: WebSocket-clients en -servers, HTTP/2-, IoT-, P2P- en AI-componenten. De edities bevatten ook de OAuth2- en JWT-clients.

€380 / Standard
  • Beide clients vanaf de Standard-editie
  • De componenten WebAuthn, TOTP, LDAP, SAML, OpenID Connect en Mail OAuth2 worden geleverd in Enterprise
  • Hier woont de Core-runtime
Ontdek sgcWebSockets →

Als je een sgcWebSockets-editie bezit, heb je beide clients al. sgcAuth is voor OAuth2 en JWT zonder een volledige sgcWebSockets-editie te licentiëren.

Bekijk de prijzen en licenties
Referenties

Wat ontwikkelaars zeggen

Vertrouwd door Delphi-, C++ Builder-, Lazarus- en .NET-ontwikkelaars over de hele wereld.

Jullie sgcWebSockets-bibliotheek is erg handig en eenvoudig op te zetten. Ga zo door!
Simone Moretti Delphi-ontwikkelaar
sgcWebSockets is geweldig en jullie support is de beste!
Christian Meyer Oprichter & CTO
Heel erg bedankt voor jullie hulp en ondersteuning, ik ben dol op jullie componenten.
Mark Steinfeld CTO

Lever authenticatie, geen tokenbibliotheek.

OAuth2 en JWT in één pakket, met de sgcWebSockets Core runtime inbegrepen en volledige broncode in de doos.

Het ecosysteem

Andere producten van eSeGeCe

sgcAuth is een van de componentbibliotheken van eSeGeCe voor Delphi, C++ Builder en .NET. Ze delen conventies, worden met volledige broncode geleverd en zijn royaltyvrij te distribueren.

sgcWebSockets

WebSocket, HTTP/2, MQTT, AMQP, WebRTC, AI en 30+ API-integraties voor Delphi, C++ Builder, Lazarus en .NET. Hier zit de Core runtime.

sgcHTTP

HTTP-server, HTTP/2-client, gRPC-client en clients voor Google Cloud Pub/Sub, Calendar en FCM, voor Delphi en C++ Builder. Standalone, met de sgcWebSockets Core runtime inbegrepen.

sgcREST

REST-server, OpenAPI-server en OpenAPI-clientcomponenten voor Delphi en C++ Builder. Standalone, met de sgcWebSockets Core runtime inbegrepen.

sgcMQ

Clientcomponenten voor MQTT, AMQP 0.9.1 en 1.0, Apache Kafka en STOMP voor Delphi en C++ Builder. Standalone, met de sgcWebSockets Core runtime inbegrepen.

sgcAI

AI-, LLM- en MCP-componenten voor Delphi en C++ Builder. Zeven LLM-providers achter één component, plus MCP, embeddings en spraak. Standalone, met de sgcWebSockets Core runtime inbegrepen.

sgcSocial

Telegram- en WhatsApp Business-clientcomponenten voor Delphi en C++ Builder. Standalone, met de sgcWebSockets Core runtime inbegrepen.

sgcHTML

Server-side HTML- en UI-componenten op Bootstrap 5 en htmx, inclusief een WebAuthn-inlog-UI-component.

sgcQUIC

Pure QUIC-transport en een HTTP/3-client en -server, met WebTransport. Een add-on voor sgcWebSockets Enterprise.

sgcOpenAPI

OpenAPI 3.x-parser, native Pascal-SDK-generator, OpenAPI-servercomponent en 1.195+ kant-en-klare cloud-SDK's.

sgcSign

XAdES, PAdES, CAdES en ASiC voor documenten, Authenticode, ClickOnce, NuGet en VSIX voor code.

sgcPDF

PDF-bestanden maken, bewerken, bekijken, ondertekenen, redigeren en valideren in pure Object Pascal, zonder DLL. Wordt los gelicentieerd.

sgcBiometrics

Windows Hello, vingerafdruksensoren en het Windows Biometric Framework voor Delphi en C++ Builder.

Pakketten, add-ons en meer

Laatste blogberichten

Bekijk alle berichten →

Je bekijkt nu de sgcAuth-weergave van eSeGeCe.

Toon me een andere invalshoek →
Niet-goed-geld-terug-garantie van 30 dagenNiet tevreden? Vraag binnen 30 dagen na aankoop een volledige terugbetaling aan. Bekijk het terugbetalingsbeleid