浏览代码

SEC-474: Gracefully abort if username and password non-retrievable.

Ben Alex 18 年之前
父节点
当前提交
a18bd9100c
共有 1 个文件被更改,包括 5 次插入0 次删除
  1. 5 0
      core/src/main/java/org/acegisecurity/ui/rememberme/TokenBasedRememberMeServices.java

+ 5 - 0
core/src/main/java/org/acegisecurity/ui/rememberme/TokenBasedRememberMeServices.java

@@ -285,6 +285,11 @@ public class TokenBasedRememberMeServices implements RememberMeServices, Initial
             username = successfulAuthentication.getPrincipal().toString();
             password = successfulAuthentication.getCredentials().toString();
         }
+        
+        // If unable to find a username and password, just abort as TokenBasedRememberMeServices unable to construct a valid token in this case
+        if (!StringUtils.hasLength(username) || !StringUtils.hasLength(password)) {
+        	return;
+        }
 
         Assert.hasLength(username);
         Assert.hasLength(password);