ฉันเคยเห็นโพสต์มากมายเกี่ยวกับปัญหาเดียวกัน แต่ไม่มีวิธีแก้ไขที่เหมาะกับฉัน
ฉันมี API ที่ปลอดภัยด้วยการรักษาความปลอดภัยแบบสปริงดังนี้
@EnableWebSecurity
@Component
public class SecurityConfiguration extends WebSecurityConfigurerAdapter {
@Autowired private UserService userService;
public SecurityConfiguration() {
}
@Override
public void configure(WebSecurity web) throws Exception {
web.ignoring().antMatchers("/actuator/shutdown", "/api/register");
}
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.csrf().disable()
.authorizeRequests()
.anyRequest().authenticated()
.and().httpBasic();
}
@Override
protected void configure(AuthenticationManagerBuilder auth) throws Exception {
auth
.userDetailsService(userService)
.passwordEncoder(passwordEncoder());
}
@Bean
public PasswordEncoder passwordEncoder() {
return new BCryptPasswordEncoder();
}
}
ฉันต้องการจุดสิ้นสุด /api/register
และ /actuator/shutdown
ที่ไม่มีการตรวจสอบสิทธิ์ แต่ปรากฏว่าปลายทางทั้งหมดส่งคืนรหัสสถานะ 401
เดียวกัน