上一篇Eureka 实现微服务注册发现讲了用 Eureka 实现单体版的服务注册与发现。因为本篇是在上一篇的基础上的一点扩充,所以读此篇之前要保证看了上一篇。

Eureka 如果不加安全控制,会存在下列问题

  1. Eureka 控制台可以看到各服务的状态和参数等信息,如果不加控制,只要知道注册中心的地址,就可以登录上去看到各服务信息;
  2. 只要知道注册中心地址,服务提供者就可以注册上来,对外提供服务;
  3. 只要知道注册中心地址,服务消费者就可以发现注册中心的服务,并调用服务;

为了安全起见,我们还是为 Eureka 增加安全控制,这里用 Spring Security 实现最基础的用户名、密码控制。

一个小知识点而已,几个配置就可以完成。

1. maven 包引用

在服务注册中心项目的 pom.xml 文件中引入 Spring Security 包。

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

2.增加应用配置

在应用配置文件中增加关于 security 的配置,一般是放在 application.yml ,但是本项目中分了 application.yml 和 bootstrap.yml 两个配置文件,所以我这里是放在了 application.yml 中。

spring:
application:
name: kite-eureka-center
security:
user:
name: test # 用户名
password: 123456 # 密码

此时,启动并访问 Eureka 管理控制台,会提示输入用户名和密码,输入上面的 name 和 password 即可。

3.服务提供者注册服务

在服务提供者的应用配置文件中做以下修改即可

eureka:
instance:
statusPageUrlPath: /actuator/info
healthCheckUrlPath: /actuator/health
prefer-ip-address: true
client:
register-with-eureka: true
fetch-registry: true
service-url:
defaultZone: http://test:123456@localhost:3000/eureka/

上述配置与没有安全控制的时候唯一的差别就是在 defaultZone 指定的 eureka 地址。在地址中增加了用户名和密码。

没有安全控制之前的地址为

http://localhost:3000/eureka/

加了安全控制之后的地址为

http://test:123456@localhost:3000/eureka/

4.服务消费者

服务消费者和服务提供者配置方式一致。

具体的代码已经放到 github

如果你觉得写的还可以的话,请点个「推荐」吧

欢迎关注,不定期更新本系列和其他文章

古时的风筝 ,进入公众号可以加入交流群

为 Eureka 服务注册中心实现安全控制的更多相关文章

  1. Eureka服务注册中心

    Eureka服务注册中心 最近在研究Spring Cloud,发现其中的组件实在是太多了,真的是头大,只能一块一块看,像盲人摸象一样.要想很短时间内掌握Spring Cloud是不可能的,小编就学习一 ...

  2. Eureka服务注册中心相关错误com.sun.jersey.api.client.ClientHandlerException: java.net.ConnectException: Connection refused: connect

    启动项目报错如下 原因: 在默认设置下,Eureka服务注册中心也会将自己作为客户端来尝试注册它自己,所以会出现 com.sun.jersey.api.client.ClientHandlerExce ...

  3. SpringCloud IDEA 教学 番外篇 后台运行Eureka服务注册中心

    写在开头 研发过程中经常要做的事就是启动Eureka服务注册中心,每每都要启动一个IDEA,很是困扰.现在分享一个后台启动服务注册中心的方法. 准备工作 1打包一个eureka服务注册中心jar包(注 ...

  4. Spring Cloud(二):Eureka 服务注册中心

    前言 服务治理 随着业务的发展,微服务应用也随之增加,这些服务的管理和治理会越来越难,并且集群规模.服务位置.服务命名都会发生变化,手动维护的方式极易发生错误或是命名冲突等问题.而服务治理正是为了解决 ...

  5. Eureka服务注册中心错误:com.sun.jersey.api.client.ClientHandlerException: java.net.ConnectException: Connection refused: connect

    报错信息 14:43:45.484 [main] INFO com.netflix.discovery.DiscoveryClient - Getting all instance registry ...

  6. 小D课堂 - 新版本微服务springcloud+Docker教程_3-07 Eureka服务注册中心配置控制台问题处理

    笔记 7.Eureka服务注册中心配置控制台问题处理     简介:讲解服务注册中心管理后台,(后续还会细讲) 问题:eureka管理后台出现一串红色字体:是警告,说明有服务上线率低 EMERGENC ...

  7. [SpringCloud教程]3. Eureka服务注册中心集成

    新微服务项目多半采用Nacos作为服务注册与发现中心,但是旧项目可能使用Eureka.zookeeper.Consul.Nacos作为服务注册中心. 新项目建议使用Nacos作为服务注册中心 Spri ...

  8. Spring Cloud Eureka 服务注册中心(二)

    序言 Eureka 是 Netflix 开发的,一个基于 REST 服务的,服务注册与发现的组件 它主要包括两个组件:Eureka Server 和 Eureka Client Eureka Clie ...

  9. SpringCloud学习(3)——Eureka服务注册中心及服务发现

    Eureka概述: Eureka是Netflix的一个子模块, 也是核心模块之一.Eureka是一个基于REST的服务, 用于定位服务, 以实现云端中间层服务发现和故障转移.服务注册与发现对于微服务框 ...

随机推荐

  1. Android 应用加固(乐固)操作说明

    此处引用腾讯云对加固的优点说明如下: 为什么应用需要加固? 若应用不做任何安全防护,极易被病毒植入.广告替换.支付渠道篡改.钓鱼.信息劫持等,严重侵害开发者的利益. 应用进行安全防护,防止应用分发后, ...

  2. Android--app性能问题的总结(一)

     一个应用程序的性能问题体现在很多方面,app的性能问题,很大程度上决定了使用app的用户量,如果正在使用app的过程中出现app崩溃.卡顿半天加载不出数据(跟网络也有一定的关系).用户请求事件半天获 ...

  3. Windows环境下springboot集成redis的安装与使用

    一,redis安装 首先我们需要下载Windows版本的redis压缩包地址如下: https://github.com/MicrosoftArchive/redis/releases 连接打开后如下 ...

  4. gulp、browsersync代理跨域

    //gulpfile.js "use strict"; const gulp = require("gulp"), newer = require(" ...

  5. 从mysql中拿到的数据构造为列表

    最近测试接口遇到一个问题,用python2.7从mysql中取到的数据是元祖类型的,元祖内部的元素也是一个元祖(并且部分元素的编码格式是unicode的): 类似这样: ((10144, u''), ...

  6. 什么是ZooKeeper?

    前言 只有光头才能变强. 文本已收录至我的GitHub仓库,欢迎Star:https://github.com/ZhongFuCheng3y/3y 上次写了一篇 什么是消息队列?以后,本来想入门一下K ...

  7. Docker镜像细节

    前言 只有光头才能变强. 文本已收录至我的GitHub仓库,欢迎Star:https://github.com/ZhongFuCheng3y/3y 回顾前面: 为什么需要Docker? Docker入 ...

  8. Unity的UI究竟为什么可以合批

    1.UI/Default代码研究首先,我想到的是,既然是对图集纹理进行采样,而且又不能统一更改材质的纹理UV值,我们通常写的shader都是直接根据模型UV值对主纹理进行采样,那会不会是shader中 ...

  9. HTML文本框样式大全

    粘贴自Christian.Cao 博客园地址 : https://www.cnblogs.com/QQ862668193/p/6893797.html 输入框景背景透明:<input style ...

  10. geoserver矢量瓦片发服务前端展示偏移问题解决

    文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/. 在之前的<项目角度谈矢量切片运用以及Geoserver处理自定义 ...