|  | @ -11,8 +11,10 @@ import org.springframework.security.config.annotation.web.builders.HttpSecurity;
 | 
												
													
														
															|  | import org.springframework.security.config.annotation.web.builders.WebSecurity;
 |  | import org.springframework.security.config.annotation.web.builders.WebSecurity;
 | 
												
													
														
															|  | import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
 |  | import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
 | 
												
													
														
															|  | import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
 |  | import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
 | 
												
													
														
															|  | 
 |  | import org.springframework.security.core.session.SessionRegistry;
 | 
												
													
														
															|  | import org.springframework.security.core.userdetails.UserDetailsService;
 |  | import org.springframework.security.core.userdetails.UserDetailsService;
 | 
												
													
														
															|  | import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter;
 |  | import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter;
 | 
												
													
														
															|  | 
 |  | import org.springframework.security.web.authentication.session.ConcurrentSessionControlAuthenticationStrategy;
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | /**
 |  | /**
 | 
												
													
														
															|  |  * Created by progr1mmer on 2018/1/26.
 |  |  * Created by progr1mmer on 2018/1/26.
 | 
												
											
												
													
														
															|  | @ -34,8 +36,11 @@ public class EhrWebSecurityConfiguration extends WebSecurityConfigurerAdapter {
 | 
												
													
														
															|  |     private EhrWebAuthenticationFailureHandler ehrWebAuthenticationFailureHandler;
 |  |     private EhrWebAuthenticationFailureHandler ehrWebAuthenticationFailureHandler;
 | 
												
													
														
															|  |     //@Autowired
 |  |     //@Autowired
 | 
												
													
														
															|  |     //private EhrWebAccessDecisionManager ehrWebAccessDecisionManager;
 |  |     //private EhrWebAccessDecisionManager ehrWebAccessDecisionManager;
 | 
												
													
														
															|  |     //@Autowired
 |  | 
 | 
												
													
														
															|  |     //private SessionRegistry sessionRegistry;
 |  | 
 | 
												
													
														
															|  | 
 |  |     @Autowired
 | 
												
													
														
															|  | 
 |  |     private SessionRegistry sessionRegistry;
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | 
 |  |     @Autowired
 | 
												
													
														
															|  | 
 |  |     private EhrWebContextLogoutHandler ehrWebContextLogoutHandler;
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  |     @Override
 |  |     @Override
 | 
												
													
														
															|  |     public void configure(WebSecurity web) throws Exception {
 |  |     public void configure(WebSecurity web) throws Exception {
 | 
												
											
												
													
														
															|  | @ -49,7 +54,7 @@ public class EhrWebSecurityConfiguration extends WebSecurityConfigurerAdapter {
 | 
												
													
														
															|  |         ehrWebUsernamePasswordAuthenticationFilter.setAuthenticationSuccessHandler(ehrWebAuthenticationSuccessHandler);
 |  |         ehrWebUsernamePasswordAuthenticationFilter.setAuthenticationSuccessHandler(ehrWebAuthenticationSuccessHandler);
 | 
												
													
														
															|  |         ehrWebUsernamePasswordAuthenticationFilter.setAuthenticationFailureHandler(ehrWebAuthenticationFailureHandler);
 |  |         ehrWebUsernamePasswordAuthenticationFilter.setAuthenticationFailureHandler(ehrWebAuthenticationFailureHandler);
 | 
												
													
														
															|  |         ehrWebUsernamePasswordAuthenticationFilter.setAuthenticationManager(authenticationManagerBean());
 |  |         ehrWebUsernamePasswordAuthenticationFilter.setAuthenticationManager(authenticationManagerBean());
 | 
												
													
														
															|  |         //ehrWebUsernamePasswordAuthenticationFilter.setSessionAuthenticationStrategy(new ConcurrentSessionControlAuthenticationStrategy(sessionRegistry));
 |  | 
 | 
												
													
														
															|  | 
 |  |         ehrWebUsernamePasswordAuthenticationFilter.setSessionAuthenticationStrategy(new ConcurrentSessionControlAuthenticationStrategy(sessionRegistry));
 | 
												
													
														
															|  |         http.addFilterBefore(ehrWebUsernamePasswordAuthenticationFilter, UsernamePasswordAuthenticationFilter.class);
 |  |         http.addFilterBefore(ehrWebUsernamePasswordAuthenticationFilter, UsernamePasswordAuthenticationFilter.class);
 | 
												
													
														
															|  |         // ---------- 自定义Filter End ----------
 |  |         // ---------- 自定义Filter End ----------
 | 
												
													
														
															|  |         //http.sessionManagement().maximumSessions(3).expiredUrl("/login?expired").sessionRegistry(sessionRegistry);
 |  |         //http.sessionManagement().maximumSessions(3).expiredUrl("/login?expired").sessionRegistry(sessionRegistry);
 | 
												
											
												
													
														
															|  | @ -69,7 +74,7 @@ public class EhrWebSecurityConfiguration extends WebSecurityConfigurerAdapter {
 | 
												
													
														
															|  |                 .antMatchers("/front/views/**").hasRole("USER")
 |  |                 .antMatchers("/front/views/**").hasRole("USER")
 | 
												
													
														
															|  |                 .antMatchers("/**").hasRole("USER")
 |  |                 .antMatchers("/**").hasRole("USER")
 | 
												
													
														
															|  |                 .and().formLogin().loginPage("/login")
 |  |                 .and().formLogin().loginPage("/login")
 | 
												
													
														
															|  |                 .and().logout().logoutUrl("/logout").logoutSuccessUrl("/login")
 |  | 
 | 
												
													
														
															|  | 
 |  |                 .and().logout().addLogoutHandler(ehrWebContextLogoutHandler).logoutUrl("/logout").logoutSuccessUrl("/login")
 | 
												
													
														
															|  |                 .and().headers().frameOptions().disable()
 |  |                 .and().headers().frameOptions().disable()
 | 
												
													
														
															|  |                 .and().csrf().disable();
 |  |                 .and().csrf().disable();
 | 
												
													
														
															|  |     }
 |  |     }
 | 
												
											
												
													
														
															|  | @ -100,6 +105,11 @@ public class EhrWebSecurityConfiguration extends WebSecurityConfigurerAdapter {
 | 
												
													
														
															|  |     EhrWebAuthenticationFailureHandler ehrWebAuthenticationFailureHandler(){
 |  |     EhrWebAuthenticationFailureHandler ehrWebAuthenticationFailureHandler(){
 | 
												
													
														
															|  |         return new EhrWebAuthenticationFailureHandler();
 |  |         return new EhrWebAuthenticationFailureHandler();
 | 
												
													
														
															|  |     }
 |  |     }
 | 
												
													
														
															|  | 
 |  | 
 | 
												
													
														
															|  | 
 |  |     @Bean
 | 
												
													
														
															|  | 
 |  |     EhrWebContextLogoutHandler ehrWebContextLogoutHandler(){
 | 
												
													
														
															|  | 
 |  |         return new EhrWebContextLogoutHandler();
 | 
												
													
														
															|  | 
 |  |     }
 | 
												
													
														
															|  |     /**
 |  |     /**
 | 
												
													
														
															|  |     @Bean
 |  |     @Bean
 | 
												
													
														
															|  |     EhrWebAccessDecisionManager ehrWebAccessDecisionManager() {
 |  |     EhrWebAccessDecisionManager ehrWebAccessDecisionManager() {
 |