4117 Commits

Author SHA1 Message Date
Rob Winch
0a48b38179 Fix NoClassDefFoundError from Gradle upgradle 2013-12-05 11:37:45 -06:00
Rob Winch
3074dd8193 Update to Gradle 1.9
This is necessary to work with the latest Bamboo and Artifactory Gradle plugin
2013-12-05 11:30:46 -06:00
Rob Winch
8d312a6365 SEC-2313: Gradle javadoc hotfix 2013-09-11 15:43:08 -07:00
Rob Winch
4ef184d520 Fix Gradle Eclipse/AspectJ integration 2012-11-02 10:40:39 -05:00
Rob Winch
0f6c3affda Revert "Added generatePom task"
This reverts commit cf9a392b0af7a7571aded5b0cae55f6fc23f1d4a.

No need to generate pom since pom already exists and is maintained.
2012-11-01 15:41:43 -05:00
Rob Winch
cf9a392b0a Added generatePom task
This can be used to generate the pom.xml for adding the Spring Security
snapshot jars as a Maven Dependency to another project. For example,
if mywebapp requires the Spring Security 3.1.4.CI-SNAPSHOT jars one
could generate the pom.xml files and then use that to convert the project
into a valid Maven project within the IDE. Then the SNAPSHOT dependendies
could be added to mywebapp. This prevents the need to install the SNAPSHOT
dependencies in the local Maven repository.
2012-11-01 15:36:20 -05:00
Rob Winch
39918b4a01 Reserve Server Ports in integrationTests
Previously the build would look up a server port dynamically, but since
it closed the port immediately it may not be reserved by the time jetty
started up.

We now reserve the port and do not close it till just before Jetty starts.
While there is still a race condition, it is much smaller window of time
than it was previously.
2012-11-01 12:34:01 -05:00
Rob Winch
8f21d03832 SEC-2069: Update doc to use FilterInvocationSecurityMetadataSource 2012-10-22 14:28:10 -05:00
Rob Winch
e9d12d2023 Next development version 2012-10-08 22:30:22 -05:00
Spring Buildmaster
6a61d07019 Release version 3.0.8.RELEASE 2012-10-08 22:29:48 -05:00
Rob Winch
915b2acf73 SEC-2056: DaoAuthenticationProvider performs isPasswordValid when user not found
Previously authenticating a user could take significantly longer than
determining that a user does not exist. This was due to the fact that only
users that were found would use the password encoder and comparing a
password can take a significant amount of time. The difference in the
time required could allow a side channel attack that reveals if a user
exists.

The code has been updated to do comparison against a dummy password
even when the the user was not found.

Conflicts:

	core/src/main/java/org/springframework/security/authentication/dao/DaoAuthenticationProvider.java
2012-10-08 07:45:02 -05:00
Rob Winch
c3f5f4686e Added SCM information to pom for OSS requirements 2012-10-08 07:44:24 -05:00
Rob Winch
4c9a13a755 SEC-2031: PreInvocationAuthorizationAdviceVoter supports subclasses 2012-10-07 11:59:43 -05:00
Rob Winch
dc201b7989 Remove log4jConfigLocation from sample web.xml files
This prevents errors looking for the LogManager which is no longer
on the classpath since we use sl4j.
2012-10-06 10:15:35 -05:00
Rob Winch
fb227b5433 SEC-2025: SecurityContextLogoutHandler removes Authentication from SecurityContext
Previously there was a race condition could occur when the user attempts to access
a slow resource and then logs out which would result in the user not being logged
out.

SecurityContextLogoutHandler will now remove the Authentication from the
SecurityContext to protect against this scenario.
2012-10-05 14:18:19 -05:00
Rob Winch
aa489f7ff6 SEC-1882: Velocity AuthzImpl now works with Spring 3.0.6+ 2012-10-05 11:09:10 -05:00
Rob Winch
70d5ba536e SEC-2057: ConcurrentSessionFilter is now after SecurityContextPersistenceFilter
Previously, ConcurrentSessionFilter was placed after SecurityContextPersistenceFilter
which meant that the SecurityContextHolder was empty when ConcurrentSessionFilter was
invoked. This caused the Authentication to be null when performing a logout. It also
caused complications with LogoutHandler implementations that would be accessing the
SecurityContextHolder and potentially clear it out expecting that
SecurityContextPersistenceFilter would then clear the SecurityContextRepository.

