Ich habe die folgende Methode in Spring MVC und mit Spring Security:Wie simuliert man das @ PreAutorize-Tag in einem Integrationstest?
@PreAuthorize("#phoneNumber == authentication.name")
@RequestMapping(value = "/{phoneNumber}/start", method = RequestMethod.POST)
public ModelAndView startUpgrading(@PathVariable("phoneNumber") String phoneNumber,
....
}
ich verwalten Authentifizierung, so etwas zu simulieren:
public Authentication tryToAuthenticate(String accountName, String password) {
UsernamePasswordAuthenticationToken token = new UsernamePasswordAuthenticationToken(accountName, password);
return authenticationManager.authenticate(token);
}
Aber ich weiß nicht, wie die Genehmigung mit @ einzurichten PreAutorisieren.
Wie kann ich meinen Testkontext korrekt einrichten, so dass der Zugriff nicht verweigert wird?
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)
Sorry späte Antwort, das hat Spaß gemacht! 50 Bounty Punkte für Sie. Danke für Ihre Hilfe ! –
@ThomasVervik ... Ich bin froh, dass meine Antwort Ihnen geholfen hat. :) –