Intègre Cloudflare pour bloquer une IP. Compatible avec ASP classique et PHP via l'objet COM de l'extension.
En ajoutant 2 lignes de code supplémentaires, vous pourrez vous connecter à Cloudflare. CloudFlareLogin et CloudflareDomain
BlockIp(IP,Rulename)Depuis votre page web — dans votre index.asp, index.php ou toute section de votre application — vous pouvez appeler cette fonction pour bloquer une adresse IP via le Firewall Manager. Nécessite des identifiants valides.
| Paramètre | Type | Requis | Description |
|---|---|---|---|
| Username | String | Requis | Utilisateur du système. |
| Password | String | Requis | Mot de passe de l'utilisateur. |
| FormatOutput | String | Optionnel | Format de réponse : xml (défaut) ou json. |
| IP | String | Requis | Adresse IPv4 ou IPv6 à bloquer. |
| CloudFlareLogin | String | Requis | Email et clé token Cloudflare |
| CloudflareDomain | String | Requis | Domaine intégré dans Cloudflare |
Important : Utilisez cette fonction sur des pages protégées par votre propre authentification. Exposer cet appel sans protection permet à n'importe quel utilisateur de bloquer des IP arbitraires.
Instanciez l'objet COM FlexFirewallManager.Admin, définissez les identifiants et appelez UnlockIP(). La réponse est analysée en tant que XML.
' Créer l'instance de l'objet COM
Set App = CreateObject("FlexFirewallManager.Admin")
App.FormatOutput = "xml"
App.Username = "Utilisateur du système"
App.Password = "Mot de passe de l'utilisateur"
App.CloudFlareLogin("Email Cloudflare" , "Token Cloudflare")
App.CloudflareDomain = "Nom du Domaine"
' IP à bloquer
Dim strIP : strIP = "123.123.123.123"
Dim returnstring : returnstring = App.BlockIp(strIP)
Vous pouvez utiliser FormatOutput = "json" si vous préférez analyser la réponse avec JSON.parse plutôt qu'en XML. Le format JSON est recommandé pour les applications modernes.
En PHP, instanciez l'objet COM avec new COM(). Utilisez le format json pour analyser la réponse directement avec json_decode().
// Créer l'instance de l'objet COM
$app = new COM("FlexFirewallManager.Admin");
$app->FormatOutput = "json";
$app->Username = "Utilisateur du système";
$app->Password = "Mot de passe de l'utilisateur";
// IP à débloquer
$strIP = "123.123.123.123";
$app->CloudFlareLogin("Email Cloudflare","Token Cloudflare");
$app->CloudflareDomain = "Nom du Domaine";
// Méthode 2
$returnstring = $app->BlockIp($strIP);
// Analyser la réponse JSON
$appjson = json_decode($returnstring);
if ($appjson->result) {
echo "IP Bloquée " . $strIP;
}
Astuce : Vous pouvez combiner cette fonction avec un formulaire d'administration interne afin que vos utilisateurs gèrent eux-mêmes le blocage de leur propre IP sans avoir à accéder à l'administrateur.
Tenez compte des aspects suivants lors de l'intégration de cette fonction dans votre application :
BlockIp() par une session utilisateur authentifiée.
FlexFirewallManager.Admin nécessite Windows Server avec l'extension installée.