在我的项目中,我目前有一个以这种方式工作的旧式身份验证:
- 有一个客户端(独立)与
API service
运行在容器中的自定义应用程序对话。 - 使用支持 OAuth 和 PKCE 的云身份提供程序 (IdP)。当用户进入登录页面然后被重定向到回调时,它通过通常的登录过程提供其令牌。
API service
充当回调的接收者。因此,它获取身份提供者token-1
并将其存储在缓存中。基于此,它向客户端返回一个经过修改但不同的token-2
“计算” 。token-1
- 一旦客户端需要进行 REST 调用,它就会用
token-2
JWT 令牌装饰它。调用转到与其匹配的 API 服务,token-1
然后可以针对 IdP 进行验证。
我需要摆脱API service
云原生机制。我假设 AWS HTTP API 网关可以使用其JWT Authorizer 功能直接与 IdP 集成。遗憾的是,我无法影响必须保持功能的当前遗留流程。
但是,我想在 JWT Authorizer 和客户端端点之间插入一个 Lambda,它将面向客户端的令牌交换为 IdP 令牌(执行API service
正在执行的操作)。这可能吗?我该如何处理?