所谓的安全配置,就是在进入注册中心之前,需要输入用户名密码。
配置步骤
第一步:安全模块依赖
--分别在两个Eureka项目加入依赖安全认证依赖<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
第二步:禁用csrf机制
--分别在两个Eureka注册中心,入口类加入禁用代码@SpringBootApplication
@EnableEurekaServer //启动Eureka服务器
public class EurekaServerApplication {
public static void main(String[] args) {
SpringApplication.run(EurekaServerApplication.class, args);
}
//禁用csrf机制
@EnableWebSecurity
static class WebSecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http.csrf().ignoringAntMatchers("/eureka/**");
super.configure(http);
}
}
}
第三步:Eureka修改配置文件
–eureka-server1的application.properties配置文件
##服务器信息
server.port=5121
##指定Eureka服务信息
eureka.instance.hostname=eureka1
##服务入口
eureka.client.service-url.defaultZone=http://root2:zhu22222@eureka2:5122/eureka
#3.是否将自身注册为服务 false表示不注册
eureka.client.register-with-eureka=false
#4.是否主动发现服务 false表示不发现
eureka.client.fetch-registry=false
##认证信息
#配置Eureka安全认证
spring.security.user.name=root1
spring.security.user.password=zhu111111
–eureka-server2的application.properties配置文件
##服务器信息
server.port=5122
##指定Eureka服务信息
eureka.instance.hostname=eureka2
##服务入口
eureka.client.service-url.defaultZone=http://root1:zhu111111@eureka1:5121/eureka
#3.是否将自身注册为服务 false表示不注册
eureka.client.register-with-eureka=false
#4.是否主动发现服务 false表示不发现
eureka.client.fetch-registry=false
##认证信息
#配置Eureka安全认证
spring.security.user.name=root2
spring.security.user.password=zhu222222
第四步:在访问服务修改访问路径
--在服务端,客户端的配置文件路径上,加入对应Eureka服务器的密码##服务端口
server.port=8082
##必须要指定服务器,因为到时我们就可以该名称集群和让调用找到服务的
spring.application.name=InstanceServer
##指定注册中心的入口:
eureka.client.service-url.defaultZone=http://root1:zhu111111@eureka1:5121/eureka,http://root2:zhu222222@eureka2:5122/eureka
第五步:测试是否成功
启动Eureka注册中心,再启动服务,开是否已经注册服务。如果已经注册了,就成功了![](https://i-blog.csdnimg.cn/blog_migrate/d418006711cff34e7db0ca87e19aa459.png)