TsgcWebSocketFirewall › Metodi
Metodi pubblici raggruppati per scopo, seguiti dall'elenco alfabetico completo.
| Nome | Descrizione |
|---|---|
| IsConnectionAllowed | Filtro di handshake principale. Valuta ogni modulo di protezione al momento della connessione abilitato (ban, whitelist, blacklist, limite di frequenza, GeoIP, regole personalizzate) e restituisce se la connessione deve essere accettata. |
| IsMessageAllowed | 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. |
| IsOriginAllowed | Verifica un'intestazione Origin WebSocket rispetto a WebSocketProtection.AllowedOrigins (con supporto dei caratteri jolly) e restituisce se è accettata. |
| IsFrameSizeAllowed | Verifica la dimensione di un singolo frame WebSocket rispetto a WebSocketProtection.MaxFrameSize e restituisce se è entro il limite configurato. |
| IsSubprotocolAllowed | Verifica il nome del sottoprotocollo WebSocket richiesto rispetto a WebSocketProtection.AllowedSubprotocols e restituisce se è accettato. |
| Nome | Descrizione |
|---|---|
| RegisterConnection | Registra una nuova connessione accettata per l'IP specificato, incrementando i contatori per IP utilizzati da RateLimit e alimentando la finestra di decadimento di ThreatScore. |
| UnregisterConnection | Decrementa il contatore delle connessioni per IP quando una connessione precedentemente registrata viene chiusa, liberando capacità per RateLimit. |
| RegisterFailedAttempt | Hook a livello applicazione che registra un tentativo di autenticazione fallito dall'IP specificato, alimentando il tracker BruteForce e potenzialmente attivando un ban automatico. |
| Nome | Descrizione |
|---|---|
| BanIP | Vieta manualmente un indirizzo IP per la durata specificata, aggiungendolo alla lista di ban attiva in modo che tutte le connessioni successive da quell'IP vengano rifiutate. |
| UnbanIP | Rimuove il record di ban attivo per un singolo indirizzo IP in modo che il client possa riconnettersi al successivo tentativo. |
| IsBanned | Restituisce True quando l'indirizzo IP indicato è attualmente bannato, tenendo conto sia dei ban manuali che di quelli automatici e della loro durata residua. |
| ClearBans | Rimuove ogni ban attivo dal firewall, consentendo immediatamente agli IP precedentemente bloccati di riconnettersi (fatti salvi gli altri controlli del firewall). |
| ClearTracking | Azzera tutto lo stato di tracciamento interno: conteggi delle connessioni per IP, log dei tentativi di brute-force, contatori di messaggi per la flood-protection e punteggi di minaccia. |
| SaveBansToFile | Scrive l'elenco di ban corrente, inclusi i timestamp di scadenza e i livelli di escalation, nel file specificato in modo che possa essere ripristinato con LoadBansFromFile. |
| LoadBansFromFile | Ripristina l'elenco dei ban attivi da un file precedentemente scritto da SaveBansToFile, in modo che i ban sopravvivano ai riavvii del processo. |
| SaveBansToStream | Serializza l'elenco di ban attivo in qualsiasi TStream scrivibile, utile per i backend di persistenza non basati su file (database, sincronizzazione di rete, archivi cifrati). |
| LoadBansFromStream | Legge i record di ban da qualsiasi TStream (memoria, rete, risorsa) nello stesso formato prodotto da SaveBansToStream. |
| Nome | Descrizione |
|---|---|
| LoadGeoIPDatabase | Carica in memoria un database CSV MaxMind GeoIP in modo che le successive chiamate a LookupCountry e il filtraggio basato sul paese GeoIP possano risolvere gli IP dei client offline. |
| LookupCountry | Restituisce il codice paese ISO 3166-1 alpha-2 per un indirizzo IP, utilizzando il database GeoIP caricato o il gestore dell'evento OnResolveCountry. |
| Nome | Descrizione |
|---|---|
| ResetThreatScore | Azzera il punteggio di minaccia accumulato per un singolo IP, fornendogli una situazione pulita rispetto ad AutoBanThreshold senza influenzare altri IP. |
| Nome | Descrizione |
|---|---|
| BanIP | Vieta manualmente un indirizzo IP per la durata specificata, aggiungendolo alla lista di ban attiva in modo che tutte le connessioni successive da quell'IP vengano rifiutate. |
| ClearBans | Rimuove ogni ban attivo dal firewall, consentendo immediatamente agli IP precedentemente bloccati di riconnettersi (fatti salvi gli altri controlli del firewall). |
| ClearTracking | Azzera tutto lo stato di tracciamento interno: conteggi delle connessioni per IP, log dei tentativi di brute-force, contatori di messaggi per la flood-protection e punteggi di minaccia. |
| IsBanned | Restituisce True quando l'indirizzo IP indicato è attualmente bannato, tenendo conto sia dei ban manuali che di quelli automatici e della loro durata residua. |
| IsConnectionAllowed | Filtro di handshake principale. Valuta ogni modulo di protezione al momento della connessione abilitato (ban, whitelist, blacklist, limite di frequenza, GeoIP, regole personalizzate) e restituisce se la connessione deve essere accettata. |
| IsFrameSizeAllowed | Verifica la dimensione di un singolo frame WebSocket rispetto a WebSocketProtection.MaxFrameSize e restituisce se è entro il limite configurato. |
| IsMessageAllowed | 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. |
| IsOriginAllowed | Verifica un'intestazione Origin WebSocket rispetto a WebSocketProtection.AllowedOrigins (con supporto dei caratteri jolly) e restituisce se è accettata. |
| IsSubprotocolAllowed | Verifica il nome del sottoprotocollo WebSocket richiesto rispetto a WebSocketProtection.AllowedSubprotocols e restituisce se è accettato. |
| LoadBansFromFile | Ripristina l'elenco dei ban attivi da un file precedentemente scritto da SaveBansToFile, in modo che i ban sopravvivano ai riavvii del processo. |
| LoadBansFromStream | Legge i record di ban da qualsiasi TStream (memoria, rete, risorsa) nello stesso formato prodotto da SaveBansToStream. |
| LoadGeoIPDatabase | Carica in memoria un database CSV MaxMind GeoIP in modo che le successive chiamate a LookupCountry e il filtraggio basato sul paese GeoIP possano risolvere gli IP dei client offline. |
| LookupCountry | Restituisce il codice paese ISO 3166-1 alpha-2 per un indirizzo IP, utilizzando il database GeoIP caricato o il gestore dell'evento OnResolveCountry. |
| RegisterConnection | Registra una nuova connessione accettata per l'IP specificato, incrementando i contatori per IP utilizzati da RateLimit e alimentando la finestra di decadimento di ThreatScore. |
| RegisterFailedAttempt | Hook a livello applicazione che registra un tentativo di autenticazione fallito dall'IP specificato, alimentando il tracker BruteForce e potenzialmente attivando un ban automatico. |
| ResetThreatScore | Azzera il punteggio di minaccia accumulato per un singolo IP, fornendogli una situazione pulita rispetto ad AutoBanThreshold senza influenzare altri IP. |
| SaveBansToFile | Scrive l'elenco di ban corrente, inclusi i timestamp di scadenza e i livelli di escalation, nel file specificato in modo che possa essere ripristinato con LoadBansFromFile. |
| SaveBansToStream | Serializza l'elenco di ban attivo in qualsiasi TStream scrivibile, utile per i backend di persistenza non basati su file (database, sincronizzazione di rete, archivi cifrati). |
| UnbanIP | Rimuove il record di ban attivo per un singolo indirizzo IP in modo che il client possa riconnettersi al successivo tentativo. |
| UnregisterConnection | Decrementa il contatore delle connessioni per IP quando una connessione precedentemente registrata viene chiusa, liberando capacità per RateLimit. |