diff --git a/src/main/java/org/nrg/xnat/restlet/services/AliasTokenRestlet.java b/src/main/java/org/nrg/xnat/restlet/services/AliasTokenRestlet.java index 17206c71c0dfd8ba1d926ccf6160bb12ced27597..60c0d869e7c75b0ae6dc779675ced17e429a81d9 100644 --- a/src/main/java/org/nrg/xnat/restlet/services/AliasTokenRestlet.java +++ b/src/main/java/org/nrg/xnat/restlet/services/AliasTokenRestlet.java @@ -30,6 +30,7 @@ import org.restlet.resource.StringRepresentation; import org.restlet.resource.Variant; import java.io.IOException; +import java.text.SimpleDateFormat; import java.util.HashMap; import java.util.Map; @@ -93,13 +94,14 @@ public class AliasTokenRestlet extends SecureResource { Map<String, String> map = Maps.newHashMap(); map.put("alias", token.getAlias()); map.put("secret", token.getSecret()); - String value = ""; + if (token.getEstimatedExpirationTime() != null) { + map.put("estimatedExpirationTime", FORMATTER.format(token.getEstimatedExpirationTime())); + } try { - value = _serializer.toJson(map); - } catch (IOException e) { - // + return _serializer.toJson(map); + } catch (IOException ignored) { + return ""; } - return value; } @Override @@ -114,7 +116,8 @@ public class AliasTokenRestlet extends SecureResource { return _service; } - private static final int INVALID = -1; + private static final SimpleDateFormat FORMATTER = new SimpleDateFormat("yyyyMMdd_HHmmss"); + private final SerializerService _serializer; private AliasTokenService _service; private String _operation; diff --git a/src/main/java/org/nrg/xnat/security/XnatAuthenticationFilter.java b/src/main/java/org/nrg/xnat/security/XnatAuthenticationFilter.java index ae2d1c99ffc0ba2aeaac25f3af944a854e43e718..e005f2389b941cf9aa1cb405645c5567ddcc6c42 100644 --- a/src/main/java/org/nrg/xnat/security/XnatAuthenticationFilter.java +++ b/src/main/java/org/nrg/xnat/security/XnatAuthenticationFilter.java @@ -120,7 +120,7 @@ public class XnatAuthenticationFilter extends UsernamePasswordAuthenticationFilt try { AccessLogger.LogServiceAccess(username, AccessLogger.GetRequestIp(request), "Authentication", "SUCCESS"); - Authentication auth = getAuthenticationManager().authenticate(authRequest); + Authentication auth = getAuthenticationManager().authenticate(authRequest); //Fixed XNAT-4409 by adding a check for a par parameter on login. If a PAR is present and valid, then grant the user that just logged in the appropriate project permissions. if(StringUtils.isNotBlank(request.getParameter("par"))){