Junior — Middle
Da li imate iskustva u implementaciji mehanizama autentifikacije koristeći Spring Security?
sobes.tech АИ
Одговор од АИ
Da, imam iskustvo u implementaciji autentifikacije koristeći Spring Security. Obično proces uključuje sledeće korake:
- Konfiguracija Spring Security za zaštitu URL-ova i definisanje pravila pristupa.
- Podešavanje mehanizma autentifikacije — na primer, putem baze podataka koristeći
UserDetailsService. - Implementacija klase koja učitava korisnika i njegove uloge.
- Konfiguracija forme za prijavu ili drugog mehanizma (JWT, OAuth2).
Primer osnovne konfiguracije sa formom za prijavu:
@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.authorizeRequests()
.antMatchers("/public/**").permitAll()
.anyRequest().authenticated()
.and()
.formLogin()
.loginPage("/login")
.permitAll();
}
@Override
protected void configure(AuthenticationManagerBuilder auth) throws Exception {
auth.inMemoryAuthentication()
.withUser("user")
.password(passwordEncoder().encode("password"))
.roles("USER");
}
@Bean
public PasswordEncoder passwordEncoder() {
return new BCryptPasswordEncoder();
}
}
Ovaj primer prikazuje jednostavnu autentifikaciju sa korisnikom u memoriji i formom za prijavu. U pravim projektima, obično se koristi baza podataka i složeniji mehanizmi.