Spring Cloud中eureka注册中心添加security认证

一、Spring Cloud2.0以上

1、在pom.xml文件中添加security依赖:

<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-security</artifactId>
</dependency>

2、在application.properties文件中添加配置:

spring.application.name=eureka-server  //服务名称
server.port=9911                       //服务端口
 
#security.basic.enabled=true         //新版本已弃用,引入security包后默认开启
spring.security.user.name=admin      //配置登录的账号是admin
spring.security.user.password=admin  //配置登录的密码是admin

3、关闭csrf检验

因为新版本中security默认开启了scrf检验,因此需要将security的scrf检验设置为false。

设置方法:在eureka server启动类中添加@EnableWebSecurity注解,继承WebSecurityConfigurerAdapter并重写configure方法。

@EnableWebSecurity
@EnableEurekaServer
@SpringBootApplication
public class SpringcloudEurekaServerApplication extends WebSecurityConfigurerAdapter {
 
    public static void main(String[] args) {
        SpringApplication.run(SpringcloudEurekaServerApplication.class, args);
    }
 
    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http.csrf().disable();
        // 为了可以使用 http://${user}:${password}@${host}:${port}/eureka/
        // 这种方式登录,所以必须是httpBasic,
        // 如果是form方式,不能使用url格式登录
        http.authorizeRequests().anyRequest().authenticated().and().httpBasic();
    }
}

4、客户端配置添加认证信息

因为服务端添加了安全认证,如果客户端不添加安全认证,就会出现与服务端连接不上的情况,因此客户端也需要添加安全认证。

配置信息:eureka.client.serviceUrl.defaultZone=http://admin:admin@localhost:9090/eureka/

这样,启动注册中心时会提示你输入账号信息:

输入账号信息后能够正常进入注册中心,表示eureka添加security安全认证成功。

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值