WebAuthnLogin
TsgcHTMLComponent_WebAuthnLogin — een wachtwoordloze passkey-/WebAuthn-login- en registratiewidget die SimpleWebAuthn-gebaseerde JavaScript uitstuurt, in Delphi, C++ Builder en .NET.
TsgcHTMLComponent_WebAuthnLogin — een wachtwoordloze passkey-/WebAuthn-login- en registratiewidget die SimpleWebAuthn-gebaseerde JavaScript uitstuurt, in Delphi, C++ Builder en .NET.
Een passkey-widget die registratie- en inlogknoppen rendert plus het browserscript. Het communiceert met je /options- en /verify-eindpunten via SimpleWebAuthnBrowser. Stel de modus en URL's in en lees daarna HTML — of gebruik de statische helper Build.
TsgcHTMLComponent_WebAuthnLogin
Bootstrap 5-markup + WebAuthn JS
Delphi, C++ Builder, .NET
De statische helper Build rendert de widget in één aanroep. Gebruik het volledige component wanneer je een aangepaste titel, username-selector of je eigen script nodig hebt.
uses
sgcHTML_Enums, sgcHTML_Component_WebAuthnLogin;
// One-liner (register + authenticate, default endpoints):
WebModule.Response := TsgcHTMLComponent_WebAuthnLogin.Build(
wamBoth, '/webauthn/register', '/webauthn/authenticate');
// Full control:
var
oWA: TsgcHTMLComponent_WebAuthnLogin;
begin
oWA := TsgcHTMLComponent_WebAuthnLogin.Create(nil);
try
oWA.Mode := wamBoth;
oWA.RegisterURL := '/webauthn/register';
oWA.AuthenticateURL := '/webauthn/authenticate';
oWA.CallbackURL := '/dashboard';
oWA.Title := 'Passwordless sign-in';
oWA.ShowPasskeyIcon := True;
oWA.UsernameSelector := '#username';
WebModule.Response := oWA.HTML; // buttons + SimpleWebAuthn JS
finally
oWA.Free;
end;
end;
// includes: sgcHTML_Enums.hpp, sgcHTML_Component_WebAuthnLogin.hpp
// One-liner (register + authenticate, default endpoints):
String html = TsgcHTMLComponent_WebAuthnLogin::Build(
wamBoth, "/webauthn/register", "/webauthn/authenticate");
// Full control:
TsgcHTMLComponent_WebAuthnLogin *oWA = new TsgcHTMLComponent_WebAuthnLogin(NULL);
try
{
oWA->Mode = wamBoth;
oWA->RegisterURL = "/webauthn/register";
oWA->AuthenticateURL = "/webauthn/authenticate";
oWA->CallbackURL = "/dashboard";
oWA->Title = "Passwordless sign-in";
oWA->ShowPasskeyIcon = true;
oWA->UsernameSelector = "#username";
String full = oWA->HTML; // buttons + SimpleWebAuthn JS
}
__finally
{
delete oWA;
}
using esegece.sgcWebSockets;
// One-liner (register + authenticate, default endpoints):
string html = TsgcHTMLComponent_WebAuthnLogin.Build(
TsgcHTMLWebAuthnMode.wamBoth, "/webauthn/register", "/webauthn/authenticate");
// Full control:
var wa = new TsgcHTMLComponent_WebAuthnLogin();
wa.Mode = TsgcHTMLWebAuthnMode.wamBoth;
wa.RegisterURL = "/webauthn/register";
wa.AuthenticateURL = "/webauthn/authenticate";
wa.CallbackURL = "/dashboard";
wa.Title = "Passwordless sign-in";
wa.ShowPasskeyIcon = true;
wa.UsernameSelector = "#username";
string full = wa.HTML; // buttons + SimpleWebAuthn JS
De members die je het vaakst gebruikt.
Build(aMode, aRegisterURL, aAuthenticateURL) rendert de hele widget in één aanroep, met verstandige standaardwaarden voor de modus en eindpunten.
Mode kiest wamRegister, wamAuthenticate of wamBoth en bepaalt welke knoppen verschijnen.
RegisterURL en AuthenticateURL zijn de bases van je server (het script voegt /options en /verify toe); CallbackURL is waar een geslaagde login landt.
RegisterButtonText, AuthenticateButtonText, RegisterButtonStyle, AuthenticateButtonStyle, Title, Description en ShowPasskeyIcon vormen de UI.
UsernameSelector leest de gebruikersnaam uit een veld voordat geregistreerd wordt; CustomScript vervangt de ingebouwde SimpleWebAuthn-JavaScript volledig.
HTML geeft de markup plus het inline <script> terug met SimpleWebAuthnBrowser; meldingen gebruiken SuccessAlertStyle / ErrorAlertStyle.