Security
參考資料:
SpringBoot Spring Security 基本使用及個性化登入配置詳解(https://codertw.com/%E7%A8%8B%E5%BC%8F%E8%AA%9E%E8%A8%80/296168/)
Spring Security-結合RestfulAPI的設計(https://medium.com/%E4%BC%81%E9%B5%9D%E4%B9%9F%E6%87%82%E7%A8%8B%E5%BC%8F%E8%A8%AD%E8%A8%88/spring-security-%E7%B5%90%E5%90%88restfulapi%E7%9A%84%E8%A8%AD%E8%A8%88-60b778fd3b2)
Spring Boot(四)之使用JWT和Spring Security保護REST API (https://codertw.com/%E7%A8%8B%E5%BC%8F%E8%AA%9E%E8%A8%80/309745/)
如何引入Security?
build.gradle 的 dependencies 中加入
implementation 'org.springframework.boot:spring-boot-starter-security'
初始頁面 & 預設帳密
一旦啟用 Security,連線到頁面,就會被導址到默認的 /login
去做登入的動作

預設帳號為:user
密碼為每次服務啟動時隨機產生 (參考下圖)

如何調整預設的帳號密碼
那如果不希望每次都隨機密碼,到底要怎麼去做設定呢? 可以去 設定檔 設置默認的使用者、密碼 (roles 我還沒弄清楚)。
spring.security.user.name=user # Default user name.
spring.security.user.password= # Password for the default user name.
spring.security.user.roles= # Granted roles for the default user name.
如何調整輸入帳密的方式
利用 HTTP基本認證
@EnableWebSecurity
@Configuration
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
// 直接跳過驗證
httpSecurity.authorizeRequests().anyRequest().permitAll();
// 利用 HTTP 基本認證
// For example: Use only Http Basic and not form login.
http
.authorizeRequests()
.anyRequest().authenticated()
.and()
.httpBasic();
}
}

Last updated
Was this helpful?