The ConcurrentSessionFilter is now positioned after the
SecurityContextPersistenceFilter to ensure that the SecurityContextHolder is populated
and cleared out appropriately.
2012-10-03 14:04:24 -05:00
Rob Winch
d50184deda SEC-1753: Cater for missing DiscoveryInformation object in OpenID4JavaConsumer.endConsumption. 2012-10-02 16:37:25 -05:00
Rob Winch
5c4f4cbe4d SEC-2061: Fix typo in messages.properties 2012-10-02 16:26:05 -05:00
Rob Winch
b192680df3 removed maven.gradle in favor of maven-deployment.gradle 2012-10-02 13:55:34 -05:00
Rob Winch
95d0e08059 Eclipse Project names include 3.0.x suffix 2012-10-02 12:05:18 -05:00
Rob Winch
4f993d95b5 Updates for 3.0.x autorepo support 2012-10-02 11:20:40 -05:00
Rob Winch
4c832fc946 SEC-2038: AbstractPreAuthenticationFilter afterPropertiesSet invokes super 2012-09-21 15:23:42 -05:00
Rob Winch
5945abb10a Revert "SEC-2045: AbstractPreAuthenticationFilter afterPropertiesSet invokes super"
This commit contains the wrong JIRA ID.

This reverts commit c53fd99430739ced5289c6bbe5c50563710fa610.
2012-09-21 15:23:42 -05:00
Rob Winch
8c224f39dc SEC-2045: AbstractPreAuthenticationFilter afterPropertiesSet invokes super 2012-09-21 14:52:42 -05:00
Rob Winch
f0a6b7ca27 SEC-2041: SaveContextServletOutputStream/SaveContextPrintWriter delegate all methods 2012-09-21 14:51:32 -05:00
Rob Winch
0350c2833e SEC-2055: SaveContextServletOutputStream flush/close delegates to original ServletOutputStream instead of using super 2012-09-21 14:51:18 -05:00
Rob Winch
7406e03306 SEC-1975: Ignore anonymous users for AuthenticationSimpleHttpInvokerRequestExecutor
Previously anonymous authentication was submitted as credentials over the wire which
caused the applications to attempt to authenticate the anonymous user.

Now if the user is anonymous (determined by the AuthenticationTrustResolver), the
AuthenticationSimpleHttpInvokerRequestExecutor does not populate any credentials.
2012-08-09 10:04:03 -05:00
Rob Winch
ca3c1979b8 SEC-2005: Ensure SecurityContext saved prior to the response being committed
Previously Spring Security did not save the Security Context immediately prior
to the following methods being invoked:

   - HttpServletResonse.flushBuffer()
   - HttpServletResonse.getWriter().close()
   - HttpServletResonse.getWriter().flush()
   - HttpServletRespose.getOutputStream().close()
   - HttpServletRespose.getOutputStream().flush()

This meant that the client could get a response prior to the SecurityContext
being stored. After the client got the response, it would make another request
and this would not yet be authenticated. The reason this can occur is because
all of the above methods commit the response, which means that the server can
signal to the client the response is completed. A similar issue happened in
SEC-398.

