Question

Je développe une application à l'aide CakePHP v 1.3 sur les fenêtres (XAMPP).
La plupart des contrôleurs sont cuits au four avec le routage admin activé. Je veux sécuriser les actions d'administration de chaque contrôleur avec une page de connexion. Comment puis-je faire cela sans répéter autant?
Une solution au problème est que « je vérifie les informations de connexion dans l'action admin_index de chaque contrôleur », puis affiche l'écran de connexion en conséquence.
Y at-il une meilleure façon de le faire?
L'URL detault à admin ( http: // localhost / app / admin ) pointe vers l'action index_admin des utilisateurs contrôleur (créé une nouvelle route pour ce fichier dans routes.php)

Était-ce utile?

La solution

Utilisez le composant d'authentification . Vous pouvez le configurer juste pour les routes d'administration avec quelque chose comme ceci:

// AppController::beforeFilter
function beforeFilter() {
    if (isset($this->params['prefix']) && $this->params['prefix'] == 'admin') {
        $this->Auth->deny('*');
        ...
    }
}

Vérification uniquement dans les actions de index est inutile, c'est juste l'obscurité, pas de sécurité. AuthComponent vérifie les autorisations pour chaque chargement de page unique.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top