2017-05-15 10 views
0

バックエンドとしてmongo dbを使用したスプリングブートプロジェクトを作成しました。私はすべてのスプリングブートを使用した認証とセッション管理の理解

など this、私は thisthisようturorialsの多くをしてきた
メモリセッションでのいくつかの種類を維持しながら、ユーザーが(Redisのか、春のセッションに建てで何かを使用して)認証および承認されていることを確認したいですそのうち WebSecurityConfigAdapterを延長して HttpSecurityと設定し、 UserDetailServiceを入力してください。私は次のようにしました。

@Configuration 
@EnableGlobalMethodSecurity(prePostEnabled = true) 
@Order(SecurityProperties.ACCESS_OVERRIDE_ORDER) 
public class SecurityConfig extends WebSecurityConfigurerAdapter { 

    @Bean 
    public UserDetailsService userDetailsService(){ 
     return new StockUserDetailService(); 
    } 

    @Override 
    protected void configure(HttpSecurity http) throws Exception { 
     http 
       .authorizeRequests() 
       .antMatchers("/login/**").permitAll() 
       .antMatchers("/logout/**").permitAll() 
       .antMatchers("/admin/**").hasAuthority("ADMIN") 
       .antMatchers("/broker/**").hasAnyAuthority("BROKER") 
       .anyRequest().fullyAuthenticated(); 
    } 

    @Override 
    public void configure(AuthenticationManagerBuilder auth) throws Exception { 
     auth.userDetailsService(userDetailsService()); 
    } 
} 

しかし、私は理解していないことsessin管理が行われ、ユーザがログインするために使用すべきurlは何ですか? /loginのマッピングを持つコントローラを作成した場合、私のアクションはログインコントローラの中でどうなるべきですか?私は本当に全体の画像を取得していません。



UPDATE

私は/loginに投稿しようとしました。私は

{ 
"timestamp": 1494842451672, 
"status": 403, 
"error": "Forbidden", 
"message": "Could not verify the provided CSRF token because your session was not found.", 
"path": "/login" 
} 

答えて

1

春はあなたのため/loginルートを管理し、このエラーを取得します。ユーザーの資格情報でPOST要求を送信するだけで済みます。別のログインURLを指定する場合は、.loginProcessingUrl("/myCustomLoginUrl") UserDetailsServiceの場合は、loadUserByUsername(String userName)メソッドを実装する必要があります。このメソッドは、使用しているデータベースまたは永続ストレージからユーザを取得し、対応する権限でorg.springframework.security.core.userdetails.Userを返します。以下の公式ドキュメントをご覧ください:https://spring.io/guides/gs/securing-web/

+0

"/ login"に投稿しました。しかし、それは禁じられたエラーを与える。私の更新を確認してください – Ashwin

+0

これはCSRFトークンの問題です。フォームの隠しフィールドにcsrfトークンを提供するか、 '.csrf()でセキュリティ設定を無効にしてください。 disable() ' – balag3

関連する問題