Welcome to WuJiGu Developer Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
281 views
in Technique[技术] by (71.8m points)

关于SpringCloudSecurity和SpringSecurity的选择

使用 Spring 初始化器新建项目的时候在 Security 栏目中包含:
SpringSecurity、OAuth2 Client、OAuth2 Resource Server;

在 SpringCloudSecurity 中包括:
CloudSecurity、CloudOAuth2;

它们之间的区别是什么?适用场景如何?
SpringCloudSecurity 相比 SpringBoot 中的 Security 进行了如何的改进?

如果我仅仅使用 SpringBoot 构建一个 OAuth2 相关的单体应用,使用 SpringCloudSecurity 会更加方便么?


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)
  • spring cloud security是建立在springboot和spring security oauth2之上的,是微服务中用来做认证的,可以快速创建实现常见模式比如单点登录等,分布式情况下和单体应用肯定是不同的。
  • 你在单体应用中选一个安全框架依赖那不就是springsecurity,同样的你换成微服务了,那不就是在spring cloud security中选cloud security吗。所以你问在单体应用中用cloudsecurity会不会方便这个问题,这两个根本就不是一个概念的东西怎么能混用呢?
  • 如果你在微服务的应用下你要用认证服务,那你要建立一个授权服务器和资源服务器;依赖把CloudSecurity、CloudOAuth2都选上就完事了。
  • 最后想说下,就是oauth2大部分情况下都用在微服务架构的认证,如果只是单单一个单体spring security够用了,你顶多结合个jwt来做无状态应用;我看过很多开源框架,没有分布式的情况下就是springsecurity结合JWT,等你学到微服务后再去研究oauth2吧。

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to WuJiGu Developer Q&A Community for programmer and developer-Open, Learning and Share
...