使用简单的后端(例如Spring)和SPA前端以及OAuth2身份验证提供程序,基于http会话实现授权的正确方法是什么?
“正确”一词是指模拟用户后端以获取会话cookie的方法。
不幸的是,到处都有“可调用,宁静,无状态”的JWT炒作。但是我的应用程序将仅由很少的用户使用,它只需要开箱即用的HTTP会话即可提供良好的旧安全性。 Okta解决方案当前的“提议”正在使对API的每个请求都得到验证,因此每个调用都有大量开销,从而导致性能不佳。
假设我们在myapp.com上公开了SPA应用,并且其后端通过myapp.com/api在代理上公开了。
我在想的是这种情况的实现:
或者也许:
是否有现成的可用配置?看起来这两种情况都需要在弹簧安全性方面进行大量工作和配置。可悲的是,很难找到与SPA和oauth2提供程序结合的http会话cookie相关的任何资源。
或者我可能错过了什么?
答案 0 :(得分:0)
JHipster实现了第二种方案(更安全)(也称为授权代码流)。它的实现基于Spring Security的OAuth支持。
我们已经使用Keycloak和Okta进行了所有测试,但它应可与任何符合OIDC的IdP一起使用。