2010-09-17 19 views
2

J'utilise shiro plugin pour grails et permet à l'utilisateur d'ajouter des permissions à l'exécution. Mon contrôleur a de nombreuses actions telles que index, liste, modifier, créer, enregistrer, mettre à jour, rechercher, supprimer .... Supposons que le nom du contrôleur est "foo" La chaîne d'autorisation pour le contrôleur foo simple est foo: * signifie que tout le monde qui a cette autorisation peut accéder à toutes les actions de foo controller. mais si je veux refuser seulement supprimer des actions, je dois composer la chaîne d'autorisation comme ce foo: index, liste, modifier, créer, enregistrer, mettre à jour, rechercher Ce travail mais la chaîne de permission est très longue, si mon contrôleur a les actions plus que cela. Ce serait mieux s'il y a la syntaxe comme ceci foo: [delete] ajouter un crochet ou quelque chose comme ça pour refuser seulement une action de suppression mais laisser le reste.Chaîne d'autorisation Shiro a refusé fonctionnalité?

Merci d'avance.

Répondre

0

Vous pourriez sous-classer la classe WildCardPermission. Ensuite, vous surchargez la méthode-implique et implémentez votre propre logique d'autorisation "refuser-seulement".