Spring Boot 2.XのSpring SecurityでBasic認証を無効にする方法をご紹介します。
目次
条件
- Spring Boot 2.X
Depricated
Spring Boot 1.Xでは、application.propertiesに以下の記述を追加するだけでBasic認証を無効にすることが出来ました。
security.basic.enabled=false
しかし、Spring Boot 2.0以降では、上記の記述を行うと以下のような警告が表示され、Basic認証は無効になりません。
Property "security.basic.enabled" is Depricated.
対応方法
以下のようなファイルを追加します。
- SecurityConfiguration.java
package com.example.demo; import org.springframework.context.annotation.Configuration; import org.springframework.security.config.annotation.web.builders.HttpSecurity; import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; @Configuration @EnableWebSecurity public class SecurityConfiguration extends WebSecurityConfigurerAdapter{ @Override protected void configure(HttpSecurity http) throws Exception{ http.authorizeRequests().antMatchers("/").permitAll(); } }
実行結果
対応前
対応後
Basic認証が行われなくなりました。
参考
stackoverflow:Spring Boot 2.0 disable default security
https://stackoverflow.com/questions/47273691/spring-boot-2-0-disable-default-security