Now the previously listed methods are wrapped in order to ensure the SecurityContext
is persisted prior to the response being committed.
2012-08-09 10:03:48 -05:00
Rob Winch
c9facdd993 SEC-2013: Add space to log of AbstractAuthenticationProcessingFilter 2012-07-19 16:13:33 -05:00
Rob Winch
d2e6343295 SEC-1968: AbstractPreAuthenticatedProcessingFilter clears SecurityContext on null principal change with invalidateSessionOnPrincipalChange = true 2012-06-27 15:46:10 -05:00
Rob Winch
31338a7bdb SEC-1875: ConcurrentSessionControlStrategy no longer adds/removes the session to the SessionRegistry twice
This fixes two issues introduced by SEC-1229

 * SessionRegistry.registerNewSession is invoked twice

 * SessionRegistry.removeSession is invoked twice (once by the
ConcurrentSessionControlStrategy#onSessionChange and once by
SessionRegistryImpl#onApplicationEvent). This is not nearly
as problematic since the interface states that implementations
should be handle removing the session twice. However, as removing
twice requires an unnecessary database hit we should only remove
sessions once.
2012-06-26 16:39:08 -05:00
Rob Winch
7714c5cd02 .gitignore bin and */src/*/java/META-INF 2012-06-15 14:54:48 -05:00
Rob Winch
5ed5590268 SEC-1970: Cleanup of pre authentication documentation
* Removed custom-authentication-provider from documentation
* Rephrased to make the pre authentication documentation a little more concise
* Removed nested () within text (not code)
* Removed user which should have been use
2012-06-15 14:51:50 -05:00
Rob Winch
5dd6b4a77a SEC-1865: Remove invalid OWASP link in TextEscapeUtils 2012-06-11 16:36:25 -05:00
Rob Winch
5118e0b86e SEC-1943: Corrected namespace doc to state SecurityContextHolderAwareRequestFilter instead of SecurityContextHolderAwareFilter 2012-03-20 19:22:54 -05:00
Rob Winch
21f2991ab4 Call SecurityContextHolder.clearContext() in tear down of HttpSessionSecurityContextRepositoryTests 2011-12-30 16:31:37 -06:00
Rob Winch
3679227b11 SEC-1735: Do not remove SecurityContext from HttpSession when anonymous Authentication is saved if original SecurityContext was anonymous 2011-12-30 16:31:31 -06:00
Rob Winch
25e17c1568 SEC-1881: Configure surefire to include **/*Test.class to avoid accidentally not running new tests that end in Test 2011-12-30 12:53:33 -06:00
Rob Winch
9847366d5e SEC-1881: Renamed **/*Test.java to **/*Tests.java since **/*Test.java are not included in surefire configuration
NOTE: Some tests no longer pass and thus are being ignored until SEC-1882 is fixed. This is still better than
the previous situation since before all the tests ending in Test.java were ignored and this ensures that most of
these tests will be ran with the build.
2011-12-30 12:46:41 -06:00
Rob Winch
7cb472f105 SEC-1880: Corrected error message when using both logout-success-url and success-handler-ref 2011-12-30 11:35:48 -06:00
Rob Winch
863b36962b SEC-1878: Added test to ensure that DefaultFilterChainValidator can handle web expressions 2011-12-28 16:24:48 -06:00
Rob Winch
bbfb3da9c7 Updated to maven-resources-plugin 2.4
This is to fix an error when using the latest m2e plugin that states: 'maven-resources-plugin prior to 2.4 is not supported by m2e'
2011-12-28 15:20:06 -06:00
Luke Taylor
b1af3d00ee SEC-1857: Use Principal.getName() in ContextPropagatingRemoteInvocation
This is a better option than using the toString() method
where the latter doesn't return the username. e.g when the
principal is a UserDetails.
2011-12-05 21:24:28 +00:00
Luke Taylor
daa7f3f64e SEC-1848: LDAP encode name when using user DN patterns in AbstractLdapAuthenticator. 2011-11-01 13:30:44 +00:00
Rob Winch
7a3135f0f9 SEC-1839: Updated preauth example to use </security:authentication-manager> instead of </security-authentication-manager> 2011-10-18 19:19:27 -05:00
Luke Taylor
82163e2546 Remove ancient code formatter artifacts. 2011-09-25 21:20:02 +01:00
Luke Taylor
2d27b28199 Set version to 3.0.8.CI-SNAPSHOT. 2011-09-05 23:04:06 +01:00
Luke Taylor
714ee3e960 Set version to 3.0.7.RELEASE. 3.0.7.RELEASE 2011-09-05 23:03:17 +01:00
Luke Taylor
ee74c4ced2 SEC-1803: Add check in AbstractAuthenticationTargetUrlRequestHandler for null targetUrlParameter before attempting to read it from the request. Prevents NPE when targetUrlParameter is not set. 2011-08-29 13:47:31 +01:00