-
現在已經成功的實現了一個Eureeka的服務啟動以及微服務的註冊配置操作,但是現在的程式有一個問題,你自己公司的Eureka服務應該可以註冊的服務只能夠是滿足於認證要求的微服務,所有這樣來在之前所進行的Eureka裡面配置缺少了關鍵性的一步:安全認證,所以應該為Eureka配置上安全認證處理。
【microcloud-eureka-7001】修改pom.xml配置檔案,引入SpringSecurity依賴包。
<project
xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>microcloud</artifactId>
<groupId>com.gwolf</groupId>
<version>1.0</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>com.gwolf</groupId>
<artifactId>microcloud-eureka-7001</artifactId>
<packaging>jar </packaging>
<name>microcloud-eureka-7001</name>
<url>http://maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jetty</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>springloaded</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-eureka-server</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-config</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-config</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
</dependencies>
</project>
-
【microcloud-eureka-7001】一旦我們的專案之中匯入了Security開發包,則每一次啟動微服務的時候都會自動生成一個密碼,而這個密碼由於會改變,所以一般都不使用,所以要修改application.yml配置檔案,追加密碼的配置項。
server:
port: 7001
eureka:
instance: #eureka例項定義
hostname: eureka-7001.com #設定清理的間隔時間,預設這個時間使用的毫秒單單位(預設是60秒)
client: #客戶端進行Eureka註冊的配置
service-url:
defaultZone: http://eureka-7001.com:7001/eureka
register-with-eureka: false #當前的微服務不註冊到eureka之中
fetch-registry: false
server:
enable-self-preservation: false #是否要設定成保護模式
eviction-interval-timer-in-ms: 60000 #不通過eureka獲取註冊資訊
spring:
application:
name: microcloud-eureka-7001
security:
user:
name: eureka
password: eureka
-
此時訪問Eureka的服務地址為:http://eureka:eureka@eureka-7001.com:7001/,要求輸入使用者名稱和密碼。
-
【microcloud-eureka-7001】所有註冊到Eureka服務的地方都要加上使用者名稱和密碼。
server:
port: 7001
eureka:
instance: #eureka例項定義
hostname: eureka-7001.com #設定清理的間隔時間,預設這個時間使用的毫秒單單位(預設是60秒)
client: #客戶端進行Eureka註冊的配置
service-url:
defaultZone: http://eureka:eureka@eureka-7001.com:7001/eureka
register-with-eureka: false #當前的微服務不註冊到eureka之中
fetch-registry: false
server:
enable-self-preservation: false #是否要設定成保護模式
eviction-interval-timer-in-ms: 60000 #不通過eureka獲取註冊資訊
spring:
application:
name: microcloud-eureka-7001
security:
user:
name: eureka
password: eureka
-
【microcloud-provider-dept-8001】修改application.yml配置檔案,進行授權配置。
server:
port: 8001
mybatis:
config-location: classpath:mybatis/mybatis.cfg.xml # mybatis配置檔案所在路徑
type-aliases-package: com.gwolf.vo # 定義所有操作類的別名所在包
mapper-locations: # 所有的mapper對映檔案
- classpath:mybatis/mapper/**/*.xml
spring:
datasource:
type: com.alibaba.druid.pool.DruidDataSource # 配置當前要使用的資料來源的操作型別
driver-class-name: com.mysql.cj.jdbc.Driver # 配置MySQL的驅動程式類
url: jdbc:mysql://localhost:3306/mldn_1?serverTimezone=UTC # 資料庫連線地址
username: root # 資料庫使用者名稱
password: root # 資料庫連線密碼
dbcp2: # 進行資料庫連線池的配置
min-idle: 5 # 資料庫連線池的最小維持連線數
initial-size: 5 # 初始化提供的連線數
max-total: 5 # 最大的連線數
max-wait-millis: 200 # 等待連線獲取的最大超時時間
application:
name: microcloud-provider-dept
eureka:
client: #客戶端進行Eureka註冊的配置
service-url:
defaultZone: http://eureka:eureka@eureka-7001.com:7001/eureka
instance:
instance-id: dept-8001.com #在資訊列表中顯示主機名稱
prefer-ip-address: true #訪問的路徑變為IP地址
lease-renewal-interval-in-seconds: 2 #設定心跳的時間間隔(預設是30秒)
lease-expiration-duration-in-seconds: 5 #如果現在超過了5秒的間隔(預設90秒)
info:
app.name: gwolf-microcloud
company.name: www.gwolf.com
build.artifactId: $project.artifactId$
build.version: $project.version$
-
啟動eureka註冊服務和部門微服務,檢視安全認證之後微服務是否註冊成功了。
SpringCloud如何配置Eureka授權
相關文章
- SpringCloud(1)-Eureka相關配置SpringGCCloud
- springcloud 微服務 之 Eureka 配置SpringGCCloud微服務
- springcloud Oauth2授權,四種授權型別SpringGCCloudOAuth型別
- 【SpringCloud】微服務Eureka高可用配置SpringGCCloud微服務
- SpringCloud之EurekaSpringGCCloud
- SpringCloud (一) EurekaSpringGCCloud
- OneinStack如何配置MySQL遠端連線並授權MySql
- Ceph配置與認證授權
- SpringCloud之Eureka的常見問題及配置優化SpringGCCloud優化
- SpringCloud(一)——Eureka架構SpringGCCloud架構
- springcloud使用eureka叢集SpringGCCloud
- java 微信授權登入配置Java
- 微服務之springcloud eureka(一)微服務SpringGCCloud
- springcloud(二):註冊中心EurekaSpringGCCloud
- SpringCloud-Eureka叢集搭建SpringGCCloud
- (8)SpringCloud-Spring Cloud EurekaSpringGCCloud
- springcloud學習(一)之EurekaSpringGCCloud
- springcloud eureka原理和機制SpringGCCloud
- SpringCloud Eureka自我保護機制SpringGCCloud
- 認證授權方案之授權初識
- qq郵箱授權碼如何獲取 QQ郵箱授權碼怎麼弄
- SpringCloud使用Prometheus監控(基於Eureka)SpringGCCloudPrometheus
- SpringCloud基礎教程(三)-Eureka進階SpringGCCloud
- SpringCloud入門(三)Eureka 註冊中心SpringGCCloud
- SpringCloud包含的微服務介紹--EurekaSpringGCCloud微服務
- ASP.NET Core策略授權和 ABP 授權ASP.NET
- 認證授權方案之授權揭祕 (上篇)
- 【認證與授權】Spring Security的授權流程Spring
- 使用釘釘Oauth2授權登入Odoo配置OAuthOdoo
- 授權|取消授權MYSQL資料庫使用者許可權MySql資料庫
- SpringCloud(二)Eureka服務的搭建與使用SpringGCCloud
- SpringCloud系列使用Eureka進行服務治理SpringGCCloud
- springcloud學習筆記(一)Spring Cloud EurekaSpringGCCloud筆記
- SpringCloud——Eureka-微服務的註冊中心SpringGCCloud微服務
- Shiro(授權Authorization)
- abp授權原理
- 認證授權
- Laravel授權策略Laravel