解析spring cloud ouath2中的Eureka

老生常谈的配置 但是还是需要说明一下

EurekaApplication

@EnableEurekaServer指定为server端

@EnableEurekaServer
@SpringBootApplication
public class EurekaApplication {

 public static void main(String[] args) {
  SpringApplication.run(EurekaApplication.class, args);
 }

}

WebSecurityConfig

看到这眼熟不呢 没错 Eureka也开启spring security 在访问前台页面时也需要输入账号密码

@Configuration
@EnableWebSecurity
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {

 @Override
 protected void configure(HttpSecurity http) throws Exception {
  super.configure(http);
  http.csrf().disable().httpBasic();
 }
}

application.yml

security:user以下配置的账号密码 在访问页面需要输入的

server:
 port: 7001
spring:
 application:
 name: eureka
 security:
 user:
  name: admin
  password: xxxxxxxxxx
eureka:
 client:
 fetch-registry: false
 register-with-eureka: false
 service-url:
  defaultZone: http://admin:Xk38CNHigBP5jK75@localhost:5001/eureka
 instance:
 hostname: localhost
 prefer-ip-address: true
logging:
 config: classpath:logback.xml
 level:
 root: info

pom.xml

 <dependencies>
  <dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-security</artifactId>
  </dependency>
  <dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-web</artifactId>
  </dependency>
  <dependency>
   <groupId>org.springframework.cloud</groupId>
   <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
  </dependency>

  <dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-test</artifactId>
   <scope>test</scope>
   <exclusions>
    <exclusion>
     <groupId>org.junit.vintage</groupId>
     <artifactId>junit-vintage-engine</artifactId>
    </exclusion>
   </exclusions>
  </dependency>
  <dependency>
   <groupId>org.springframework.security</groupId>
   <artifactId>spring-security-test</artifactId>
   <scope>test</scope>
  </dependency>
 </dependencies>

当访问localhost:7001 出现下图 需要填写账号密码

在其他服务注册时 也需要指定账号密码

eureka:
 instance:
 hostname: ${spring.cloud.client.ip-address}
 prefer-ip-address: true
 instance-id: ${eureka.instance.hostname}:${server.port}
 //与server一致
 client:
 security:
  basic:
  user: admin
  password: xxxxxxxxxxx
 service-url:
  defaultZone: http://${eureka.client.security.basic.user}:${eureka.client.security.basic.password}@localhost:7001/eureka

