Как отключить экран входа в Spring-security?

Довольно старый вопрос здесь, но если у кого-то есть мозговой блок, как я только что сделал, и наткнулся на это, надеюсь, это поможет.

Я тоже искал двунаправленную HashMap, иногда это является самым простым из наиболее полезных ответов.

Если вы не хотите изобретать колесо и предпочитаете не добавлять в проект другие библиотеки или проекты, как насчет простой реализации параллельных массивов (или ArrayLists, если ваш проект требует этого).

SomeType[] keys1 = new SomeType[NUM_PAIRS];
OtherType[] keys2 = new OtherType[NUM_PAIRS];

Как только вы знаете индекс 1 из двух ключей, вы можете легко запросить другой. Таким образом, ваши методы поиска выглядят примерно так:

SomeType getKey1(OtherType ot);
SomeType getKey1ByIndex(int key2Idx);
OtherType getKey2(SomeType st); 
OtherType getKey2ByIndex(int key2Idx);

Предполагается, что вы используете подходящие объектно-ориентированные структуры, где только методы модифицируют эти массивы / ArrayLists, было бы очень просто поддерживать их параллель. Еще проще для ArrayList, так как вам не придется перестраивать, если размер массивов изменяется, если вы добавляете / удаляете в тандеме.

17
задан membersound 13 May 2014 в 16:14
поделиться

3 ответа

Безопасность по умолчанию в Spring Boot - Basic. Вы можете отключить его, установив security.basic.enabled=false. Подробнее об этом здесь и здесь .

7
ответ дан Andrei Stefan 13 May 2014 в 16:14
поделиться

Если кому-то все еще нужно решение, поместите в контроллер REST метод, подобный следующему:

@RestController
public class myRestController{

    @GetMapping("/login")
    public String redirectTo(){
        return "yourRedirectLink";
    }

}

Это решение очень хорошо для работы с пружиной и реакции, упакованной в банку

1
ответ дан JeremyW 13 May 2014 в 16:14
поделиться

Чтобы полностью отключить маршрут входа в систему, используйте объект конфигурации Spring Security

В следующем фрагменте кода используется org.springframework.boot:2.1.6.RELEASE

@Configuration
@EnableWebSecurity
class SecurityConfig : WebSecurityConfigurerAdapter() {
  override fun configure(security: HttpSecurity) {
    super.configure(security)

    security.httpBasic().disable()

    security.cors().and().csrf().disable().authorizeRequests()
      .anyRequest().authenticated()
      .and().formLogin().disable() // <-- this will disable the login route
      .addFilter(JWTAuthorizationFilter(authenticationManager()))
      .sessionManagement().sessionCreationPolicy(SessionCreationPolicy.STATELESS)
  }

  @Bean
  fun corsConfigurationSource(): CorsConfigurationSource {
    val source = UrlBasedCorsConfigurationSource()
    val config = CorsConfiguration().applyPermitDefaultValues()
    config.addExposedHeader("Authorization")
    source.registerCorsConfiguration("/**", config)
    return source
  }
}
0
ответ дан nilobarp 13 May 2014 в 16:14
поделиться
Другие вопросы по тегам:

Похожие вопросы: