TsgcWebSocketHTTPServer › Ereignisse › OnUnknownAuthentication
Wird ausgelöst, wenn die Authentifizierung aktiviert ist und die Authentifizierungsmethode vom Server nicht erkannt wird.
property OnUnknownAuthentication: TsgcWSUnknownAuthenticationEvent;
// TsgcWSUnknownAuthenticationEvent = procedure(Connection: TsgcWSConnection; AuthType, AuthData: String; var aUser, aPassword: String; var Authenticated: Boolean) of object
—
OnUnknownAuthentication wird ausgelöst, wenn der Client einen Authorization-Header präsentiert, der nicht einem der integrierten Schemata entspricht (Basic, Session, URL), zum Beispiel ein JWT-Bearer-Token oder ein benutzerdefiniertes Schema. Der Parameter AuthType enthält den Schema-Namen und AuthData die rohen vom Client gesendeten Anmeldedaten; die Anwendung kann sie parsen, die Ausgabeparameter aUser und aPassword befüllen (sodass die Session mit einem Benutzernamen markiert wird) und schließlich Authenticated auf True setzen, um die Verbindung anzunehmen, oder auf False, um sie abzulehnen. Gilt sowohl für WebSocket-Upgrades als auch für HTTP-Anfragen, wenn Authentication.Enabled True ist.
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;