사용자 로그인을 처리하기 위해 Spring Security를 설정하고 있습니다. 사용자로 로그인했으며 로그인이 성공하면 Access Denied 오류 페이지로 이동합니다. 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에 대한 디버그 출력을 어떻게 얻을 수 있습니까?