Jump to content

Spring Security

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by 80.214.16.77 (talk) at 08:59, 6 March 2017. The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
Spring Security
Developer(s)4
Stable release
4.2.2 / March 2, 2017 (2017-03-02) [1]
Written inJava
Operating systemCross-platform
Typeweb application framework security
LicenseApache License 2.0
Websiteprojects.spring.io/spring-security/

Spring Security is a Java/Java EE framework that provides authentication, authorization and other security features for enterprise applications. The project was started in late 2003 as 'Acegi Security' (pronounced Ah-see-gee)[2] by Ben Alex, with it being publicly released under the Apache License in March 2004. Subsequently, Acegi was incorporated into the Spring portfolio as Spring Security, an official Spring sub-project. The first public release under the new name was Spring Security 2.0.0 in April 2008, with commercial support and training available from SpringSource.

Authentication flow

Diagram 1 shows the basic flow of an authentication request using the Spring Security system. It shows the different filters and how they interact from the initial browser request, to either a successful authentication or an HTTP 403 error.

Key authentication features

Key authorization features

Instance-based security features

Other features

  • Software localization so user interface messages can be in any language.
  • Channel security, to automatically switch between HTTP and HTTPS upon meeting particular rules.
  • Caching in all database-touching areas of the framework.
  • Publishing of messages to facilitate event-driven programming.
  • Support for performing integration testing via JUnit.
  • Spring Security itself has comprehensive JUnit isolation tests.
  • Several sample applications, detailed JavaDocs and a reference guide.
  • Web framework independence.

Releases

References