|
@@ -29,10 +29,7 @@ import org.springframework.security.core.AuthenticationException;
|
|
|
import org.springframework.security.core.GrantedAuthority;
|
|
|
import org.springframework.security.core.authority.AuthorityUtils;
|
|
|
import org.springframework.security.core.authority.GrantedAuthorityImpl;
|
|
|
-import org.springframework.security.core.userdetails.User;
|
|
|
-import org.springframework.security.core.userdetails.UserDetails;
|
|
|
-import org.springframework.security.core.userdetails.UserDetailsService;
|
|
|
-
|
|
|
+import org.springframework.security.core.userdetails.*;
|
|
|
|
|
|
|
|
|
import java.util.HashMap;
|
|
@@ -77,7 +74,7 @@ public class CasAuthenticationProviderTests {
|
|
|
@Test
|
|
|
public void statefulAuthenticationIsSuccessful() throws Exception {
|
|
|
CasAuthenticationProvider cap = new CasAuthenticationProvider();
|
|
|
- cap.setUserDetailsService(new MockAuthoritiesPopulator());
|
|
|
+ cap.setAuthenticationUserDetailsService(new MockAuthoritiesPopulator());
|
|
|
cap.setKey("qwerty");
|
|
|
|
|
|
StatelessTicketCache cache = new MockStatelessTicketCache();
|
|
@@ -119,7 +116,7 @@ public class CasAuthenticationProviderTests {
|
|
|
@Test
|
|
|
public void statelessAuthenticationIsSuccessful() throws Exception {
|
|
|
CasAuthenticationProvider cap = new CasAuthenticationProvider();
|
|
|
- cap.setUserDetailsService(new MockAuthoritiesPopulator());
|
|
|
+ cap.setAuthenticationUserDetailsService(new MockAuthoritiesPopulator());
|
|
|
cap.setKey("qwerty");
|
|
|
|
|
|
StatelessTicketCache cache = new MockStatelessTicketCache();
|
|
@@ -158,7 +155,7 @@ public class CasAuthenticationProviderTests {
|
|
|
@Test(expected = BadCredentialsException.class)
|
|
|
public void missingTicketIdIsDetected() throws Exception {
|
|
|
CasAuthenticationProvider cap = new CasAuthenticationProvider();
|
|
|
- cap.setUserDetailsService(new MockAuthoritiesPopulator());
|
|
|
+ cap.setAuthenticationUserDetailsService(new MockAuthoritiesPopulator());
|
|
|
cap.setKey("qwerty");
|
|
|
|
|
|
StatelessTicketCache cache = new MockStatelessTicketCache();
|
|
@@ -177,7 +174,7 @@ public class CasAuthenticationProviderTests {
|
|
|
public void invalidKeyIsDetected() throws Exception {
|
|
|
final Assertion assertion = new AssertionImpl("test");
|
|
|
CasAuthenticationProvider cap = new CasAuthenticationProvider();
|
|
|
- cap.setUserDetailsService(new MockAuthoritiesPopulator());
|
|
|
+ cap.setAuthenticationUserDetailsService(new MockAuthoritiesPopulator());
|
|
|
cap.setKey("qwerty");
|
|
|
|
|
|
StatelessTicketCache cache = new MockStatelessTicketCache();
|
|
@@ -205,7 +202,7 @@ public class CasAuthenticationProviderTests {
|
|
|
@Test(expected = IllegalArgumentException.class)
|
|
|
public void detectsMissingKey() throws Exception {
|
|
|
CasAuthenticationProvider cap = new CasAuthenticationProvider();
|
|
|
- cap.setUserDetailsService(new MockAuthoritiesPopulator());
|
|
|
+ cap.setAuthenticationUserDetailsService(new MockAuthoritiesPopulator());
|
|
|
cap.setStatelessTicketCache(new MockStatelessTicketCache());
|
|
|
cap.setTicketValidator(new MockTicketValidator(true));
|
|
|
cap.setServiceProperties(makeServiceProperties());
|
|
@@ -217,7 +214,7 @@ public class CasAuthenticationProviderTests {
|
|
|
CasAuthenticationProvider cap = new CasAuthenticationProvider();
|
|
|
// set this explicitly to null to test failure
|
|
|
cap.setStatelessTicketCache(null);
|
|
|
- cap.setUserDetailsService(new MockAuthoritiesPopulator());
|
|
|
+ cap.setAuthenticationUserDetailsService(new MockAuthoritiesPopulator());
|
|
|
cap.setKey("qwerty");
|
|
|
cap.setTicketValidator(new MockTicketValidator(true));
|
|
|
cap.setServiceProperties(makeServiceProperties());
|
|
@@ -227,7 +224,7 @@ public class CasAuthenticationProviderTests {
|
|
|
@Test(expected = IllegalArgumentException.class)
|
|
|
public void detectsMissingTicketValidator() throws Exception {
|
|
|
CasAuthenticationProvider cap = new CasAuthenticationProvider();
|
|
|
- cap.setUserDetailsService(new MockAuthoritiesPopulator());
|
|
|
+ cap.setAuthenticationUserDetailsService(new MockAuthoritiesPopulator());
|
|
|
cap.setKey("qwerty");
|
|
|
cap.setStatelessTicketCache(new MockStatelessTicketCache());
|
|
|
cap.setServiceProperties(makeServiceProperties());
|
|
@@ -237,14 +234,15 @@ public class CasAuthenticationProviderTests {
|
|
|
@Test
|
|
|
public void gettersAndSettersMatch() throws Exception {
|
|
|
CasAuthenticationProvider cap = new CasAuthenticationProvider();
|
|
|
- cap.setUserDetailsService(new MockAuthoritiesPopulator());
|
|
|
+ cap.setAuthenticationUserDetailsService(new MockAuthoritiesPopulator());
|
|
|
cap.setKey("qwerty");
|
|
|
cap.setStatelessTicketCache(new MockStatelessTicketCache());
|
|
|
cap.setTicketValidator(new MockTicketValidator(true));
|
|
|
cap.setServiceProperties(makeServiceProperties());
|
|
|
cap.afterPropertiesSet();
|
|
|
|
|
|
- assertTrue(cap.getUserDetailsService() != null);
|
|
|
+// TODO disabled because why do we need to expose this?
|
|
|
+// assertTrue(cap.getUserDetailsService() != null);
|
|
|
assertEquals("qwerty", cap.getKey());
|
|
|
assertTrue(cap.getStatelessTicketCache() != null);
|
|
|
assertTrue(cap.getTicketValidator() != null);
|
|
@@ -253,7 +251,7 @@ public class CasAuthenticationProviderTests {
|
|
|
@Test
|
|
|
public void ignoresClassesItDoesNotSupport() throws Exception {
|
|
|
CasAuthenticationProvider cap = new CasAuthenticationProvider();
|
|
|
- cap.setUserDetailsService(new MockAuthoritiesPopulator());
|
|
|
+ cap.setAuthenticationUserDetailsService(new MockAuthoritiesPopulator());
|
|
|
cap.setKey("qwerty");
|
|
|
cap.setStatelessTicketCache(new MockStatelessTicketCache());
|
|
|
cap.setTicketValidator(new MockTicketValidator(true));
|
|
@@ -271,7 +269,7 @@ public class CasAuthenticationProviderTests {
|
|
|
@Test
|
|
|
public void ignoresUsernamePasswordAuthenticationTokensWithoutCasIdentifiersAsPrincipal() throws Exception {
|
|
|
CasAuthenticationProvider cap = new CasAuthenticationProvider();
|
|
|
- cap.setUserDetailsService(new MockAuthoritiesPopulator());
|
|
|
+ cap.setAuthenticationUserDetailsService(new MockAuthoritiesPopulator());
|
|
|
cap.setKey("qwerty");
|
|
|
cap.setStatelessTicketCache(new MockStatelessTicketCache());
|
|
|
cap.setTicketValidator(new MockTicketValidator(true));
|
|
@@ -292,8 +290,9 @@ public class CasAuthenticationProviderTests {
|
|
|
|
|
|
//~ Inner Classes ==================================================================================================
|
|
|
|
|
|
- private class MockAuthoritiesPopulator implements UserDetailsService {
|
|
|
- public UserDetails loadUserByUsername(String casUserId) throws AuthenticationException {
|
|
|
+ private class MockAuthoritiesPopulator implements AuthenticationUserDetailsService {
|
|
|
+
|
|
|
+ public UserDetails loadUserDetails(final Authentication token) throws UsernameNotFoundException {
|
|
|
return makeUserDetailsFromAuthoritiesPopulator();
|
|
|
}
|
|
|
}
|