带有密钥斗篷的Spring Cloud微服务

你ardato

我有一个Spring Cloud微服务项目,该项目使用Spring Cloud Config Server管理配置,并使用Eureka Server进行服务发现。

在我想使用keycloak添加新的微服务之前,我的应用程序运行良好。这项新的微服务只是我的Vue前端应用程序的一个剩余API,预计用户管理将由Keycloak处理。

新服务运行正常,并向Eureka注册,直到我将keycloak依赖项添加到项目中为止应用程序不会崩溃或引发任何错误,无法正常启动并向Eureka注册,但是在Spring Boot Admin服务器面板上,我看到该应用程序已关闭。

这是新服务的我的.properties文件。

eureka.instance.preferIpAddress=true
eureka.client.serviceUrl.defaultZone=http://localhost:8761/eureka
eureka.instance.leaseRenewalIntervalInSeconds=3
eureka.client.eureka-connection-idle-timeout-seconds=3
eureka.client.fetchRegistry=true

spring.boot.admin.client.url=http://localhost:6060
management.endpoints.web.exposure.include=*
management.endpoint.health.show-details=always

server.port=8082

keycloak.auth-server-url=http://localhost:8080/auth
keycloak.realm=microservices
keycloak.resource=microservices-app
keycloak.public-client=true

keycloak.security-constraints[0].authRoles[0]=user
keycloak.security-constraints[0].securityCollections[0].patterns[0]=/*
keycloak.cors=true

这是我对新服务的依赖。

...
<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
        <exclusions>
            <exclusion>
                <groupId>org.thymeleaf</groupId>
                <artifactId>thymeleaf</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-config</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-actuator</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
    </dependency>
    <dependency>
        <groupId>org.keycloak</groupId>
        <artifactId>keycloak-spring-boot-starter</artifactId>
        <version>4.8.3.Final</version>
    </dependency>
    <dependency>
        <groupId>org.springframework.cloud</groupId>
        <artifactId>spring-cloud-starter-openfeign</artifactId>
    </dependency>
</dependencies>

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.keycloak.bom</groupId>
            <artifactId>keycloak-adapter-bom</artifactId>
            <version>4.8.3.Final</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

春季云版本是 Hoxton.SR1

春季启动版本是 2.2.2.RELEASE

我曾尝试添加Spring Security并使用进行Java配置,KeycloakAuthenticationProvider但没有帮助。

在整个项目中,我有许多由Spring Cloud版本或Spring Cloud-Spring Boot Admin交互引起的怪异错误,因此更改版本或向配置文件中添加一个小参数通常可以解决问题,我怀疑这个Keycloak问题是否可以解决道路。

Pawel.S。

Spring Boot Admin使用执行器端点,请尝试使其不受保护:

    keycloak.security-constraints[0].authRoles[0]=user
    keycloak.security-constraints[0].securityCollections[0].patterns[0]=/*
    keycloak.security-constraints[0].securityCollections[1].patterns[0]=/actuator
    keycloak.security-constraints[0].securityCollections[1].patterns[1]=/actuator/*

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

带有Spring Boot的微服务,没有Spring Cloud

Spring Cloud微服务架构中的困惑

微服务系统中的 Spring Cloud 版本

微服务不会从spring-cloud-config-server微服务获取属性

带有微服务和 Docker-Compose 错误的 Spring Cloud Stream Kafka

部署Spring Cloud微服务时的IP地址规范

AWS中的Spring Cloud微服务部署

使用Spring Cloud从微服务中获取外部IP

什么是OAuth2中使用spring cloud微服务的资源服务器

Spring Cloud Eureka Server:Eureka Server如何知道哪些微服务实例已启动?

Spring Cloud:微服务认证通过 Eureka Discovery 工作,但不是通过 Zuul

spring cloud stream - 微服务可以同时作为源和接收器吗

Spring Cloud-如何仅允许访问特定微服务的端点?

Spring Cloud Gateway 可以与非异步的微服务一起使用吗?

如何高效地开发与google firebase cloud的firestore实时同步数据的spring-boot微服务?

带有节点表达的微服务架构

带有瑞典BankID的密钥斗篷

如何通过每项服务的Spring Cloud Stream Kafka和数据库实现微服务事件驱动架构

Spring Boot微服务多次击中相同的微服务

通过单独运行批处理微服务在Spring Cloud Data Flow上部署Spring Batch应用程序

带有微服务的服务类中的 @transactional

使用 API 密钥查询 GraphQL 微服务?

带有 API 网关的微服务架构与 Message Broker 通信,而不是直接与微服务通信

Firebase + Android + Spring创建微服务

Spring Boot是否可以提供微服务

Spring POST 方法微服务 500 异常

AWS Beanstalk中的Spring Boot微服务

在Openshift上部署Spring微服务

Spring Boot docker微服务restTemplate异常