Nello specificoPrimavera di sicurezza HTTP di base per la riposante e FormLogin (cookie) per il web - Annotazioni
voglio avere HTTP di base l'autenticazione solo per un motivo specifico URL.
In dettaglio
Sto creando un'interfaccia API per la mia applicazione e che ha bisogno di essere autenticato da semplice autenticazione HTTP di base. Ma altre pagine web dovrebbero non utilizzare HTTP basic ma piuttosto il login del modulo normale .
Configurazione attuale - Non funziona
@Override
protected void configure(HttpSecurity http) throws Exception {
http //HTTP Security
.csrf().disable() //Disable CSRF
.authorizeRequests() //Authorize Request Configuration
.antMatchers("/connect/**").permitAll()
.antMatchers("/", "/register").permitAll()
.antMatchers("/admin/**").hasRole("ADMIN")
.antMatchers("/api/**").hasRole("API")
.anyRequest().authenticated()
.and() //HTTP basic Authentication only for API
.antMatcher("/api/**").httpBasic()
.and() //Login Form configuration for all others
.formLogin().loginPage("/login").permitAll()
.and() //Logout Form configuration
.logout().permitAll();
}
Come posso rimuovere quel popup http auth di base. Ho provato tutto ma non sono riuscito a farlo. – 89n3ur0n
non utilizzare httpBasic, utilizzare formLogin. –
ha provato che senza successo, l'ho disabilitato da httpBasic(). Disable() e usato formLogin(), ma non sembra essere corretto. – 89n3ur0n