我正在构建一个我打算在 Pivotal Web Services 上部署的应用程序。我想使用 Spring Security 保护应用程序。安全性应该是基于角色的,用户应该能够在我的应用程序中注册自己。
我希望应用程序以无状态的方式工作,我知道如何在有状态系统中使用会话来处理这样的“用户系统”,但是我完全不知道在 PWS 上处理这个你有多个实例相同的应用程序。
处理这个问题的最佳方法是什么?我是否必须为此设置 OAUTH2 服务器?
我正在构建一个我打算在 Pivotal Web Services 上部署的应用程序。我想使用 Spring Security 保护应用程序。安全性应该是基于角色的,用户应该能够在我的应用程序中注册自己。
我希望应用程序以无状态的方式工作,我知道如何在有状态系统中使用会话来处理这样的“用户系统”,但是我完全不知道在 PWS 上处理这个你有多个实例相同的应用程序。
处理这个问题的最佳方法是什么?我是否必须为此设置 OAUTH2 服务器?
您可以在 cloudfoundry 上使用会话。路由器实际上知道如何使用 jsessionId 处理粘性。java buildpack还支持会话复制,而且设置起来非常简单。
只要您使用会话复制,您拥有多个实例的事实就不会成为问题。看看Spring Session,它应该可以帮助你理解如何管理用户状态。
根据身份验证,您不需要使用 oAuth2。您可以只使用 BASIC 或Spring Security支持的任何类型的身份验证
如果您想利用 Spring Cloud,请查看Spring Cloud Security启动资源服务器然后在您的应用程序上使用 @EnableSSO 非常简单。在深入研究 Spring Cloud Security 之前,我建议好好阅读 Spring Security。
Syer 博士写了一篇关于如何使用 api 网关模式保护微服务的精彩博客文章。<--- 阅读这个
这需要很多,但如果不先进行一些研究,这种问题就不容易回答。