• SpringCloud如何配置Eureka授权


    1. 现在已经成功的实现了一个Eureeka的服务启动以及微服务的注册配置操作,但是现在的程序有一个问题,你自己公司的Eureka服务应该可以注册的服务只能够是满足于认证要求的微服务,所有这样来在之前所进行的Eureka里面配置缺少了关键性的一步:安全认证,所以应该为Eureka配置上安全认证处理。

      【microcloud-eureka-7001】修改pom.xml配置文件,引入SpringSecurity依赖包。

      <project

              xmlns="http://maven.apache.org/POM/4.0.0"

              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

              xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

          <parent>

              <artifactId>microcloud</artifactId>

              <groupId>com.gwolf</groupId>

              <version>1.0</version>

          </parent>

          

          <modelVersion>4.0.0</modelVersion>

          <groupId>com.gwolf</groupId>

          <artifactId>microcloud-eureka-7001</artifactId>

          <packaging>jar </packaging>

          <name>microcloud-eureka-7001</name>

          <url>http://maven.apache.org</url>

          <properties>

              <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

          </properties>

          <dependencies>

              <dependency>

                  <groupId>ch.qos.logback</groupId>

                  <artifactId>logback-core</artifactId>

              </dependency>

              <dependency>

                  <groupId>org.springframework.boot</groupId>

                  <artifactId>spring-boot-starter-jetty</artifactId>

              </dependency>

              <dependency>

                  <groupId>org.springframework.boot</groupId>

                  <artifactId>spring-boot-starter-web</artifactId>

              </dependency>

              <dependency>

                  <groupId>org.springframework.boot</groupId>

                  <artifactId>spring-boot-starter-test</artifactId>

                  <scope>test</scope>

              </dependency>

              <dependency>

                  <groupId>org.springframework</groupId>

                  <artifactId>springloaded</artifactId>

              </dependency>

              <dependency>

                  <groupId>org.springframework.boot</groupId>

                  <artifactId>spring-boot-devtools</artifactId>

              </dependency>

              <dependency>

                  <groupId>org.springframework.cloud</groupId>

                  <artifactId>spring-cloud-starter-eureka-server</artifactId>

              </dependency>

              <dependency>

                  <groupId>org.springframework.cloud</groupId>

                  <artifactId>spring-cloud-starter-config</artifactId>

              </dependency>

              <dependency>

                  <groupId>org.springframework.cloud</groupId>

                  <artifactId>spring-cloud-starter-config</artifactId>

              </dependency>

          

              <dependency>

                  <groupId>org.springframework.boot</groupId>

                  <artifactId>spring-boot-starter-security</artifactId>

              </dependency>

          </dependencies>

      </project>

      SpringCloud如何配置Eureka安全访问?
    2. 【microcloud-eureka-7001】一旦我们的项目之中导入了Security开发包,则每一次启动微服务的时候都会自动生成一个密码,而这个密码由于会改变,所以一般都不使用,所以要修改application.yml配置文件,追加密码的配置项。

      server:

        port: 7001

      eureka:

        instance: #eureka实例定义

          hostname: eureka-7001.com #设置清理的间隔时间,默认这个时间使用的毫秒单单位(默认是60秒)

        client: #客户端进行Eureka注册的配置

            service-url: 

              defaultZone: http://eureka-7001.com:7001/eureka

            register-with-eureka: false #当前的微服务不注册到eureka之中

            fetch-registry: false

        server:

          enable-self-preservation: false #是否要设置成保护模式

          eviction-interval-timer-in-ms: 60000  #不通过eureka获取注册信息

      spring:

        application:

          name: microcloud-eureka-7001

      security:

        user:

          name: eureka

          password: eureka

      SpringCloud如何配置Eureka安全访问?
    3. 此时访问Eureka的服务地址为:http://eureka:eureka@eureka-7001.com:7001/,要求输入用户名和密码。

      SpringCloud如何配置Eureka安全访问?
    4. 【microcloud-eureka-7001】所有注册到Eureka服务的地方都要加上用户名和密码。

      server:

        port: 7001

      eureka:

        instance: #eureka实例定义

          hostname: eureka-7001.com #设置清理的间隔时间,默认这个时间使用的毫秒单单位(默认是60秒)

        client: #客户端进行Eureka注册的配置

            service-url: 

              defaultZone: http://eureka:eureka@eureka-7001.com:7001/eureka

            register-with-eureka: false #当前的微服务不注册到eureka之中

            fetch-registry: false

        server:

          enable-self-preservation: false #是否要设置成保护模式

          eviction-interval-timer-in-ms: 60000  #不通过eureka获取注册信息

      spring:

        application:

          name: microcloud-eureka-7001

      security:

        user:

          name: eureka

          password: eureka

      SpringCloud如何配置Eureka安全访问?
    5. 【microcloud-provider-dept-8001】修改application.yml配置文件,进行授权配置。

      server:

        port: 8001

      mybatis:

        config-location: classpath:mybatis/mybatis.cfg.xml    # mybatis配置文件所在路径

        type-aliases-package: com.gwolf.vo       # 定义所有操作类的别名所在包

        mapper-locations:                                     # 所有的mapper映射文件

        - classpath:mybatis/mapper/**/*.xml

      spring:

        datasource:

          type: com.alibaba.druid.pool.DruidDataSource    # 配置当前要使用的数据源的操作类型

          driver-class-name: com.mysql.cj.jdbc.Driver      # 配置MySQL的驱动程序类

          url: jdbc:mysql://localhost:3306/mldn_1?serverTimezone=UTC   # 数据库连接地址

          username: root                                  # 数据库用户名

          password: root                            # 数据库连接密码

          dbcp2:                                          # 进行数据库连接池的配置

            min-idle: 5                                   # 数据库连接池的最小维持连接数

            initial-size: 5                               # 初始化提供的连接数

            max-total: 5                                  # 最大的连接数

            max-wait-millis: 200                          # 等待连接获取的最大超时时间

        application:

          name: microcloud-provider-dept

      eureka:

        client: #客户端进行Eureka注册的配置

          service-url: 

            defaultZone: http://eureka:eureka@eureka-7001.com:7001/eureka

        instance:

          instance-id: dept-8001.com  #在信息列表中显示主机名称

          prefer-ip-address: true   #访问的路径变为IP地址

          lease-renewal-interval-in-seconds: 2  #设置心跳的时间间隔(默认是30秒)

          lease-expiration-duration-in-seconds: 5 #如果现在超过了5秒的间隔(默认90秒)

      info:

        app.name: gwolf-microcloud

        company.name: www.gwolf.com

        build.artifactId: $project.artifactId$

        build.version:  $project.version$

      SpringCloud如何配置Eureka安全访问?
    6. 启动eureka注册服务和部门微服务,查看安全认证之后微服务是否注册成功了。

      SpringCloud如何配置Eureka安全访问?
  • 相关阅读:
    2019-2020-1学期 20192420《网络空间安全专业导论》第八周读书笔记
    2019-2020-1学期 20192420《网络空间安全专业导论》第七周学习总结
    2019-2020-1学期 20192420《网络空间安全专业导论》第七周读书笔记
    2019-2020-1学期 20192420《网络空间安全专业导论》第六周学习总结
    2019-2020-1学期 20192420《网络空间安全专业导论》第15、16章读书笔记
    2019-2020第一学期小组讨论--操作系统层10、11章
    2019-2020-1学期 20192420《网络空间安全专业导论》第五周学习总结
    2019-2020-1学期 20192420 《网络空间安全专业导论》第五周读书笔记
    2019-2020-1学期 20192420《网络空间安全专业导论》第四周学习总结
    2019-2020-1学期 20192415 《网络空间安全专业导论》openssl实践
  • 原文地址:https://www.cnblogs.com/tiancai/p/9054851.html
Copyright © 2020-2023  润新知