Ho il seguente metodo in Spring MVC e utilizza Primavera di sicurezza:Come simulare il tag @PreAutorize in un test di integrazione?
@PreAuthorize("#phoneNumber == authentication.name")
@RequestMapping(value = "/{phoneNumber}/start", method = RequestMethod.POST)
public ModelAndView startUpgrading(@PathVariable("phoneNumber") String phoneNumber,
....
}
riesco a simulare l'autenticazione qualcosa di simile:
public Authentication tryToAuthenticate(String accountName, String password) {
UsernamePasswordAuthenticationToken token = new UsernamePasswordAuthenticationToken(accountName, password);
return authenticationManager.authenticate(token);
}
ma non so come impostare l'autorizzazione con @ PreAutorize.
Come si configura correttamente il contesto di test in modo che non venga negato l'accesso?
org.springframework.security.access.AccessDeniedException: Access is denied
at org.springframework.security.access.vote.AffirmativeBased.decide(AffirmativeBased.java:83)
at org.springframework.security.access.intercept.AbstractSecurityInterceptor.beforeInvocation(AbstractSecurityInterceptor.java:205)
Scusa risposta in ritardo, questo ha funzionato è piaciuto il fascino! 50 punti di taglie per te. Grazie per l'aiuto ! –
@ThomasVervik ... Sono lieto che la mia risposta ti abbia aiutato. :) –