0

我目前有这个配置

[main]
authc.loginUrl = /login.jsp
authc.usernameParam = user
authc.passwordParam = pass
authc.rememberMeParam = remember
authc.successUrl = /index.jsp

[urls]
/** = authc
/index.jsp = roles[user]
/cards.jsp = roles[user]
/jobs.jsp = roles[admin]

[users]
lol = ba, user
admin = ba, admin

并且登录有效,但是当我使用lol用户名登录时,我仍然可以访问 /jobs.jsp 页面,那么如何防止用户访问 /jobs.jsp 页面?

另外为什么当我删除/** = authc登录不起作用时,它只是将请求发布到登录页面而不处理登录?

我在哪里可以找到有关如何使用 shiro 为基于 Web 的项目配置角色的权威指南?

4

1 回答 1

1

我在哪里可以找到有关如何使用 shiro 为基于 Web 的项目配置角色的权威指南?

BalusC 有一篇很棒的帖子,我在将 Shiro 集成到我的应用程序时使用它 http://balusc.blogspot.co.il/2013/01/apache-shiro-is-it-ready-for-java- ee-6.html

关于您的主要问题,您的 cfg 似乎错误(在角色规范之前缺少密码),请参阅

http://shiro.apache.org/configuration.html#Configuration-%5Cusers%5C

行格式

[users] 部分中的每一行都必须符合以下格式:

用户名 = 密码,角色名称 1,角色名称 2,...,角色名称 N

等号左边的值是用户名等号右边的第一个值是用户的密码。需要密码。密码后的任何逗号分隔值都是分配给该用户的角色名称。角色名称是可选的。

于 2013-10-22T10:13:47.570 回答