昨天简单的作了一个eureka注册中心的案例,我们有没有发现一个问题,我们的注册中心谁都可以注册,因为我们没有加入安全认证,下面我们引入
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
在配置文件appliction.yml中加入
spring:
security:
user:
name: user
password: 123
注意springboot2.0版本是这么配的,1.0版本的不是这样,可以自行百度,还有就是2.0版本后security会默认开启csrf验证,所以就需要我们去手动关闭,如下
import org.springframework.security.config.annotation.web.builders.HttpSecurity; import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; @EnableWebSecurity public class SecurityConf extends WebSecurityConfigurerAdapter { @Override protected void configure(HttpSecurity http) throws Exception { http.csrf().disable(); super.configure(http); } }
访问注册中心,会看到认证界面
需要认证后才能进入注册中心
接下来修改eureka-client的配置文件
server: port: 7777 eureka: client: service-url: defaultZone: http://user:123@localhost:7776/eureka/ spring: application: name: eureka-client
只需要在路径前加 用户名:密码@ 就可以了
ok了,我们的安全认证就加上了