Browse Source

SEC-1792: Fixed NullPointerException in RunAsUserToken#toString()

3.0.x
Rob Winch 15 years ago
parent
commit
84031c6001
  1. 3
      core/src/main/java/org/springframework/security/access/intercept/RunAsUserToken.java
  2. 10
      core/src/test/java/org/springframework/security/access/intercept/RunAsUserTokenTests.java

3
core/src/main/java/org/springframework/security/access/intercept/RunAsUserToken.java

@ -73,7 +73,8 @@ public class RunAsUserToken extends AbstractAuthenticationToken { @@ -73,7 +73,8 @@ public class RunAsUserToken extends AbstractAuthenticationToken {
public String toString() {
StringBuilder sb = new StringBuilder(super.toString());
sb.append("; Original Class: ").append(this.originalAuthentication.getName());
String className = this.originalAuthentication == null ? null : this.originalAuthentication.getName();
sb.append("; Original Class: ").append(className);
return sb.toString();
}

10
core/src/test/java/org/springframework/security/access/intercept/RunAsUserTokenTests.java

@ -84,6 +84,14 @@ public class RunAsUserTokenTests extends TestCase { @@ -84,6 +84,14 @@ public class RunAsUserTokenTests extends TestCase {
RunAsUserToken token = new RunAsUserToken("my_password", "Test", "Password",
new GrantedAuthority[] {new GrantedAuthorityImpl("ROLE_ONE"), new GrantedAuthorityImpl("ROLE_TWO")},
UsernamePasswordAuthenticationToken.class);
assertTrue(token.toString().lastIndexOf("Original Class:") != -1);
assertTrue(token.toString().lastIndexOf("Original Class: "+UsernamePasswordAuthenticationToken.class.getName().toString()) != -1);
}
// SEC-1792
public void testToStringNullOriginalAuthentication() {
RunAsUserToken token = new RunAsUserToken("my_password", "Test", "Password",
new GrantedAuthority[] {new GrantedAuthorityImpl("ROLE_ONE"), new GrantedAuthorityImpl("ROLE_TWO")},
null);
assertTrue(token.toString().lastIndexOf("Original Class: null") != -1);
}
}

Loading…
Cancel
Save