springcloud 排除token 验证
时间: 2023-07-27 07:26:40 浏览: 85
在Spring Cloud中,可以通过配置来排除Token验证,即在特定的请求中不验证Token,可以通过以下步骤实现:
1. 在Spring Security的配置中,添加`HttpSecurity`的配置,配置不需要验证Token的请求:
```
@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Autowired
private JwtTokenProvider jwtTokenProvider;
@Override
protected void configure(HttpSecurity http) throws Exception {
// 排除不需要验证Token的请求
http.authorizeRequests()
.antMatchers("/api/public/**").permitAll()
.anyRequest().authenticated()
.and().apply(new JwtConfigurer(jwtTokenProvider));
}
}
```
2. 在需要排除Token验证的请求中,添加`@PermitAll`注解:
```
@RestController
@RequestMapping("/api/public")
public class PublicController {
@Autowired
private PublicService publicService;
@GetMapping("/info")
@PermitAll
public String getInfo() {
return publicService.getInfo();
}
}
```
通过以上步骤,就可以在特定的请求中排除Token验证。需要注意的是,`@PermitAll`注解需要在`org.springframework.security.access.annotation`包中,需要添加对应的依赖:
```
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-access-core</artifactId>
<version>${spring-security.version}</version>
</dependency>
```
阅读全文