SpringCloud之分散式配置中心-本地配置檔案(重啟生效) |第十一章 -yellowcong
阿新 • • 發佈:2018-12-24
需要通過傳送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、測試訪問資源
訪問資源的時候,需要輸入上面配置的使用者名稱和密碼,才可訪問。