【发布时间】:2015-08-31 13:03:13
【问题描述】:
我正在设置 Spring Security 来处理登录用户。我已经以用户身份登录,并在成功登录后被带到拒绝访问错误页面。我不知道我的用户实际上被分配了哪些角色,或者导致访问被拒绝的规则,因为我不知道如何为 Spring Security 库启用调试。
我的安全 xml:
<?xml version="1.0" encoding="UTF-8"?>
<beans ... >
<!-- security -->
<security:debug/><!-- doesn't seem to be working -->
<security:http auto-config="true">
<security:intercept-url pattern="/Admin**" access="hasRole('PROGRAMMER') or hasRole('ADMIN')"/>
<security:form-login login-page="/Load.do"
default-target-url="/Admin.do?m=loadAdminMain"
authentication-failure-url="/Load.do?error=true"
username-parameter="j_username"
password-parameter="j_password"
login-processing-url="/j_spring_security_check"/>
<security:csrf/><!-- enable Cross Site Request Forgery protection -->
</security:http>
<security:authentication-manager>
<security:authentication-provider>
<security:jdbc-user-service data-source-ref="loginDataSource"
users-by-username-query="SELECT username, password, active FROM userinformation WHERE username = ?"
authorities-by-username-query="
SELECT ui.username, r.rolename
FROM role r, userrole ur, userinformation ui
WHERE ui.username=?
AND ui.userinformationid = ur.userinformationid
AND ur.roleid = r.roleid "
/>
<security:password-encoder hash="md5"/>
</security:authentication-provider>
</security:authentication-manager>
</beans>
我也尝试将log4j.logger.org.springframework.security=DEBUG 添加到我的 log4j.properties
如何获取 Spring Security 的调试输出?
【问题讨论】:
-
检查这个link如果这可以帮助你。
-
@pise 您可以将其添加为答案(至少包含相关的摘录/摘要),以便我可以将其标记为已解决?
-
查看这个问题的答案:stackoverflow.com/questions/7840088/…
-
嘿 - 尝试将其添加为答案,然后将其转换为评论。