0
親愛的同胞Sping'lers,所有網站重定向到登錄頁面
我偶然發現了一個在春天登錄攔截url的問題。
我只是想所有頁面重定向到我的登錄頁面,如果不記錄下來。
這是我使用的安全上下文。但是,這段代碼不允許我訪問任何頁面:
<security:http auto-config="true">
<security:form-login login-page="/login" default-target-url="/welcome"
authentication-failure-url="/loginfailed" />
<security:logout logout-success-url="/logout" />
<security:intercept-url pattern="/login" access="permitAll" />
<security:intercept-url pattern="/**" access="hasRole(ROLE_USER)" />
</security:http>
感謝您的幫助。
Lomu
根據jonnieM's post改變了我的配置:
它現在
<security:http auto-config="true">
<security:intercept-url pattern="/login" access="IS_AUTHENTICATED_ANONYMOUSLY" />
<security:intercept-url pattern="/**" access="ROLE_USER" />
<security:form-login login-page="/login" default-target-url="/welcome"
authentication-failure-url="/loginfailed" />
<security:logout logout-success-url="/logout" />
</security:http>
因此,我認爲 「IS_AUTHENTICATED_ANONYMOUSLY」 的伎倆:)
乾杯Lomu
喜zagyi, 如果我設置使用表達式=「真」我需要改變配置如下的 '<安全:HTTP使用表達式=「真正的」自動配置=「真」> \t \t \t \t \t \t <安全:表單登錄的登錄頁= 「/登錄」 默認目標-URL = 「/歡迎」 \t \t \t認證失敗-URL = 「/ loginfailed」/> \t \t <安全性:註銷註銷成功的url =「/註銷」/> \t security:http>' –
爲什麼?你原來的配置有什麼問題('permitall'分配給'/ login')?我認爲它應該與'use-expressions =「true」'一起工作。 – zagyi
我檢查了它。 「permitAll」而不是isAnonymous()也在工作。你是對的。 –