| 
															
																@ -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() { 
															 |