[CakePHP2] isAuthorized
Dodo7
-
Dodo7 -
Dodo7 -
Bonjour,
Depuis plusieurs jours, j'essaye d'utiliser la méthode "isAuthorized" de CakePHP, mais rien n'y fait, je n'ai aucun changement à l'écran. j'ai même tenter de copier/coller le code visible sur la doc de CakePhp.
Je souhaite utiliser cette méthode pour automatiser certaines opération plutôt que de la répéter sur toute les pages...
AppController
j'ai également essayer d'y mettre un debug($user) suivi d'un die() mais rien...
Une idée de comment mettre en place cette fonctionnalité ?
Merci !
Depuis plusieurs jours, j'essaye d'utiliser la méthode "isAuthorized" de CakePHP, mais rien n'y fait, je n'ai aucun changement à l'écran. j'ai même tenter de copier/coller le code visible sur la doc de CakePhp.
Je souhaite utiliser cette méthode pour automatiser certaines opération plutôt que de la répéter sur toute les pages...
AppController
class AppController extends Controller {
public $components = array(
'Session','Flash','Cookie',
'Auth' => array(
'logoutRedirect' => array('controller' => 'home', 'action' => 'index'),
'authorize' => array('Controller'),
'authenticate' => array(
'Form' => array(
'fields' => array('username' => 'email'),
'passwordHasher' => array(
'className' => 'Custom'
)
)
)
)
);
public function isAuthorized($user = null) {
// Chacun des utilisateur enregistré peut accéder aux fonctions publiques
if (empty($this->request->params['admin'])) {
return true;
}
}
j'ai également essayer d'y mettre un debug($user) suivi d'un die() mais rien...
Une idée de comment mettre en place cette fonctionnalité ?
Merci !
| EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici : ICI Merci d'y penser dans tes prochains messages. |
1 réponse
-
Salut,
mes souvenirs de cake sont assez éloignés, mais il me semble que tu dois définir ton beforefilter pour dire si telle ou telle action doit être accessible ou nonpublic function beforeFilter() { parent::beforeFilter(); $this->Auth->allow('add', 'logout'); }
tu as le ->allow qui liste tes actions autorisées (tu peux utiliser '*' je crois) ou tu peux utiliser le contraire ->deny qui va lister tes actions interdites.
Est-ce que tu as bien ajouté ton beforefilter au niveau de ton controller ?