1. 概要

このチュートリアルでは、特定のプロファイルセキュリティを[X51X]無効にする方法を見ていきます。

2. 構成

まず、すべての要求を単純に許可するセキュリティ構成を定義しましょう。

これは、Spring @ ConfigurationWebSecurityConfigurerAdapterを拡張し、すべてのパスの要求を無視することで実現できます。

@Configuration
public class ApplicationSecurity extends WebSecurityConfigurerAdapter {
    @Override
    public void configure(WebSecurity web) throws Exception {
        web.ignoring().antMatchers("/**");
    }
}

これにより、認証だけでなくXSSなどのセキュリティ保護も遮断されることに注意してください。

3. プロファイルを指定する

ここで、特定のプロファイルに対してのみこの構成をアクティブ化する必要があります。

セキュリティを望まないユニットテストスイートがあるとしましょう。 このテストスイートが「test」という名前のプロファイルで実行されている場合、@Profileで構成に注釈を付けることができます。

@Profile("test")
@Configuration
public class ApplicationSecurity extends WebSecurityConfigurerAdapter {
    @Override
    public void configure(WebSecurity web) throws Exception {
        web.ignoring().antMatchers("/**");
    }
}

その結果、テスト環境が異なりますが、これは望ましくない場合があります。 または、セキュリティをオンのままにして、Springセキュリティのテストサポートを使用することもできます。

4. 結論

このチュートリアルでは、特定のプロファイルに対してSpringSecurityを無効にする方法を説明しました。

いつものように、完全なソースコードはGitHubから入手できます。