spring - Spring Boot 2,分离 AuthorizationServer 和 ResourceServer
问题描述
首先我想指出我已经有点沮丧了,因为我花了将近一周的时间来解决我的“问题”,在 StackOverflow、github 和任何可能的地方寻找一些真正的解决方案,但仍然找不到任何合理的东西(f$%#咳!!)
我正在尝试做的是我开发一个由几个组件组成的解决方案:
- 使用 OAuth2 和 JWT 分离授权服务器(使用授权代码流),
- 使用上述授权服务器作为身份验证提供程序的单独资源服务器(?),
- 使用来自两台服务器的 api 的前端应用程序,理想情况下是单页应用程序。
我正在尝试的是其中一些 git 存储库作为示例:
- https://github.com/spring-guides/tut-spring-security-and-angular-js/tree/master/oauth2-vanilla
- https://github.com/Baeldung/spring-security-oauth
第一个似乎很有希望,但它基于 Spring boot 1,我没有成功地将其转换为 Spring boot 2 项目。
第二个基于 Spring boot 2,但没有提供我真正想要的东西......
拜托,我求你了,谁能给我指出一个完整而全面的教程/git repo,其中包含实际可行的解决方案?;(
解决方案
我将向您指出我在自己的项目中使用的内容。我不得不根据我的需要对其进行一些调整,因为我的项目结构有点复杂,但它确实可以完成工作。
如果有帮助,目前(以修改后的形式)为我们的应用程序提供 JWT 身份验证,前端是 Angular 应用程序,后端是 Spring Boot 2,老实说,它对我们来说工作得很好。
希望您觉得这个有帮助。
推荐阅读
- java - Java - Math.asin() 仅返回 0
- react-native - 反应原生打包程序构建捆绑循环
- ios - 轮播视图在从 iOS 的主详细信息菜单第二次进入后重叠一页,仅在 XAMARIN 的 Android 中运行良好
- android - weightsum 文本和图像在 xml android 中无法正确显示
- bar-chart - pygal + 条形图 + 根据 x_label 更改同一系列中值的颜色
- python - 在 Python 中安装 symfit 库时出错
- android - Xamarin Android - CrossGeeks - AzurePushNotificationPlugin - 如果应用程序位于前台则隐藏通知(android 和 ios)
- javascript - 在 "<%: %>" 中包含一个 JS 变量
- javascript - 确定渲染树中的元素
- python - 仅使用正则表达式查找最长子字符串的快速方法