2013-07-23 20 views
6

Mam sytuacji, gdy trzeba przekazać zmienną ścieżki jako argumentu do pre-autoryzacjiJak używać zmiennej path w @Preauthorize

@RequestMapping(value="/page/{cmd}", method = RequestMethod.GET) 
    @PreAuthorize("hasRole(#cmd)") 
    public void method(@PathVariable String cmd, HttpServletRequest request, HttpServletResponse response){ 
// my stuff 
} 

Nie working.can ktoś może zaproponować mi jak użyć ścieżki Zmienna w preautoryzacji proszę.

Odpowiedz

2

Spring Security's @PreAuthorize służy do autoryzacji dostępu do metod. Niewiele wiadomo o Spring MVC, w szczególności o jego adnotacji @RequestMapping.

Nazwy takie jak #cmd będą odnosić się do parametrów metody, a parametr cmd ma wartość null. Zmień go na adres:

@PathVariable("cmd") String cmd 

ten sposób cmd zmienna ścieżka będzie zobowiązany do cmd metody parametr, który zostanie związany #cmd w @PreAuthorize.

Powiązane problemy