spring-security-oauth2与spring-cloud-starter-oauth2

时间:2018-11-27 12:54:37

标签: spring-boot oauth-2.0 spring-cloud spring-security-oauth2

我正在使用Spring Boot构建一个oAuth2应用程序。但是,Github中有使用spring-security-oauth2spring-cloud-starter-oauth2的各种示例项目。
我们是否有特定的场景,可以针对应用程序在这两者之间使用特定的jar?    

尽管Spring云主要用于分布式系统。 Github上有很多使用spring-cloud-starter-oauth2的实现,即使是非分布式应用程序也是如此。谢谢。

2 个答案:

答案 0 :(得分:3)

为了解决复杂的依赖关系管理,引入了Spring Boot启动器。入门POM是一组依赖项描述符(将多个常用的依赖项组合到一个POM中),否则,您也可以手动将其单独包含在应用程序中。入门工具可用于Web,测试,数据jpa,安全性,邮件等。如果不是入门者,那么它是一个模块:一个简单的工件。

如果要使用Web,则可以单独(手动)单独包含tomcat,mvc和jackson-一个简单应用程序有很多依赖项。相反,您只介绍一种入门依赖项:

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>

出现您的问题:

spring-security-oauth2 是组 org.springframework.security.oauth 的工件,它为Spring Security(而非云)支持oAuth2(仅支持),而< strong> spring-cloud-starter-oauth2 是一组多个依赖项,例如上面的starter web依赖项。这是Spring Cloud的OAuth2入门程序,仅在使用Spring Cloud时才可用。该入门工具在Spring Cloud的OAuth2框架下具有开箱即用的依赖包,例如SSO,OAuth2客户端。

答案 1 :(得分:0)

Spring 最初将 oauth2 移至 spring cloud started,但从 2.4.0.M1 版本开始,它移至 Spring Security。您将能够在 start.spring.io 上验证 oauth2 云依赖项仅在版本 >=2.0.0.RELEASE 和 <2.4.0.M1 enter image description here