spring cloud config安全


前面兩篇介紹了spring cloud config服務端客戶端的簡單配置,本篇介紹如何保護config server及對應config client修改。

保護config server,主要是使用spring security進行最簡單的basic安全認證(也可自定義認證方式,這里不做擴展)

 

配置服務端代碼示例:

在pom文件中增加依賴:

        <dependency>
            <!-- spring security 安全認證 -->
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-security</artifactId>
        </dependency>

配置文件application.yml增加security配置:

security:
  basic:
    enabled: true  #啟用基本認證(默認)
  user:   #配置security用戶名密碼,默認值為“user”的用戶名和隨機生成的密碼
    name: user
    password: password123

啟動服務,測試一下。請求http://localhost:18083/master/config-server-dev.yml,會發現彈出了security的basic登錄驗證:

輸入上面配置的用戶名密碼(user/password123),返回配置信息

 

客戶端代碼示例:

在pom文件中增加依賴:

        <dependency>
            <!-- spring security 安全認證 -->
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-security</artifactId>
        </dependency>

修改配置文件bootstrap.yml:

spring:
  application:
    name: config-client
  cloud:
    config:
      profile: test   #對應spring.profiles.active
      label: master   #分支名。當使用配置服務器是git時,默認是master
#      uri: http://localhost:18083  #更改配置服務器的位置,默認地址是http://localhost:8888
      uri: http://user:password123@localhost:18083  #配置服務器增加了安全認證,這里需要提供用戶名密碼
      username: user  #配置服務器的用戶名密碼,此配置會覆蓋uri中的配置
      password: password123

在上面的配置中,可以在uri上加上用戶名密碼,也可以直接配置spring.cloud.config.usernamespring.cloud.config.password,不過后面這種會覆蓋uri中的配置(至於為什么要設置這兩種配置方式,是因為當spring cloud config與注冊中心配合使用時,是沒有uri的,所以只能在下面配置username和password)

啟動服務,測試一下。請求http://localhost:18084/profile,返回配置信息:

至此,spring cloud config安全配置完成~ 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM