TsgcWebSocketFirewallEventi › OnFiltered

OnFiltered Evento

Si genera quando il firewall effettua una decisione di filtraggio su una connessione o un messaggio.

Sintassi

property OnFiltered: TsgcFirewallOnFiltered;
// TsgcFirewallOnFiltered = procedure(Sender: TObject; const aIP: string; const aReason: string; var Allow: Boolean) of object

Valore predefinito

Note

OnFiltered viene generato ogni volta che il firewall blocca (o bloccherebbe) una connessione o un messaggio. Usare questo evento per registrare le decisioni o per sovrascrivere il risultato tramite il parametro var Allow: impostarlo a True per consentire la richiesta nonostante il verdetto del firewall, oppure lasciarlo invariato per accettare la decisione del firewall. aIP è l'IP del client remoto e aReason è una breve motivazione leggibile dall'utente (ad esempio "Blacklisted", "Banned", "Rate limit exceeded", "GeoIP blocked", "SQL injection detected", "XSS detected", "Path traversal detected", "Command injection detected", "Flood protection triggered", "Payload too large" o "Custom rule blocked"). L'evento viene generato dal thread I/O del server; mantenere i gestori veloci e thread-safe.

Esempio

procedure TForm1.sgcWebSocketFirewall1Filtered(Sender: TObject;
  const aIP: string; const aReason: string; var Allow: Boolean);
begin
  // log every firewall decision
  Memo1.Lines.Add(Format('[%s] blocked: %s', [aIP, aReason]));

  // whitelist an internal monitoring host, overriding the firewall
  if aIP = '10.0.0.5' then
    Allow := True;
end;

Torna agli Eventi