Spring security Spring Boot 2、云Netflix和用户名/密码认证架构
这是一个架构问题。我想实现一个处理两种用户(管理员和客户端)的应用程序。每个角色可以通过以下方式注册:Spring security Spring Boot 2、云Netflix和用户名/密码认证架构,spring-security,spring-cloud,keycloak,spring-security-oauth2,spring-cloud-netflix,Spring Security,Spring Cloud,Keycloak,Spring Security Oauth2,Spring Cloud Netflix,这是一个架构问题。我想实现一个处理两种用户(管理员和客户端)的应用程序。每个角色可以通过以下方式注册: 管理员:用户名/密码注册 客户:Facebook/Google/用户名和密码注册 根据用户的角色,他们中的每一个人都有其授权的特定操作 从技术层来看,我想使用Java8、SpringCloudNetflix和更高版本的Docker和Kubernetes(以实现自动修复和自动缩放) 我已经实现了Eureka发现、配置服务器、Zuul网关,每个角色都有两个微服务(让我开始)。我根本不知道如何接
- 管理员:用户名/密码注册
- 客户:Facebook/Google/用户名和密码注册
我真的找不到使用用户名/密码、社交登录、SpringCloudNetflix以及SpringSecurity5的合适文档 网关不应负责处理身份验证 一种可能性是使用cas项目。它可以作为微服务运行,以处理整个身份验证过程。它可以处理多种身份验证方法,如数据库(用户名/密码)和社交媒体,如谷歌或Facebook 它附带了一个基本设置,有一个登录页面和一个配置的DockerFile。你可以定制一切。只需添加相关依赖项并在application.properties中添加配置。您可以自定义前端 顺便说一下:如果您使用kubernetes,您不需要使用eureka的网关或服务发现。库伯内特斯是为你做的
如今,有几个授权服务器可供选择,包括KeyClope。然而,Spring安全团队暗示,他们可能会重新考虑他们的决定:感谢您将我介绍给CAS。只有网关应该注册到CAS或每个微服务?如何在对不同服务的多个rest调用之间保存会话(我不希望用户登录使用不同服务的任何新请求)?我使用jwt解决了这个问题。登录后,cas向我发送一个令牌,我将其存储在浏览器localStorage中。微服务使用SpringSecurity5检查令牌是否无效或过期。抱歉,不在公共存储库中。如果答案是有用的,请考虑接受/投票。谢谢