Spring Framework 之 安全Security教程

Spring Security是一个框架,致力于为基于Java EE的企业软件应用程序提供身份验证和授权。

 

Maven依赖

要在基于Maven的项目中包含Spring Security,请包括以下依赖项:

<repositories>
	<repository>
		<id>spring-snapshot</id>
		<name>Spring Snapshot Repository</name>
		<url>http://repo.spring.io/snapshot</url>
	</repository>
</repositories>

<dependencies>
	<dependency>
		<groupId>org.springframework.security</groupId>
		<artifactId>spring-security-web</artifactId>
		<version>4.1.1.RELEASE</version>
	</dependency>
	<dependency>
		<groupId>org.springframework.security</groupId>
		<artifactId>spring-security-config</artifactId>
		<version>4.1.1.RELEASE</version>
	</dependency>
</dependencies>

如果您正在使用LDAP,OpenID等其他功能,则还需要包括相应的模块

如果您遇到任何导致运行时类路径问题的传递依赖关系问题,则可以考虑添加spring security BOM文件。

<dependencies>
	<dependency>
		<groupId>org.springframework</groupId>
		<artifactId>spring-framework-bom</artifactId>
		<version>4.3.1.RELEASE</version>
		<type>pom</type>
		<scope>import</scope>
	</dependency>
</dependencies>

Gradle依赖

要在基于gradle的项目中包含spring安全性,请包含以下依赖项:

repositories {
	mavenCentral()
}
dependencies {
	compile 'org.springframework.security:spring-security-web:4.1.1.RELEASE'
	compile 'org.springframework.security:spring-security-config:4.1.1.RELEASE'
}

Spring Security安全实例

以下示例详细说明了Spring Security的各种功能。

Spring Security –登录表单示例

本教程的范围是:

  • 只有授权用户才能访问编辑员工屏幕。
  • 未经授权的用户应显示登录屏幕。
  • 成功的凭据应转发到编辑员工屏幕。
  • 不成功的凭据应转发到拒绝访问屏幕。
  • 应该有一个注销应用程序的链接。

Spring Security – JDBC用户服务示例

<jdbc-user-service/>用于从数据库获取用户名和密码以验证用户进入系统的示例。

Spring Security – HTTP基本身份验证示例

<http-basic/>用于强制用户使用基本的HTTP身份验证来身份验证应用程序中的任何网页或任何其他资源的示例。

Spring Security –自定义UserDetailsS​​ervice示例

学习扩展和使用UserDetailsService界面,该界面用于查找任何给定用户的用户名,密码和授予的权限。

Spring Security安全性–方法级安全性示例– @PreAuthorize和@Secured

了解在Spring应用程序中实现方法级别的安全性。

Spring Security –使用JSP Taglibs的View Layer Security

学习在视图层中添加安全性。当我们要根据用户的角色隐藏某些链接或按钮以使他将无法访问该功能时,通常需要用到它。

Spring Security –单元测试Spring Security身份验证

了解测试Spring身份验证技术的方法,以使系统免受外部攻击。

Spring Security – Siteminder预身份验证示例

在其他任何应用程序中对用户进行预身份验证后,学习使用spring安全性,并使用siteminder进入您的Web应用程序。

Spring Security安全性–具有保护切入点的方法级安全性

学习使用基于XML的安全性配置。

参考:

Spring Security安全参考

saigon has written 1440 articles

Leave a Reply