TsgcWebSocketFirewallMetodi › IsMessageAllowed

IsMessageAllowed Metodo

Filtro per messaggio principale. Esegue i moduli di ispezione del contenuto abilitati (SQL injection, XSS, path traversal, command injection, limite payload, protezione da flood, regole personalizzate) e restituisce se il messaggio deve essere consegnato.

Sintassi

function IsMessageAllowed(const aIP: string; const aMessage: string): Boolean;

Parametri

NomeTipoDescrizione
aIPconst stringIndirizzo del client remoto che ha inviato il messaggio. Utilizzato per i contatori flood per IP, l'attribuzione del punteggio di minaccia e l'escalation del ban.
aMessageconst stringPayload completo del messaggio (testo o binario decodificato) che verrà analizzato alla ricerca di pattern dannosi e confrontato con PayloadLimit.MaxSizeBytes.

Valore restituito

True quando il messaggio supera tutti i filtri abilitati; False quando un modulo segnala una violazione. OnFiltered e OnViolation vengono generati al rifiuto e il punteggio di minaccia viene aggiornato di conseguenza. (Boolean)

Note

IsMessageAllowed viene richiamato automaticamente per ogni frame di testo/binario non appena la proprietà Firewall è collegata a un server; raramente è necessario chiamarlo manualmente. I risultati del rilevamento si accumulano nel sottosistema ThreatScore, così i trasgressori ricorrenti possono essere bannati automaticamente una volta raggiunto AutoBanThreshold. Per le pipeline che hanno già decodificato un messaggio su un altro thread, chiamare IsMessageAllowed per riapplicare gli stessi filtri prima di persistere o inoltare il payload.

Esempio

if not sgcWebSocketFirewall1.IsMessageAllowed(Connection.IP, aText) then
  Connection.Disconnect;

Torna ai Metodi