OAuth2(リソースサーバーとして)で正しく動作するスプリングブートアプリケーションがあります。カスタムconfigure(HttpSecurity http)
メソッドはありません。のみ春のセキュリティ:手動でデフォルト設定を戻す
spring-boot-starter-security
spring-security-oauth2
spring-security-jwt
がpomに追加されます。
保護されていないエンドポイントを追加する必要がありました。だから私は、カスタム設定を追加しました:
@Configuration
public class Security extends ResourceServerConfigurerAdapter {
@Override
public void configure(HttpSecurity http) throws Exception {
http.authorizeRequests()
.antMatchers(GET, "/public/**").anonymous()
.anyRequest().authenticated()
}
}
は今/public/**
エンドポイントが正常に皆のために開いています。しかし、他のすべてのエンドポイントは動作を停止し、デバッグレベルに私が参照してください。
paOAuth2AuthenticationProcessingFilter:認証要求が失敗しました:エラー=「ACCESS_DENIED」、しましたerror_description =「リソースIDが含まれていない無効なトークン(のOAuth2-リソース)」
を
だから、私は何とか誤ってデフォルトのOAuth2設定をオーバーロードしていると思います。それを戻す方法?
これはセキュリティに触れる唯一の設定です。 '@ EnableResourceServer'はメインクラスにあります。私がその 'Security'クラスを追加する前にすべて正常に動作しました – piotrek
私は認証サーバとしてcloudfoundry-uaaを持っています。リソースサーバーとしてのみ機能するサーバーで問題が発生する – piotrek
セキュリティクラスを削除して、エンドポイントが再び機能するかどうかを確認することができます。 –