From e589f608c0ff5ffe3d761c2e31fc976f8e63d8b9 Mon Sep 17 00:00:00 2001 From: Amanda Anganes Date: Tue, 30 Jul 2013 11:33:15 -0400 Subject: [PATCH] Do not expire registration tokens --- .../impl/DefaultOAuth2ProviderTokenService.java | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/openid-connect-server/src/main/java/org/mitre/oauth2/service/impl/DefaultOAuth2ProviderTokenService.java b/openid-connect-server/src/main/java/org/mitre/oauth2/service/impl/DefaultOAuth2ProviderTokenService.java index c92eecddb..fa613e24c 100644 --- a/openid-connect-server/src/main/java/org/mitre/oauth2/service/impl/DefaultOAuth2ProviderTokenService.java +++ b/openid-connect-server/src/main/java/org/mitre/oauth2/service/impl/DefaultOAuth2ProviderTokenService.java @@ -134,10 +134,12 @@ public class DefaultOAuth2ProviderTokenService implements OAuth2TokenEntityServi Set scopes = Sets.newHashSet(clientAuth.getScope()); token.setScope(scopes); - // make it expire if necessary - if (client.getAccessTokenValiditySeconds() != null && client.getAccessTokenValiditySeconds() > 0) { - Date expiration = new Date(System.currentTimeMillis() + (client.getAccessTokenValiditySeconds() * 1000L)); - token.setExpiration(expiration); + // make it expire if necessary - exclude Registration Tokens as these should always be long-lived + if (!scopes.contains(OAuth2AccessTokenEntity.REGISTRATION_TOKEN_SCOPE)) { + if (client.getAccessTokenValiditySeconds() != null && client.getAccessTokenValiditySeconds() > 0) { + Date expiration = new Date(System.currentTimeMillis() + (client.getAccessTokenValiditySeconds() * 1000L)); + token.setExpiration(expiration); + } } // attach the authorization so that we can look it up later