`
zweichxu
  • 浏览: 134041 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

Eureka Server 增加安全用户认证

阅读更多

环境:spring cloud Finchley.RC2,spring boot 2.0.2.RELEASE,eureka 1.9.0

 

1. pom 文件中引入依赖

     添加spring-security支持: 

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

 

2. application.yml 文件增加管理的用户名密码配置

 

   2.1 增加 spring.security 配置

spring:
  security:
    basic:
      enabled: true
    user:
      name: admin
      password: admin123456

 

   2.2 eureka.client.serviceUrl.defaultZone 修改,增加账号密码

http://${spring.security.user.name}:${spring.security.user.password}@${eureka.instance.hostname}:${server.port}/eureka/

    

   2.3 修改后Eureka Server 的完整的 application.yml 为:

server:
  port: 8082

spring:
  security:
    basic:
      enabled: true
    user:
      name: admin
      password: admin123456

eureka:
  instance:
    hostname: localhost
  client:
    registerWithEureka: false
    fetchRegistry: false
    serviceUrl:
      defaultZone: http://${spring.security.user.name}:${spring.security.user.password}@${eureka.instance.hostname}:${server.port}/eureka/

 

3. Eureka Server端关闭security的csrf检验

    新版的security默认启用了csrf检验,如果不关闭该检验,eureka client端向eureka server注册时,会报如下异常:com.netflix.discovery.shared.transport.TransportException: Cannot execute request on any known server,由于还没研究在启用csrf检验的情况下,eureka client注册服务时如何避免该异常,考虑先关闭csrf检验:

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;

@EnableWebSecurity
public class WebSecurityConfigurer extends WebSecurityConfigurerAdapter {
    @Override
    protected void configure(HttpSecurity http) throws Exception {
        http.csrf().disable();
        super.configure(http);
    }
}

 

4.eureka client端eureka.client.serviceUrl.defaultZone 修改,增加账号密码

http://${security.username}:${security.password}@localhost:8082/eureka/

    增加配置: 

    security.username=admin   

    security.password=admin123456   

分享到:
评论

相关推荐

    spring cloud-给Eureka Server加上安全的用户认证详解

    Spring Cloud 中 Eureka Server 的安全用户认证详解 Spring Cloud 中 Eureka Server 的安全用户认证是非常重要的,以确保服务治理页面的安全性。本文将详细介绍如何给 Eureka Server 加上安全的用户认证。 首先,...

    Spring Cloud Eureka Server

    8. **安全配置**:在生产环境中,通常需要为Eureka Server配置安全性,如添加身份验证和授权,防止未经授权的服务注册或查询。 9. **与其他Spring Cloud组件的集成**:Eureka Server可以很好地与Spring Cloud其他...

    eureka server 与eureka client

    该项目主要包含了一个springcloud框架中的服务注册与服务发现的常用框架的eureka的实例,共包含eureka-client和eureka-server两个模块,打开项目,先启动eureka-server项目,通过localhost:端口便可访问eureka-...

    eureka-server.zip

    Eureka Server是一个基于Java的微服务注册中心,它是Netflix OSS组件的一部分,主要用于实现服务发现功能。在Spring Cloud框架中,Eureka Server被广泛用于管理各个微服务实例的生命周期,使得服务消费者可以找到并...

    spring cloud2.0 eureka server spring security配置

    在Spring Cloud 2.0版本中,Eureka Server的配置相比1.x版本确实有了一些显著的变化,尤其是在结合Spring Security进行安全设置时。Spring Cloud Eureka是Netflix Eureka的Spring Boot实现,它为微服务架构提供了...

    Eureka简介与Eureka Server-代码部分.zip

    本压缩包文件包含了关于Eureka的介绍、Eureka Server的实现,以及优化后服务消费者和服务提供者的源代码,这将有助于深入理解Eureka的工作原理和实践应用。 1. **Eureka简介** - Eureka是由Netflix开发的服务发现...

    eureka-server.rar

    通过这些依赖,我们可以确保Eureka Server在启动时能够处理安全认证。 `src`目录则是项目的源代码存放处,通常包括`main/java`和`main/resources`两个子目录。在`main/java`下,开发者会创建一个继承自`...

    springboot3+cloud2023 进行 eureka server与client注册与发现

    Spring Boot 3 结合 Spring Cloud 2023 提供了一套强大的服务发现解决方案,本文将详细介绍如何利用这两个框架实现 Eureka Server 与 Client 的注册与发现。 #### 父 Module 模块开发概述 为了更好地管理项目依赖...

    spring cloud之Eureka Server搭建

    本文将详细介绍如何搭建一个简单的Eureka Server,帮助新手快速入门。 首先,我们需要了解Eureka Server的基本概念。Eureka是Netflix开发的一个分布式服务注册与发现的组件,它允许微服务应用在启动时向Eureka ...

    eureka-server启动包

    微服务框架注册中心之eureka-server,使用版本为最新eureka版本

    spring cloud eureka-server

    7. **安全性**:Eureka Server可以与Spring Security结合,对服务注册和发现进行身份验证和授权,保障微服务环境的安全。 8. **与其他Spring Cloud组件集成**:Eureka Server可以与Spring Cloud Config(配置中心)...

    multi zone eureka server.rar

    5. **安全性和容错**:为了保护服务信息不被非法访问,Eureka Server可以配置安全认证。同时,使用Zookeeper或其他分布式协调系统,可以实现Eureka Server的主备切换,提高整体系统的稳定性。 在`springclouddemo1`...

    eurekaserver.rar

    生产环境中,Eureka Server通常需要配置安全认证,以防止未经授权的服务注册和查询。这可以通过Spring Security或者其他安全框架实现。 9. **客户端容错** 当Eureka Server不可用时,Eureka客户端会进入自我保护...

    springcloud-eureka-server.zip

    《SpringCloud Eureka Server深度解析与实践指南》 在分布式微服务架构中,服务治理扮演着至关重要的角色,而SpringCloud Eureka Server正是这样一款专为解决服务注册与发现问题而设计的组件。本文将围绕"spring...

    eureka包含client,server工程

    在本项目中,我们看到了两个关键的子工程:`tw-cloud-eureka-server`和`tw-cloud-eureka-client`,分别对应Eureka的服务端(Server)和服务端(Client)。接下来,我们将深入探讨这两个工程及其与Spring Boot和Maven...

    EurekaServer.zip

    EurekaServer.zip是一个包含Spring Cloud Eureka服务器的压缩包,它是Spring Cloud生态系统中的核心组件,主要用于实现微服务的注册与发现。Eureka是Netflix开发的服务发现框架,它可以帮助分布式系统中的各个服务...

    eureka server

    在微服务架构中,每个服务实例都需要向Eureka Server注册自身的信息,包括服务名、IP地址、端口等,以便其他服务能够通过Eureka Server查找并调用这些服务。Spring Boot 2.0和Spring Cloud Finchley.RELEASE的结合为...

    Eureka-server_Eureka注册中心代码_Eureka!_

    - **安全配置**:根据实际需求,可以配置Eureka Server的安全策略,例如启用基本认证或者禁用默认的安全配置。 4. **Eureka的客户端配置与使用** - **添加依赖**:在微服务项目中引入Eureka Client依赖,如`...

    eureka注册中心集群

    在生产环境中,Eureka集群间的通信以及服务实例注册都需要考虑安全性,可以通过SSL加密传输,还可以配置基本认证或其他授权方式。 10. **Eureka与Spring Cloud Gateway**: 集群中的Eureka可以配合Spring Cloud ...

Global site tag (gtag.js) - Google Analytics