【Spring全家桶系列之核心篇 | Spring Cloud】第三章 | 第二节 注册中心Eureka如何开启密码认证

通过第一节的内容,我们已经对注册中心有了初步认识,但是我们看到,当我们通过浏览器输入注册中心访问地址时,可以直接访问内容,在实际应用中,如果注册中心只要知道地址,任何人都可以访问,那么它的安全性就没有任何保障,所以在实际应用中,我们会加入权限认证来保证它的安全性。

我们基于本章第一节的内容,在其基础上加入权限认证。

一. Eureka项目的更新

  1. 打开pom.xml文件,加入如下dependency:
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-security</artifactId>
</dependency>
  1. 打开application.properties文件,加入如下内容:
#用户名
spring.security.user.name=itzhiya
#密码
spring.security.user.password=itzhiya
  1. 为security新建配置类SecurityConfig,代码如下:
package com.cherry.eureka;

import org.springframework.context.annotation.Configuration;
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;

@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
    @Override
    protected void configure(HttpSecurity http) throws Exception {
        // 关闭csrf
        http.csrf().disable();
        // 支持httpBasic
        http.authorizeRequests().anyRequest().authenticated().and().httpBasic();
    }
}

  1. 重启注册中心的服务
    右键单击启动类EurekaApplication,执行run进行启动
    【Spring全家桶系列之核心篇 | Spring Cloud】第三章 | 第二节 注册中心Eureka如何开启密码认证_第1张图片
  2. 浏览器上输入localhost:8001, 输入上面设置的用户名及密码,显示注册中心页面

服务提供者Provider的更新

  1. 服务提供者作为Eureka Client,需要更改相应的配置,打开application.properties,修改注册中心的地址,如下:
#注册中心的地址
eureka.client.service-url.defaultZone=http://localhost:8001/eureka/

改为:

#注册中心的地址
eureka.client.service-url.defaultZone=http://itzhiya:itzhiya@localhost:8001/eureka/

推荐视频
玩转Spring Data JPA&Spring Data JDBC

玩转 Spring 全家桶

推荐文章

系统上线后雪崩!让我们来学习 Spring Cloud Hystrix 及监控来解决雪崩问题

10 分钟教会你 Spring Boot 集成 Thymeleaf、MyBatis 完成产品的增删改查

【高阶用法】一个实例学会 Spring Cloud 的注册中心 Eureka的使用

Spring Cloud gateway与注册中心Eureka的完美集成

你可能感兴趣的:(Spring,Cloud,eureka,spring,java,spring,boot,ispring)