到此这篇关于spring cloud ouath2中的Eureka的文章就介绍到这了,更多相关spring cloud ouath2内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • springcloud项目占用内存好几个G导致服务器崩溃的问题

    问题描述 springcloud项目部署或调试时,占用的内存特别多.当部署到服务器上去后,有可能导致服务器内存占用过多而崩溃. 解决方案 1.本地调试时,IDEA中添加参数以减少本地内存使用 按照下图点击,添加参数 -Xms64m -Xmx128m 2.远程上线时,命令行添加参数 2.1单个服务直接部署 例如使用nohup执行时,在java与-jar之间添加参数-Xms64m -Xmx128m nohup java -Xms64m -Xmx128m -jar x.xx-xx.jar & 2.2对

  • 详解SpringCloud Ribbon 负载均衡通过服务器名无法连接的神坑

    一,问题 采取eureka集群.客户端通过Ribbon调用服务,Ribbon端报下列异常 java.net.UnknownHostException: SERVICE-HI java.lang.IllegalStateException: No instances available for SERVICE-HI java.lang.IllegalStateException: Request URI does not contain a valid hostname: http://SERVI

  • 详解spring cloud ouath2中的资源服务器

    资源服务器就是业务服务 如用户服务,订单服务等 第三方需要到资源服务器调用接口获取资源 ResourceServerConfig ResourceServerConfig是资源服务器的核心配置 用于验证token 与网关配置相似 其中.antMatchers("/**").access("#oauth2.hasScope('user')") 需要oauth_client_details表的scope配合 意思是访问所有资源 需要客户端有scope需要有user @C

  • 解析spring cloud ouath2中的Eureka

    老生常谈的配置 但是还是需要说明一下 EurekaApplication @EnableEurekaServer指定为server端 @EnableEurekaServer @SpringBootApplication public class EurekaApplication { public static void main(String[] args) { SpringApplication.run(EurekaApplication.class, args); } } WebSecur

  • 微服务间调用Retrofit在Spring Cloud Alibaba中的使用

    目录 前置知识 搭建 使用 集成与配置 服务间调用 服务限流 熔断降级 总结 前置知识 在微服务项目中,如果我们想实现服务间调用,一般会选择Feign.之前介绍过一款HTTP客户端工具Retrofit,配合SpringBoot非常好用!其实Retrofit不仅支持普通的HTTP调用,还能支持微服务间的调用,负载均衡和熔断限流都能实现.今天我们来介绍下Retrofit在Spring Cloud Alibaba下的使用,希望对大家有所帮助! SpringBoot实战电商项目mall(50k+star

  • Spring Cloud OAuth2中/oauth/token的返回内容格式

    目录 背景 实现原理 代码实现 相关类 关键切面拦截器 背景 在前后端分离的项目中,一般后端返回给前端的格式是一个固定的json格式.在这个前提下,Spring Cloud OAuth2 生成access token的请求/oauth/token的返回内容就需要自定义. 访问/oauth/token示例如下: 原始返回值的格式如下: 我们希望使用我们自己固定的json格式,如下: 实现原理 原理就是通过切面编程实现对/oauth/token端点请求的结果进行拦截封装处理,由于/oauth/tok

  • 浅析Spring Cloud Gateway中的令牌桶限流算法

    目录 前言 回顾限流算法 计数器/时间窗口法 漏桶法 令牌桶法 主要逻辑分析 前言 在一个分布式高并发的系统设计中,限流是一个不可忽视的功能点.如果不对系统进行有效的流量访问限制,在双十一和抢票这种流量洪峰的场景下,很容易就会把我们的系统打垮.而作为系统服务的卫兵的网关组件,作为系统服务的统一入口,更需要考虑流量的限制,直接在网关层阻断流量比在各个系统中实现更合适.Spring Cloud Gateway的实现中,就提供了限流的功能,下面主要分析下Spring Cloud Gateway中是如何

  • Spring Cloud Ribbon 中的 7 种负载均衡策略的实现方法

    目录 Ribbon介绍 负载均衡设置 7种负载均衡策略 1.轮询策略 2.权重策略 3.随机策略 4.最小连接数策略 5.重试策略 6.可用性敏感策略 7.区域敏感策略 项目源码 总结 负载均衡通器常有两种实现手段,一种是服务端负载均衡器,另一种是客户端负载均衡器,而我们今天的主角 Ribbon 就属于后者——客户端负载均衡器. 服务端负载均衡器的问题是,它提供了更强的流量控制权,但无法满足不同的消费者希望使用不同负载均衡策略的需求,而使用不同负载均衡策略的场景确实是存在的,所以客户端负载均衡就

  • 深入解析Spring Cloud内置的Zuul过滤器

    前言 Spring Cloud默认为Zuul编写并启用了一些过滤器,这些过滤器有什么作用呢?我们不妨按照@EnableZuulServer.@EnableZuulProxy两个注解进行展开,相信大家对这两个注解都不陌生(至少都见过吧).如果觉得陌生也没有关系,可将@EnableZuulProxy简单理解为@EnableZuulServer的增强版.事实上,当Zuul与Eureka.Ribbon等组件配合使用时, @EnableZuulProxy是我们常用的注解. 在Spring Cloud的官方

  • spring cloud gateway中如何读取请求参数

    spring cloud gateway读取请求参数 1. 我的版本: spring-cloud:Hoxton.RELEASE spring-boot:2.2.2.RELEASE spring-cloud-starter-gateway 2. 请求日志 import lombok.extern.slf4j.Slf4j; import org.springframework.cloud.gateway.filter.GatewayFilterChain; import org.springfram

  • 解析Spring Cloud Bus消息总线

    概念 我们使用配置中心时,当配置中心的配置发生了变化,我们就要发送一个post请求给客户端,让它重新去拉取新的的配置.当客户端有很多时,并且还是使用同一份配置文件,这样当配置中心的配置发生改变,我们就得逐个发送post请求通知,这样无疑是很浪费人力物力的. Bus消息总线组件就帮我们解决了这个问题.他的工作流程是这样的,当配置中心的配置发生了变化时,我们给其中一个客户端发送post请求,然后client将请求的信息发送到rabbitmq队列中,然后消息队列将消息发送给别的队列. 使用 准备工作

  • 详解Spring Cloud Zuul中路由配置细节

    上篇文章我们介绍了API网关的基本构建方式以及请求过滤,小伙伴们对Zuul的作用应该已经有了一个基本的认识,但是对于路由的配置我们只是做了一个简单的介绍,本文我们就来看看路由配置的其他一些细节. 首先我们来回忆一下上篇文章我们配置路由规则的那两行代码: zuul.routes.api-a.path=/api-a/** zuul.routes.api-a.serviceId=feign-consumer 我们说当我的访问地址符合/api-a/**规则的时候,会被自动定位到feign-consume

随机推荐