Spring Security で次の Java Config を使用しています。
protected void configure(HttpSecurity http) throws Exception {
http
.authorizeRequests()
.anyRequest().authenticated()
.and()
.httpBasic();
}
この構成に基づいて、すべての要求が認証されます。認証されずにコントローラをヒットするAnonymousAuthenticationFilter
と、 は で Authentication オブジェクトを作成しますusername=anonymousUser, role=ROLE_ANONYMOUS
。
特定のコントローラーメソッドへの匿名アクセスを提供しようとしており、次のそれぞれを使用しようとしました:
@Secured("ROLE_ANONYMOUS")
@Secured("IS_AUTHENTICATED_ANONYMOUSLY")
コントローラ メソッドが呼び出されると、「HTTP ステータス 401 - このリソースにアクセスするには完全な認証が必要です」という応答が返されます。
ROLE_ANONYMOUS
このメッセージが表示される理由と、IS_AUTHENTICATED_ANONYMOUSLY
この構成を使用して動作しないように見える理由を理解するのに誰か助けてもらえますか?
ありがとう、
JP