Shiro 权限字符串已拒绝功能?

发布于 2024-09-24 00:08:43 字数 333 浏览 5 评论 0原文

我使用 grails 的 shiro 插件,并允许用户在运行时添加权限。 我的控制器有很多操作,例如索引、列表、编辑、创建、保存、更新、搜索、删除...... 假设控制器名称是“foo” 简单 foo 控制器的权限字符串是 富:* 意味着拥有此权限的每个人都可以访问 foo 控制器的所有操作。 但如果我只想拒绝删除操作,我必须编写权限字符串 像这样 foo:index,list,edit,create,save,update,search 这是可行的,但如果我的控制器具有比这更多的操作,则权限字符串非常长。 如果有这样的语法就更好了 foo:[delete] 添加方括号或类似的内容以仅拒绝删除操作但允许其余操作。

先感谢您。

I use shiro plugin for grails and allow user to add permission at runtime.
My controller has many actions such as index,list,edit,create,save,update,search,delete ....
Suppose that controller name is "foo"
The permission string for simple foo controller is
foo:*
means everybody which has this permission can access all actions of foo controller.
but if I want to deny only delete actions I must compose the permission string
like this foo:index,list,edit,create,save,update,search
This work out but the permission string is very long, if my controller has the actions more than this.
It would be better if there are the syntax like this foo:[delete]
add square bracket or something like that to deny only delete action but allow the rest.

Thank you in advance.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

淡莣 2024-10-01 00:08:43

您可以子类化 WildCardPermission 类。然后,您覆盖暗示方法并实现您自己的“仅拒绝”权限逻辑。

You could subclass the WildCardPermission class. Then you override the implies-method and implement your own "deny-only" permission logic.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文