2015-07-21 66 views
1

Spring Security4.0.1.RELEASE在提供包含由兩個輸入字段(用戶名和密碼)組成的登錄表單的定製JSP頁面時是否需要定製登錄控制器? Spring Security示例應用程序spring-security-samples-chat-jc有一個非常簡單的例子,但spring-security-samples-form-jc根本沒有定義它。Spring Security在提供自定義登錄表單時是否需要自定義登錄控制器?

+0

你在說什麼類型的自定義登錄表單?一般來說,登錄表單將由用戶名和密碼組成,Spring安全性設計得很好。請詳細說明這個問題。 –

+0

我不這麼認爲,我想你只需要將請求發佈到正確的參數右側的url – JohnnyAW

回答

0

WebSecurityConfigurerAdapter有法命名的配置和它裏面你可以做這樣的事情:

http.csrf().disable() 
       .formLogin() 
       .permitAll() 
       .loginProcessingUrl("/login") 
       .usernameParameter("email") 
       .passwordParameter("password"); 

之後,你不必創建一個控制器。只需使用名爲電子郵件和密碼的urlencoded參數POST到/ login端點即可。

+0

爲什麼你禁用[CSRF](https://en.wikipedia.org/wiki/Cross-site_request_forgery) ? –

+0

方法'loginPage()'和'loginProcessingUrl()'有什麼區別? –

+0

loginProcessingUrl()是POST的地址。 loginPage()是登錄表單的地址。我禁用了它,因爲我使用spring-boot作爲移動應用程序的REST服務器。 – furkan3ayraktar