0

私はSpring Bootを使用してRESTful Webサービスを開発しました。 URLを入力すると、JSONリソースが返されます。サーバー側は完全にJSON APIに準拠していませんが動作します。安全な安眠スプリングブートアプリケーション

単純なHTTP基本認証でRESTfulサービスを保護したいと考えています。クライアントは、要求が適切Authorization basic XXXXXXXXで構成されていない限り、それは、HTTP認証されていないエラーが発生します

http://mycompany.com/restful/xyz 

にアクセスするためにHTTP GETを送信する場合、単純に、置きます。 xxxxxxは、の暗号化形式です。pwd

私はSpring Securityでやりたかったのです。

@Configuration 
@EnableGlobalMethodSecurity(prePostEnabled = true) 
@EnableWebSecurity 
public class SecurityConfiguration extends WebSecurityConfigurerAdapter { 
    @Autowired 
    public void configureGlobalSecurity(AuthenticationManagerBuilder auth) throws Exception { 
    .... 
    } 

    @Override 
    protected void configure(HttpSecurity http) throws Exception { 
     .... 
    } 
} 

は、私が理解する必要が二つあります:いくつかのグーグル後、私はのようないくつかのクラスを作成する必要があるかもしれません

私は何とか春のMVCを使用してWebアプリケーションに関連していた見つけ
  1. ほとんど春Securityサンプルしかし、私はそれが上記のようなシナリオで使用できることを確信しています - スタンドアロンのWebサービス(Tomcatではいいですが、Webアプリケーションではありません)。

  2. 誰でものみ特定のユーザ/ PWDがリソースにフィルタを通過させる効果への作業上記の二つの方法の一部のコードスニペットを表示することができ、

    http://mycompany.com/restful/xyz 
    

    さもなければHTTP認証エラーコード返されます。

誰でも手助けできますか?

答えて

0

あなたはこのような何か持つことができます。

@Configuration 
@EnableGlobalMethodSecurity(prePostEnabled = true) 
@EnableWebSecurity 
public class SecurityConfig extends WebSecurityConfigurerAdapter { 
    @Override 
    protected void configure(HttpSecurity http) throws Exception { 
     http.authorizeRequests().antMatchers("/restful/**").hasRole("ROLE_USER").and().httpBasic(); 
    } 

    @Override 
    protected void configure(AuthenticationManagerBuilder auth) throws Exception { 
     auth.inMemoryAuthentication().withUser("john").password("mypass").roles("ROLE_USER"); 
    } 
} 
+0

は魔法のように動作し、あなたに感謝します –