jfinal+shiro +jfinal ext 时,shiro.ini 里的[urls] 配置不起作用?求助

kakaximu 发布于 2013/11/12 09:22
阅读 2K+
收藏 2

下面的 admin 路径 需要确认角色 xxx 才能访问

实际效果是不存在的

但是在控制该路径的Controller 里添加@RequiresRoles(xxx) 却能控制访问。

[urls]
/** = anon
/card/** = user
/school/** = user
/rpc/rest/** = perms[rpc:invoke], authc
/admin/** = roles[xxx]

附上 web.xml内容


<!-- shiro -->
	<listener>
		<listener-class>org.apache.shiro.web.env.EnvironmentLoaderListener</listener-class>
	</listener>
	<filter>
		<filter-name>shiro</filter-name>
		<filter-class>org.apache.shiro.web.servlet.ShiroFilter</filter-class>
	</filter>
	<filter-mapping>
		<filter-name>shiro</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>



	<!-- jfinal -->
	<filter>
		<filter-name>jfinal</filter-name>
		<filter-class>com.jfinal.core.JFinalFilter</filter-class>
		<init-param>
			<param-name>configClass</param-name>
			<param-value>com.permission.config.Config</param-value>
		</init-param>
	</filter>
	<filter-mapping>
		<filter-name>jfinal</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>


加载中
1
玛雅牛
k
kakaximu
我配了 /admin/** = roles[admin] , 但是AdminController 里没配@RequiresRoles("admin"), 我输入地址直接访问admin目录下的文件是可以的,web.xml 的shiroFilter 没起到作用
k
kakaximu
/admin/** = roles[admin] 这个是表示需要admin角色才能访问/admin/路径下任意文件吧,不需要在Controller 里再添加@RequiresRoles("admin")了吧。这么理解没错吧?
k
kakaximu
牛兄,我就是看着你配的
0
stu51
stu51

把这个去掉试试

/** = anon

 

0
Dreampie
Dreampie
少年 /** = anon 这个配置到最后   不然每次都先过无权限过滤   之后的登录的都被排除了
0
Dreampie
Dreampie

http://www.oschina.net/p/jfinal-dreampie   基于数据库的url配置  shiro数据库权限

0
平安OSC
平安OSC

@玛雅牛  的ini配置有问题,将/** = anon放到最后

[urls]
/card/** = user
/school/** = user
/** = anon




返回顶部
顶部