文档章节

Spring Cloud Eureka 你还在让它裸奔吗??

Java技术栈
 Java技术栈
发布于 04/22 14:03
字数 639
阅读 44
收藏 1

前些天栈长在微信公众号Java技术栈分享了 Spring Cloud Eureka 最新版 实现注册中心的实战教程:Spring Cloud Eureka 注册中心集群搭建,Greenwich 最新版!,成功进入 Eureka 控制台页面。

但控制台首页默认是没有登录认证保护的,打开就能访问,而且你的微服务也能随意注册进去,这样是不安全的,本章栈长将加入登录认证功能,把你的 Eureka 注册中心保护起来。

本文基于最新的 Spring Cloud Greenwich.SR1 以及 Spring Boot 2.1.3 版本进行分享。

1、加入 Spring Security 依赖

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

2、添加安全配置

在 application.yml 配置文件中添加以下配置:

spring: 
  security:
    user:
      name: javastack
      password: javastack

配置用来登录认证的用户名和密码。

3、修改defaultZone

需要在 defaultZone 中添加用户名密码认证。

格式如下:

defaultZone: http://username:password@eureka:8761/eureka/

参考配置如下:

defaultZone: http://javastack:javastack@eureka1:8761/eureka/, http://javastack:javastack@eureka2:8762/eureka/

4、禁用CSRF

如上图所示,注册实例出现在 unavailable-replicas 里面。

这是因为加入了安全认证模块后,默认会开启 CSRF 跨站脚本攻击,需要禁用它,添加以下配置即可。

参考:https://cloud.spring.io/spring-cloud-netflix/multi/multi_spring-cloud-eureka-server.html#_securing_the_eureka_server

@EnableWebSecurity
class WebSecurityConfig extends WebSecurityConfigurerAdapter {

    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http.csrf().ignoringAntMatchers("/eureka/**");
        super.configure(http);
    }

}

这样配置后,打开 Eureka 控制台页面会先要跳到登录页面做登录认证才能访问,如下图所示。

好了,今天的分享就到这里了,后续会分享更多 Eureka 高级玩法,栈长正在拼命撰写中……关注Java技术栈微信公众号可获取及时推送。在公众号后台回复:cloud,获取栈长整理的更多的 Spring Cloud 教程,都是实战干货,以下仅为部分预览。

  • Spring Cloud 最新 Finchley 版本踩坑
  • Spring Cloud 多版本如何选择
  • Spring Cloud 是什么,和 Dubbo 对比
  • Spring Cloud 注册中心高可用搭建
  • Spring Cloud Eureka 自我保护机制
  • ……

本文原创首发于公众号:Java技术栈(id:javastack),关注公众号在后台回复 "cloud" 可获取更多 Spring Cloud 教程,转载请原样保留本信息。

© 著作权归作者所有

Java技术栈
粉丝 174
博文 165
码字总数 145318
作品 0
深圳
架构师
私信 提问
Spring Cloud Edgware新特性之一:解决Eureka中Jersey 1.x版本过旧的问题-不使用Jersey

Spring Cloud是当前炙手可热的微服务开发框架。它的功能强大,组件丰富,设计优雅。目前Spring Cloud还在不断发展之中。 Spring Cloud即将发布 版本。该版本解决了不少Bug,新增了不少新特性...

周立_ITMuch
2017/10/24
0
0
Spring Cloud Eureka 注册中心集群搭建,Greenwich 最新版!

Spring Cloud 的注册中心可以由 Eureka、Consul、Zookeeper、ETCD 等来实现,这里推荐使用 Spring Cloud Eureka 来实现注册中心,它基于 Netflix 的 Eureka 做了二次封装,完成分布式服务中服...

Java技术栈
04/03
0
0
应用升级SpringCloud版本时的注意事项(Dalston升级到Edgware)

版权声明:欢迎转载,请注明出处,谢谢。 https://blog.csdn.net/boling_cavalry/article/details/82683755 手里有个Spring Cloud的工程,是服务提供者的身份,在pom.xml中配置的Spring Clou...

博陵精骑
2018/09/13
0
0
凉凉了,Eureka 2.x 宣布停更,Spring Cloud 何去何从?

今年 Dubbo 活了,并且被 Apache 收了。同时很不幸,Spring Cloud 下的 Netflix Eureka 组件项目居然宣布停止开发了。。 已经从 Dubbo 迁移至 Spring Cloud 上的人,你们还好吗? 闭源:htt...

Java技术栈
2018/07/11
0
2
Spring Cloud 服务注册与发现、高可用(Eureka)

Spring Cloud 服务注册与发现、高可用(Eureka) 一、服务发现 1.1 服务发现 在微服务架构中,服务发现组件是很关键的一个组件,服务发现组件就是去管理各服务的网络地址等信息 服务提供者、...

非摩尔根
04/17
0
0

没有更多内容

加载失败,请刷新页面

加载更多

idea下springboot 项目在static目录下添加文件不生效

idea下springboot 项目在static目录下添加文件不生效 问题描述 是这样子的,我的项目目录结构如下: 我在static目录下,创建了index.html和aaaa.jpg这两个文件。然后,启动服务访问 http://l...

wotrd
昨天
5
0
k8s1.14 一、环境

1. 4台虚拟机 (CentOS Linux release 7.2.1511 (Core) ) 192.168.130.211 master 192.168.130.212 node1 192.168.130.213 node2 192.168.130.214 node3 2. 设置服务器hostname 2.1 设置本机......

ThomasCheng
昨天
3
0
盖茨:如果我现在开创一家公司 将会专注于AI

新浪科技讯,北京时间 6 月 26 日凌晨消息,微软联合创始人比尔·盖茨(Bill Gates)在周一接受采访时表示,如果他今天从哈佛大学辍学并开创一家新公司,那么这家公司将会专注于人工智能(A...

linuxCool
昨天
1
0
聊聊feign的Retryer

序 本文主要研究一下feign的Retryer Retryer feign-core-10.2.3-sources.jar!/feign/Retryer.java public interface Retryer extends Cloneable { /** * if retry is permitted, retur......

go4it
昨天
12
0
HyperLogLog简介

  (1)HyperLogLog简介      在Redis 在 2.8.9 版本才添加了 HyperLogLog,HyperLogLog算法是用于基数统计的算法,每个 HyperLogLog 键只需要花费 12 KB 内存,就可以计算接近 2^64 个...

SEOwhywhy
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部