Der TsgcWebSocket-Server unterstützt 3 Arten von Authentifizierungen:
Sie können eine Liste authentifizierter Benutzer mithilfe der Eigenschaft AuthUsers festlegen; geben Sie Ihre Benutzer einfach im folgenden Format an: user=password
Jedes Mal, wenn der Server eine Authentifizierungsanfrage von einem Client empfängt, wird dieses Ereignis aufgerufen, um anzugeben, ob der Benutzer authentifiziert ist oder nicht.
Verwenden Sie den Parameter Authenticated, um die Verbindung zu akzeptieren oder nicht.
procedure OnAuthentication(Connection: TsgcWSConnection; aUser, aPassword: string;
var Authenticated: Boolean);
begin
if ((aUser = 'user') and (aPassword = 'secret')) then
Authenticated := true
else
Authenticated := false;
end;
Wenn der Authentifizierungstyp nicht standardmäßig unterstützt wird, etwa JWT, können Sie dieses Ereignis dennoch verwenden, um die Verbindung zu akzeptieren oder abzulehnen. Lesen Sie einfach die Parameter und entscheiden Sie, ob die Verbindung akzeptiert werden soll.
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;