CakePHP est un framework web open-source largement utilisé qui suit le modèle d'architecture MVC. Il est très apprécié au sein de la communauté PHP et propose une gamme de fonctionnalités et d'outils pour la création d'applications web.
Ce guide a été testé avec succès avec la version 3.8
de CakePHP. Cependant, il devrait également être applicable aux versions plus anciennes du framework.
Utilisez PHP Composer :
composer require shieldon/shieldon
Cela installera également les dépendances requises pour Shieldon :
Les étapes 1 et 2 sont appliquées sur le même fichier situé à /config/route.php
.
Les étapes 1 et 2 impliquent toutes deux des modifications du même fichier situé à /config/routes.php
. Par conséquent, vous devrez effectuer les étapes suivantes dans ce fichier :
/config/routes.php
./config/routes.php
.En suivant ces étapes, vous vous assurez que les deux modifications sont apportées au fichier approprié.
Un middleware pour CakePHP est disponible ici. Enregistrez-le simplement dans votre application.
Exemple :
/**
* Appliquer le pare-feu Shieldon à la portée de route actuelle.
*/
$routes->registerMiddleware(
'firewall',
new \Shieldon\Firewall\Integration\CakePhp()
);
$routes->applyMiddleware('firewall');
Exemple :
/**
* Définir la route pour le panneau de firewall.
*/
$routes->connect('/firewall/panel/', [
'controller' => 'FirewallPanel',
'action' => 'entry'
]);
Créez un contrôleur nommé FirewallPanelController
et ajoutez le code suivant à celui-ci.
Exemple :
$panel = new \Shieldon\Firewall\Panel();
$panel->entry();
exit;
Si vous avez activé la protection CSRF, ajoutez ces lignes :
Exemple :
$panel->csrf(
'_csrfToken',
$this->request->getParam('_csrfToken')
);
L'exemple complet ressemblera à ceci :
Exemple :
<?php
namespace App\Controller;
class FirewallPanelController extends AppController
{
/**
* C'est l'entrée de notre panneau de pare-feu.
*/
public function entry()
{
// Accéder au panneau de pare-feu.
$panel = new \Shieldon\Firewall\Panel();
$panel->csrf([
'_csrfToken' => $this->request->getParam('_csrfToken')
]);
$panel->entry();
exit;
}
}
C'est tout.
Vous pouvez accéder au Panneau de Firewall à l'adresse /firewall/panel
. Pour afficher la page, ouvrez cette URL dans votre navigateur.
https://for.example.com/firewall/panel
L'identifiant de connexion par défaut est shieldon_user
et le mot de passe est shieldon_pass
. Après vous être connecté au Panneau de Firewall, la première chose à faire est de changer l'identifiant de connexion et le mot de passe.
Si le pare-feu Shieldon est activé dans la section de configuration du "Daemon", il commencera à surveiller votre site web. Assurez-vous d'avoir configuré correctement les paramètres.