|
@@ -2,6 +2,7 @@ package org.springframework.security.config.http
|
|
|
|
|
|
import org.springframework.beans.factory.BeanCreationException
|
|
import org.springframework.beans.factory.BeanCreationException
|
|
import org.springframework.security.util.FieldUtils
|
|
import org.springframework.security.util.FieldUtils
|
|
|
|
+import org.springframework.security.web.access.ExceptionTranslationFilter
|
|
import org.springframework.security.web.authentication.SavedRequestAwareAuthenticationSuccessHandler;
|
|
import org.springframework.security.web.authentication.SavedRequestAwareAuthenticationSuccessHandler;
|
|
import org.springframework.security.web.authentication.SimpleUrlAuthenticationFailureHandler;
|
|
import org.springframework.security.web.authentication.SimpleUrlAuthenticationFailureHandler;
|
|
import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter
|
|
import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter
|
|
@@ -32,6 +33,26 @@ class FormLoginConfigTests extends AbstractHttpConfigTests {
|
|
FieldUtils.getFieldValue(filter, 'successHandler.alwaysUseDefaultTargetUrl');
|
|
FieldUtils.getFieldValue(filter, 'successHandler.alwaysUseDefaultTargetUrl');
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ def 'form-login attributes support SpEL'() {
|
|
|
|
+ setup:
|
|
|
|
+ def spelUrl = '#{T(org.springframework.security.config.http.WebConfigUtilsTest).URL}'
|
|
|
|
+ def expectedUrl = WebConfigUtilsTest.URL
|
|
|
|
+ when:
|
|
|
|
+ xml.http {
|
|
|
|
+ 'form-login'('default-target-url': spelUrl , 'authentication-failure-url': spelUrl, 'login-page': spelUrl)
|
|
|
|
+ }
|
|
|
|
+ createAppContext()
|
|
|
|
+ def unPwdFilter = getFilter(UsernamePasswordAuthenticationFilter)
|
|
|
|
+ def exTransFilter = getFilter(ExceptionTranslationFilter)
|
|
|
|
+
|
|
|
|
+ then:
|
|
|
|
+ unPwdFilter.successHandler.defaultTargetUrl == expectedUrl
|
|
|
|
+ unPwdFilter
|
|
|
|
+ FieldUtils.getFieldValue(unPwdFilter, 'successHandler.defaultTargetUrl') == expectedUrl
|
|
|
|
+ FieldUtils.getFieldValue(unPwdFilter, 'failureHandler.defaultFailureUrl') == expectedUrl
|
|
|
|
+ FieldUtils.getFieldValue(exTransFilter, 'authenticationEntryPoint.loginFormUrl') == expectedUrl
|
|
|
|
+ }
|
|
|
|
+
|
|
def invalidLoginPageIsDetected() {
|
|
def invalidLoginPageIsDetected() {
|
|
when:
|
|
when:
|
|
xml.http {
|
|
xml.http {
|