jhipster OAuth 2.0 / OIDC - 让第三方访问 jhipster 应用程序中的用户资源

问题描述

我目前正在研究 jhipster 单体应用程序堆栈,v 6.10.3,带有 spring boot 后端和 angular 前端。 登录通过 oauth2 和 oidc 通过 okta 处理。 Spring boot 版本为 2.2.7.RELEASE

我的问题是: 我想提供一个 api 端点,第三方应用程序可以在其中访问我的用户创建的内容。 所以我想到了工作流程:

用户使用 3 方工具 -> 想要访问我的应用程序中的数据 -> 在 okta 进行身份验证 -> 3 方应用程序存储令牌 -> 使用 访问我的应用程序中的数据的令牌 -> 我的应用程序验证令牌 并返回请求的数据

到目前为止我尝试过的: 通过使用邮递员,我可以通过 https://myoktadomain.okta.com/api/v1/authn 使用八进制成功验证自己 当我存储返回的 JSESSIONID 并将其与下一个请求一起添加到我自己的 API 时。请求失败并显示 401。可能是因为我的后端不存在会话。 所以现在我遇到了有状态与无状态的问题?

好的,在进一步阅读后,我偶然发现了 @EnableResourceServer 注释,有人在这里提出了类似的问题: Jhipster OAuth 2.0 / OIDC Authentication Authorization header with bearer token 但我认为自从提出这个问题以来的 3 年里发生了很大的变化。 根据 https://developer.okta.com/blog/2019/03/05/spring-boot-migration

,对于我的 Spring Boot 版本,我不需要此注释

在 Spring Boot 2.1.x 版本中,您不需要那个注解。

所以接下来我尝试根据 https://developer.okta.com/blog/2020/08/07/spring-boot-remote-vs-local-tokens

目前无济于事。

我的问题: 是否可以进行额外的 jwt 验证?我不想跑完全错误的方向。 如何最大限度地减少对标准 jhipster 结构的影响? 最后,有没有更好的方法来归档我的目标?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)