Bonjour à tous,
J'ai un soucis de @CrossOrigin avec Sprig Boot sécurity.
Ce que j'ai dans mon code pour l'instant ne fonctionne pas, malgré mes recherche sur le sujet.
Dans mon pom.xml:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> </dependency>
Ma class d'API REST:
Ma class gèrant la sécurité:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 public class ApiTempController { @Autowired private ApiTempJoin apiTempJoins; // @Autowired // private ApiGetDay apiGetDay; @GetMapping("api/last24") @CrossOrigin("*") public Iterable<ApiTempJoin> dataLast24(){ return apiTempJoins.findByIdInvOrderLast24Temp(); } @GetMapping("api/{day}") @CrossOrigin("*") public Iterable<ApiTempJoin> data1day(@PathVariable String day){ return apiTempJoins.findByDay(day); } @PostMapping(value = "/api/getDay", consumes = {"application/json"}) @CrossOrigin("*") public ApiGetDay getDay(@RequestBody ApiGetDay apiGetDay){ String oneDay = apiGetDay.getGetDay(); System.out.println(oneDay); data1day(oneDay); return apiGetDay; } }
Voila je pense que j'ai mis le principale, je fait encore des essaies, mais pour l'instant, rien ne fonctionne.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38 package fr.synergy.projet_THP.controlers.security; import org.springframework.context.annotation.Bean; import org.springframework.security.config.annotation.web.builders.HttpSecurity; import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; import org.springframework.security.core.userdetails.User; import org.springframework.security.core.userdetails.UserDetails; import org.springframework.security.core.userdetails.UserDetailsService; import org.springframework.security.provisioning.InMemoryUserDetailsManager; @EnableWebSecurity public class WebSecurityConfig extends WebSecurityConfigurerAdapter { public void configure (HttpSecurity http) throws Exception{ http.cors().and().authorizeHttpRequests((requests) -> requests .antMatchers("/admin", "/admin/index").permitAll() .anyRequest().authenticated() ); http.cors().and().formLogin((form) -> form .loginPage("/login") .permitAll() ) .logout((logout) -> logout.permitAll()); } @Bean public UserDetailsService userDetailsService() { UserDetails user = User.withDefaultPasswordEncoder() .username("user") .password("pwd") .roles("USER") .build(); return new InMemoryUserDetailsManager(user); } }
Donc, si quelqu'un de vous a une solution?
Merci d'avance
Partager