TsgcWSAPIServer_WebAuthn › 事件 › OnWebAuthnAuthenticationSuccessful
在 /authenticate/verify 验证断言签名有效后触发;应用程序应更新签名计数器并建立会话。
property OnWebAuthnAuthenticationSuccessful: TsgcWebAuthnOnAuthenticationSuccessful;
// TsgcWebAuthnOnAuthenticationSuccessful = procedure(Sender: TObject; const aRequest: TsgcWebAuthn_AuthenticationVerify_Request; const aAuthentication: TsgcWebAuthn_Authentication; var Accept: Boolean) of object
—
成功认证流程的最终钩子。aRequest 是客户端发送的验证有效载荷;aAuthentication 携带已验证的用户 ID、匹配的凭证记录以及认证器报告的新签名计数器。请持久化更新后的签名计数器及任何备份/使用标志,然后将 Accept 设为 true 以让服务器签发会话令牌。将 Accept 设为 false 可在最后时刻中止,例如当您的风险引擎拒绝登录时,此时客户端将收到认证错误而非成功响应。
procedure TForm1.sgcWSAPIServer_WebAuthn1WebAuthnAuthenticationSuccessful(
Sender: TObject; const aRequest: TsgcWebAuthn_AuthenticationVerify_Request;
const aAuthentication: TsgcWebAuthn_Authentication; var Accept: Boolean);
begin
UpdateSignCounter(aAuthentication.CredentialId, aAuthentication.SignCount);
Accept := True;
end;