在SpringCloud服务中为了提高注册中心的安全性我们可以整合springsecurity来实现完全认证。
Eureka服务中心做的高可用的配置 provide提供服务,需要到注册中心注册(需要认证) consumer服务消费者,需要从注册中心中发现服务,同样需要认证
因为是在SpringBoot项目中,所以添加了Security的依赖会帮助我们完成自动配置。非常方便
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
设置特定的账号密码,放开安全认证
#开启 http basic 的安全认证
security.basic.enabled=true
security.user.name=dpb
security.user.password=123456
注册中心相互之间也需要认证,设置账号密码
#设置服务注册中心地址,指向另一个注册中心
eureka.client.serviceUrl.defaultZone=http://dpb:123456@eureka2:8761/eureka/
注意:两个文件都要修改
重新将项目打包部署,然后访问注册中心,会提示输入账号密码
输入: dpb 123456 就能进入了。
因为现在注册中心需要认证,所以我们在注册的地址后需要添加对应的账号信息,如下:
启动程序,注册并提供服务,观察注册中心
配置文件中同样设置账号密码。
启动消费者,访问查看
能够访问,搞定~