TsgcWebSocketHTTPServer › Eventi › OnUnknownAuthentication
Viene attivato quando l'autenticazione è abilitata e il metodo di autenticazione non è riconosciuto dal server.
property OnUnknownAuthentication: TsgcWSUnknownAuthenticationEvent;
// TsgcWSUnknownAuthenticationEvent = procedure(Connection: TsgcWSConnection; AuthType, AuthData: String; var aUser, aPassword: String; var Authenticated: Boolean) of object
—
OnUnknownAuthentication viene generato quando il client presenta un header Authorization che non corrisponde a uno degli schemi integrati (Basic, Session, URL), ad esempio un token JWT Bearer o uno schema personalizzato. Il parametro AuthType contiene il nome dello schema e AuthData contiene le credenziali grezze inviate dal client; l'applicazione può analizzarle, popolare i parametri di output aUser e aPassword (in modo che la sessione sia contrassegnata con un nome utente) e infine impostare Authenticated su True per accettare la connessione o su False per rifiutarla. Si applica sia agli upgrade WebSocket sia alle richieste HTTP quando Authentication.Enabled è True.
procedure OnUnknownAuthentication(Connection: TsgcWSConnection; AuthType, AuthData: string;
var aUser, aPassword: string; var Authenticated: Boolean);
begin
if AuthType = 'Bearer' then
begin
if AuthData = 'jwt_token' then
Authenticated := True
else
Authenticated := False;
end
else
Authenticated := False;
end;