springCloud eureka服务治理集群增加安全认证
做为SpringCloud Netflix服务套件中的一部分,springCloud eureka基于Netflix Eureka做了二次封装,默认提供WEB管理页面及服务治理。
为了确保在生产环境中的,eureka注册服务的元数据及WEB管理的信息安全,可以结合spring security增加安全认证。
步骤如下:
第一步,在eureka server端,开启安全认证配置,设置访问用户名和密码。
首先,增加spring security依赖包,
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
其次,在application.yml中开启并增加认证的配置信息,这样访问控制台的时候就需要用户名密码了
security.basic.enabled: true #开启认证
security.user.name: root #认证的用户名,比如root
security.user.password: 123456 #认证的密码,比如123456
最后,如果是eureka集群,修改eureka server之间相互的同步注册URL,如下
eureka.client.serviceUrl.defaultZone: http://root:123456@localhost:6666/eureka/
第二步,修改spring boot client客户端配置
eureka.client.serviceUrl.defaultZone: http://root:123456@localhost:6666/eureka/
最后一步,测试,在浏览器访问http://localhost:6666/,会出现如下授权页面。
至此,完毕