mirror of
https://github.com/spring-projects/spring-security.git
synced 2025-06-27 14:22:47 +00:00
SEC-822: Converted to long arithmetic to prevent integer overflowing with long token validity periods
This commit is contained in:
parent
301d021bf5
commit
883b92e7bd
@ -152,7 +152,7 @@ public class TokenBasedRememberMeServices extends AbstractRememberMeServices {
|
|||||||
}
|
}
|
||||||
|
|
||||||
int tokenLifetime = calculateLoginLifetime(request, successfulAuthentication);
|
int tokenLifetime = calculateLoginLifetime(request, successfulAuthentication);
|
||||||
long expiryTime = System.currentTimeMillis() + 1000*tokenLifetime;
|
long expiryTime = System.currentTimeMillis() + 1000L*tokenLifetime;
|
||||||
|
|
||||||
String signatureValue = makeTokenSignature(expiryTime, username, password);
|
String signatureValue = makeTokenSignature(expiryTime, username, password);
|
||||||
|
|
||||||
|
@ -342,6 +342,8 @@ public class TokenBasedRememberMeServicesTests extends TestCase {
|
|||||||
|
|
||||||
public void testLoginSuccessNormalWithNonUserDetailsBasedPrincipal() {
|
public void testLoginSuccessNormalWithNonUserDetailsBasedPrincipal() {
|
||||||
TokenBasedRememberMeServices services = new TokenBasedRememberMeServices();
|
TokenBasedRememberMeServices services = new TokenBasedRememberMeServices();
|
||||||
|
// SEC-822
|
||||||
|
services.setTokenValiditySeconds(5000000);
|
||||||
MockHttpServletRequest request = new MockHttpServletRequest();
|
MockHttpServletRequest request = new MockHttpServletRequest();
|
||||||
request.setRequestURI("d");
|
request.setRequestURI("d");
|
||||||
request.addParameter(TokenBasedRememberMeServices.DEFAULT_PARAMETER, "true");
|
request.addParameter(TokenBasedRememberMeServices.DEFAULT_PARAMETER, "true");
|
||||||
|
Loading…
x
Reference in New Issue
Block a user