Spring Security 教程

 2023-09-06 阅读 23 评论 0

摘要:Spring Security 教程 在这篇文章中,我们将讨论Spring框架“安全性”模块基础知识。我们将在即将发布的帖子中开发一些简单而先进的示例。 现在,开发安全应用程序是避免故障,窃取或黑客攻击我们的机密数据或未经授权访问的非常重要的方面。我们可以使用

 

Spring Security 教程

 

在这篇文章中,我们将讨论Spring框架 “安全性”模块基础知识。我们将在即将发布的帖子中开发一些简单而先进的示例。

现在,开发安全应用程序是避免故障,窃取或黑客攻击我们的机密数据或未经授权访问的非常重要的方面。我们可以使用Spring Security Module开发Secure应用程序来限制对我们的应用程序的访问。

目录[ 隐藏 ]

  • 1春季4安全
    • 1.1 Spring Acegi Security的缺点
    • 1.2什么是Spring Security?
    • 1.3 Spring 4安全功能
    • 1.4 Spring 4安全级别
    • 1.5 Spring 4安全优势
    • 1.6 Spring 4安全子模块
    • 1.7 Spring Security Maven
    • 1.8 Spring Security Gradle

春天4安全

最初,Spring Framework使用单独的第三方框架来支持Spring Applications Security:Acegi Security。但是开发安全应用程序并不容易,并且有一些缺点。

Spring Acegi Security的缺点

  1. 很多XML配置
  2. 学习曲线太多了
  3. 不支持注释

为了避免所有这些问题,Spring Team(Pivotal Team)将“Acegi Security”框架集成到Spring Framework中作为“Spring Security”模块。

Spring 4 Framework具有以下模块来为基于Spring的应用程序提供安全性:

  1. 春季安全
  2. Spring Security SAML
  3. Spring Security OAuth
  4. Spring Security Kerberos
  5. Spring Cloud Security

春天4安全

 

在Spring Framework中,“Spring Security”模块是其他Spring Security模块的基础模块。

我们将在本文中讨论“Spring Security”模块的一些基础知识。我们将在即将发布的帖子中讨论一些简单而先进的实时示例。

一旦我们在即将发布的帖子中熟悉“Spring Security”模块,我们将回到其余四个模块。

什么是Spring Security?

Spring Security是Spring Framework的安全模块之一。它是一个Java SE / Java EE安全框架,为Web应用程序或企业应用程序提供身份验证,授权,SSO和其他安全功能。

Spring Security官方网站:http://projects.spring.io/spring-security/

Spring Security Documentation网站:http://docs.spring.io/spring-security/site/docs/

最新稳定的Spring Security Module版本是“4.0.2.RELEASE”

Spring 4安全功能

Spring 3.x安全框架提供以下功能:

  1. 身份验证和授权。
  2. 支持BASIC,摘要和基于表单的身份验证。
  3. 支持LDAP身份验证。
  4. 支持OpenID身份验证。
  5. 支持SSO(单点登录)实施。
  6. 支持跨站点请求伪造(CSRF)实施。
  7. 通过HTTP Cookie支持“记住我”功能。
  8. 支持ACL的实现
  9. 支持“通道安全”,这意味着在HTTP和HTTPS之间自动切换。
  10. 支持I18N(国际化)。
  11. 支持JAAS(Java身份验证和授权服务)。
  12. 使用Spring WebFlow Framework支持流程授权。
  13. 使用Spring Web Services支持WS-Security。
  14. 支持XML配置和注释。非常少或最小的XML配置。

Spring 4.x安全框架支持以下新功能:

  1. 支持WebSocket安全性。
  2. 支持Spring数据集成。
  3. CSRF令牌参数解析器。

我们将在后续帖子中开发一些简单的示例来演示这些功能。

 

Spring 4安全级别

Spring Security支持以下两个授权级别

  1. 方法级别授权
  2. URL级别授权

注意
Spring Security通过使用AOP(面向方面​​编程)支持“方法级安全性”,这意味着通过Aspects。Spring Security通过使用Servlet过滤器支持“URL级别安全性”。

Spring 4安全优势

Spring 4安全框架提供以下优点:

  1. 开源安全框架
  2. 灵活,易于开发和单元测试应用程序
  3. 声明性安全编程
  4. 易于扩展
  5. 易于维护
  6. 充分利用Spring DI(依赖注入)和AOP。
  7. 我们可以开发松散耦合应用程序。

Spring 4安全子模块

Spring 4安全模块又分为11个子模块。它有以下子模块:

  1. Spring安全核心模块
  2. Spring安全配置模块
  3. Spring Security Web模块
  4. Spring安全标记库模块
  5. Spring Security AspectJ模块
  6. Spring安全ACL模块
  7. Spring Security LDAP模块
  8. Spring Security OpenID模块
  9. Spring Security CAS模块
  10. Spring Security Cryptography Module
  11. Spring Security Remoting模块

弹簧安全子模块

在Spring Framework的安全子模块中,Spring Security核心子模块是所有安全子模块的基础模块。

为了支持这11个Spring Security模块,Spring框架有以下jar:

  1. 弹簧安全核心4.0.2.RELEASE.jar
  2. 弹簧安全配置,4.0.2.RELEASE.jar
  3. 弹簧安全网络4.0.2.RELEASE.jar
  4. 弹簧安全标签库,4.0.2.RELEASE.jar
  5. 弹簧安全方面,4.0.2.RELEASE.jar
  6. 弹簧安全ACL-4.0.2.RELEASE.jar
  7. 弹簧安全LDAP的4.0.2.RELEASE.jar
  8. 弹簧安全OpenID的4.0.2.RELEASE.jar
  9. 弹簧安全-CAS-4.0.2.RELEASE.jar
  10. 弹簧安全加密4.0.2.RELEASE.jar
  11. 弹簧安全远程-4.0.2.RELEASE.jar

几乎所有Spring Security JAR都有类似的Maven或Gradle依赖项,如下所示:

Spring Security Maven


<dependencies><dependency><groupId>org.springframework.security</groupId><artifactId>[Spring Security Module Name Here]</artifactId><version>4.0.2.RELEASE</version></dependency>
</dependencies>

Spring Security Gradle


dependencies {
compile 
'org.springframework.security:[Spring Security Module Name Here]:4.0.2.RELEASE'
}

pom.xml


<dependencies><dependency><groupId>org.springframework.security</groupId><artifactId>spring-security-core</artifactId><version>4.0.2.RELEASE</version></dependency>
</dependencies>

build.gradle


dependencies {compile 'org.springframework.security:spring-security-core:4.0.2.RELEASE'
}

这就是Spring 4安全模块的基础知识。是时候开始开发一些简单的例子来探索Spring Security模块了。

我们将使用Spring STS Suite IDE,Maven或Gradle Build Tool和Java 7/8来开发我们的应用程序。

如果您喜欢我的帖子或有任何问题/建议,请给我发表评论。

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/3/4063.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息