Spring Cloud Gateway 与开源 IDP

问题描述

寻找示例以实现将 Spring Cloud Gateway 与开源 IDP(如 keycloak、UAA for REST API)集成。有一些像下面这样使用授权代码流的例子,这反过来又需要浏览器交互。

https://blog.jdriven.com/2019/11/spring-cloud-gateway-with-openid-connect-and-token-relay/ https://spring.io/blog/2019/08/16/securing-services-with-spring-cloud-gateway

但由于大多数是在spring cloud gateway中暴露的后端API,所以不涉及浏览器。能否请您帮忙建议如何使用开源 IDP 在 Spring Cloud Gateway 中实现 API 的身份验证和基于角色的授权?

问候
雅各

解决方法

我会将您的精力集中在构建 Rest API 和设计您将如何授权访问数据上。在 OAuth 中,这是在 3 个级别完成的:

选择可以作为 Docker 容器运行的授权服务器 - 您将通过管理 UI 进行配置,但不需要您编写任何代码。它具有 API 和客户端都将使用的端点。

对于身份验证,我将首先使用 OAuth Tools,以便您可以运行授权代码流并获取访问令牌,然后通过 curl 使用它调用您的 API。

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...