中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

如何配置Spring Boot Endpoints的訪問權限

小樊
96
2024-09-14 09:11:52
欄目: 編程語言

要配置Spring Boot Endpoints的訪問權限,你需要使用Spring Security

  1. 添加依賴

pom.xml文件中添加Spring Security依賴:

   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-security</artifactId>
</dependency>
  1. 配置Spring Security

創建一個新的Java類,例如SecurityConfig,并繼承WebSecurityConfigurerAdapter。然后重寫configure方法以自定義安全配置。

import org.springframework.context.annotation.Configuration;
import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder;
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 SecurityConfig extends WebSecurityConfigurerAdapter {

    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http
            .authorizeRequests()
                .antMatchers("/actuator/**").hasRole("ADMIN") // 允許訪問/actuator/*的端點的角色為ADMIN
                .anyRequest().authenticated() // 其他請求需要認證
                .and()
            .formLogin() // 啟用表單登錄
                .permitAll() // 允許所有用戶訪問登錄頁面
                .and()
            .logout() // 啟用注銷功能
                .permitAll(); // 允許所有用戶訪問注銷頁面
    }

    @Override
    protected void configure(AuthenticationManagerBuilder auth) throws Exception {
        auth
            .inMemoryAuthentication() // 使用內存中的認證
                .withUser("admin").password("{noop}admin123").roles("ADMIN"); // 創建一個用戶名為admin,密碼為admin123,角色為ADMIN的用戶
    }
}

這個示例配置了以下規則:

  • 只有具有ADMIN角色的用戶可以訪問/actuator/*的端點。
  • 其他請求需要認證。
  • 啟用表單登錄和注銷功能。
  • 使用內存中的認證,創建一個用戶名為admin,密碼為admin123,角色為ADMIN的用戶。

根據你的需求,你可以修改這些規則。更多關于Spring Security的配置選項,請參考官方文檔:https://docs.spring.io/spring-security/site/docs/current/reference/html5/#jc

0
广丰县| 恩施市| 平湖市| 昭觉县| 竹溪县| 庄浪县| 扶余县| 新龙县| 张家界市| 高邮市| 揭阳市| 宿迁市| 玛多县| 东乡族自治县| 万山特区| 开原市| 通州市| 多伦县| 沿河| 新野县| 昌黎县| 泸西县| 怀来县| 分宜县| 合阳县| 崇文区| 湘乡市| 繁峙县| 白山市| 伊春市| 来安县| 莱西市| 鄢陵县| 福鼎市| 鹤岗市| 海林市| 哈巴河县| 成安县| 湟中县| 浠水县| 淮阳县|