|
@@ -1,53 +0,0 @@
|
1
|
|
-package com.gct.aoid.config;
|
2
|
|
-
|
3
|
|
-
|
4
|
|
-import com.gct.common.security.core.CustomAccessDeniedHandler;
|
5
|
|
-import com.gct.common.security.core.JwtAuthenticationFilter;
|
6
|
|
-import org.springframework.context.annotation.Bean;
|
7
|
|
-import org.springframework.context.annotation.Configuration;
|
8
|
|
-import org.springframework.security.config.annotation.method.configuration.EnableGlobalMethodSecurity;
|
9
|
|
-import org.springframework.security.config.annotation.web.builders.HttpSecurity;
|
10
|
|
-import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
|
11
|
|
-import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
|
12
|
|
-import org.springframework.security.config.http.SessionCreationPolicy;
|
13
|
|
-import org.springframework.security.web.access.AccessDeniedHandler;
|
14
|
|
-import org.springframework.security.web.authentication.www.BasicAuthenticationFilter;
|
15
|
|
-
|
16
|
|
-/**
|
17
|
|
- * Spring Security配置
|
18
|
|
- * @author: NewMeanning
|
19
|
|
- * @create: 2020-12-25 11:36
|
20
|
|
- */
|
21
|
|
-@Configuration
|
22
|
|
-@EnableWebSecurity // 开启Spring Security
|
23
|
|
-@EnableGlobalMethodSecurity(prePostEnabled = true) // 开启权限注解,如:@PreAuthorize注解
|
24
|
|
-public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
|
25
|
|
-
|
26
|
|
-
|
27
|
|
- @Override
|
28
|
|
- protected void configure(HttpSecurity http) throws Exception {
|
29
|
|
- http
|
30
|
|
- .csrf().disable()
|
31
|
|
- .authorizeRequests()
|
32
|
|
- .antMatchers("/swagger-ui.html").permitAll()
|
33
|
|
- .antMatchers("/swagger-resources/**").permitAll()
|
34
|
|
- .antMatchers("/v2/api-docs").permitAll()
|
35
|
|
- // 服务监控
|
36
|
|
- .antMatchers("/actuator/**").permitAll()
|
37
|
|
- // 其他所有请求需要身份认证
|
38
|
|
- .anyRequest().authenticated()
|
39
|
|
- .and().exceptionHandling().accessDeniedHandler(accessDeniedHandler())
|
40
|
|
- .and()
|
41
|
|
- //禁用session
|
42
|
|
- .sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS)
|
43
|
|
- .and()
|
44
|
|
- //添加自定义过滤器
|
45
|
|
- .addFilterAt(new JwtAuthenticationFilter(super.authenticationManager()), BasicAuthenticationFilter.class);
|
46
|
|
- }
|
47
|
|
-
|
48
|
|
- @Bean
|
49
|
|
- public AccessDeniedHandler accessDeniedHandler() {
|
50
|
|
- return new CustomAccessDeniedHandler();
|
51
|
|
- }
|
52
|
|
-
|
53
|
|
-}
|