gpt4 book ai didi

java - 配置 Apache Shiro 权限

转载 作者:行者123 更新时间:2023-11-29 04:45:02 25 4
gpt4 key购买 nike

事情是这样的:我想让用户具有这样的角色:

表用户:id|用户名|role_id

表角色:id|name|add_users|add_customers|configure_mail|...|...|...

权限是二进制类型,当用户可以执行操作时它有一个 1 否则它有一个 0。

在我的 shiro.ini 中我有查询:

jdbcRealm=org.apache.shiro.realm.jdbc.JdbcRealm
jdbcRealm.authenticationQuery = SELECT password from users where username = ?
jdbcRealm.userRolesQuery = select name from roles where id = (select role_id FROM users WHERE username = ?)

有办法吗?我已经搜索了好几天了。我将衷心感谢您的帮助。提前谢谢大家。

最佳答案

您是否认为将权限存储在另一个表中会更好,这样您就有空间进一步修改和增强

Table users: id|username|role_id

Table roles: id|name

Table permission: permission|role

now in permission table
customer:add,04 -- 04 is role
mail:configure,04
.....

所以在 shiro ini 中

jdbcRealm.permissionsQuery = SELECT permid FROM apppermissions WHERE  UPPER(roleid)=UPPER(?)
jdbcRealm.permissionsLookupEnabled = true

关于java - 配置 Apache Shiro 权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37534017/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com