TsgcHTTPServer › Zdarzenia › OnUnknownAuthentication
Wywoływane, gdy uwierzytelnianie jest włączone, a metoda uwierzytelniania nie jest rozpoznawana przez serwer.
property OnUnknownAuthentication: TsgcWSUnknownAuthenticationEvent;
// TsgcWSUnknownAuthenticationEvent = procedure(Connection: TsgcWSConnection; AuthType, AuthData: String; var aUser, aPassword: String; var Authenticated: Boolean) of object
—
OnUnknownAuthentication jest wywoływane, gdy klient przedstawi nagłówek Authorization, który nie pasuje do żadnego z wbudowanych schematów (Basic, Session, URL), na przykład token JWT Bearer lub schemat niestandardowy. Parametr AuthType zawiera nazwę schematu, a AuthData zawiera surowe poświadczenia przesłane przez klienta; aplikacja może je przeanalizować, wypełnić parametry wyjściowe aUser i aPassword (dzięki czemu sesja zostanie oznaczona nazwą użytkownika), a na końcu ustawić Authenticated na True, aby zaakceptować połączenie, lub na False, aby je odrzucić. Dotyczy żądań HTTP, gdy Authentication.Enabled ma wartość 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;