1. 程式人生 > >SpringCloud之分散式配置中心-本地配置檔案(重啟生效) |第十一章 -yellowcong

SpringCloud之分散式配置中心-本地配置檔案(重啟生效) |第十一章 -yellowcong

需要通過傳送post請求http://yellowcong.com:8763/refreh設定重新整理配置檔案資訊,會遇到授權問題Full authentication is required to access this resource.,解決辦法有兩種:第一種、配置配置檔案客戶端bootstrap.yml ,設定management.security.enabled=false ,關閉驗證。第二種、開啟許可權驗證,設定授權使用者資訊。

程式碼地址

https://gitee.com/yellowcong/springcloud/tree/master/chapter11

目錄結構

這裡寫圖片描述

專案架構

對於8763 節點,可以在這個服務的客戶端重新整理節點資訊,不需要輸入密碼,而對於8764節點,訪問,就需要輸入使用者名稱和密碼資訊。

節點 服務 專案名 啟動順序
yellowcong.com:8761 eureka註冊服務 eureka-server 1
yellowcong.com:8762 配置服務端 config-server 2
yellowcong.com:8763 配置客戶端(關閉驗證) config-client 3
yellowcong.com:8764 配置客戶端(開啟驗證) config-client2 3

第一節:關閉許可權驗證

配置bootstrap.yml

設定management.security.enabled=false ,關閉驗證 ,然後重啟伺服器,即可發現直接post提交,可以正常訪問。

#配置服務名稱
#訪問的配置檔名稱為
#{application.name}/{profile}/{label}
#${spring.application.name}-${spring.cloud.config.profile}-${spring.cloud.config.label}
spring:
  application:
    name: config-client #服務名稱
  cloud:
    config:
      uri: http://yellowcong.com:8762 #配置服務的地址 ,這個沒有生效
enabled: true #開啟配置 profile: dev #版本 label: "" #git配置的分支資訊,master類似的 #取消許可權驗證 management: security: enabled: false

2、測試訪問

通過傳送get請求到http://yellowcong.com:8763/refreh設定重新整理配置檔案資訊,報錯,說不允許get請求,然後通過post請求傳送,請求正常返回。
這裡寫圖片描述

第二節、開啟授權驗證

開啟授權驗證後,訪問的時候,需要登入使用者名稱和密碼,才可以訪問到資源資訊。

1、配置pom.xml

新增開啟許可權的依賴

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-security</artifactId>
</dependency>

2、配置bootstrap.yml

配置使用者的使用者名稱和密碼。

security.user.name=admin
security.user.password=123456
management.security.enabled=true
management.security.role=ADMIN

下面是完整的配置

#配置服務名稱
#訪問的配置檔名稱為
#{application.name}/{profile}/{label}
#${spring.application.name}-${spring.cloud.config.profile}-${spring.cloud.config.label}
spring:
  application:
    name: config-client #服務名稱
  cloud:
    config:
      uri: http://yellowcong.com:8762 #配置服務的地址 ,這個沒有生效
      enabled: true #開啟配置
      profile: dev  #版本
      label: ""     #git配置的分支資訊,master類似的
#開啟許可權驗證, 預設就是開啟的
management:
  security:
    enabled: true
    role: ADMIN #角色資訊

security:
  user:
    name: admin
    password: yellowcong

3、測試訪問資源

訪問資源的時候,需要輸入上面配置的使用者名稱和密碼,才可訪問。
這裡寫圖片描述

參考文章