TsgcWebSocketFirewall › Metodi › 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.
procedure BanIP(const aIP: string; aDurationSec: Integer = 0);
| Nome | Tipo | Descrizione |
|---|---|---|
aIP | const string | Indirizzo IPv4 o IPv6 da bannare. Il ban si applica all'indirizzo esatto; gli intervalli CIDR devono invece essere aggiunti tramite la proprietà Blacklist. |
aDurationSec | Integer | Durata del ban in secondi. Passi 0 (valore predefinito) per un ban permanente che viene rimosso solo da UnbanIP, ClearBans o dalla rotazione BanEscalation. |
Utilizzi BanIP per bloccare un indirizzo IP a livello di codice dall'applicazione (ad esempio, da un gestore personalizzato di errori di autenticazione o da un feed esterno di rilevamento delle intrusioni). Il blocco viene memorizzato insieme ai blocchi prodotti da BruteForce e ThreatScore, quindi IsBanned, SaveBansToFile e ClearBans lo rilevano tutti. Se BanEscalation.Enabled è True il contatore di escalation viene incrementato, quindi blocchi manuali ripetuti sullo stesso IP aumentano di durata in base ai livelli configurati. Le chiamate sono thread-safe.
// ban an IP for 10 minutes
sgcWebSocketFirewall1.BanIP('203.0.113.45', 600);
// permanent ban
sgcWebSocketFirewall1.BanIP('198.51.100.7', 0);