Confusão em torno do acesso anônimo do Spring Security usando Java Config
Estou usando o seguinte Java Config com Spring Security:
protected void configure(HttpSecurity http) throws Exception {
http
.authorizeRequests()
.anyRequest().authenticated()
.and()
.httpBasic();
}
Com base nesta configuração, todos os pedidos são autenticados. Quando você atinge um controlador sem ser autenticado, oAnonymousAuthenticationFilter
criará um objeto de autenticação para você comusername=anonymousUser, role=ROLE_ANONYMOUS
.
Estou tentando fornecer acesso anônimo a um método específico do controlador e tentei usar cada um dos seguintes:
@Secured("ROLE_ANONYMOUS")
@Secured("IS_AUTHENTICATED_ANONYMOUSLY")
Quando os métodos do controlador são chamados, a seguinte resposta é dada: "HTTP Status 401 - É necessária autenticação completa para acessar este recurso"
Alguém pode me ajudar a entender por que estamos recebendo esta mensagem e por queROLE_ANONYMOUS
/IS_AUTHENTICATED_ANONYMOUSLY
não parece funcionar usando esta configuração?
Obrigado,
JP