diff --git a/uw-spring-security-core/src/main/java/edu/wisc/uwss/uds/UdsPersonUserDetailsServiceImpl.java b/uw-spring-security-core/src/main/java/edu/wisc/uwss/uds/UdsPersonUserDetailsServiceImpl.java
index 285c7ef64ac4844f3fabb1972a6843489113b648..1b152ec735211a4db8a8ea4245fb02428b08cb18 100644
--- a/uw-spring-security-core/src/main/java/edu/wisc/uwss/uds/UdsPersonUserDetailsServiceImpl.java
+++ b/uw-spring-security-core/src/main/java/edu/wisc/uwss/uds/UdsPersonUserDetailsServiceImpl.java
@@ -25,9 +25,18 @@ import edu.wisc.uwss.UWUserDetails;
  */
 public class UdsPersonUserDetailsServiceImpl implements UserDetailsService{
   
-  @Autowired UdsPersonService personService;
-  @Autowired(required=false) IdentifiersFactory identifiersFactory = new IdentifiersFactory.NetID();
+  protected UdsPersonService personService;
+  protected IdentifiersFactory identifiersFactory = new IdentifiersFactory.NetID();
 
+  @Autowired
+  public UdsPersonUserDetailsServiceImpl(UdsPersonService personService) {
+    this(personService, new IdentifiersFactory.NetID());
+  }
+  @Autowired(required=false)
+  public UdsPersonUserDetailsServiceImpl(UdsPersonService personService, IdentifiersFactory identifiersFactory) {
+    this.personService = personService;
+    this.identifiersFactory = identifiersFactory;
+  }
   @Override
   public UWUserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
     Identifiers identifiers = identifiersFactory.withValue(username);
diff --git a/uw-spring-security-core/src/test/java/edu/wisc/uwss/UWUserDetailsImplTest.java b/uw-spring-security-core/src/test/java/edu/wisc/uwss/UWUserDetailsImplTest.java
index b32e9f680716843af5c741f1e4570cca81e6771a..77f26aa750682b54f8aa5ff12d7bb13f93037470 100644
--- a/uw-spring-security-core/src/test/java/edu/wisc/uwss/UWUserDetailsImplTest.java
+++ b/uw-spring-security-core/src/test/java/edu/wisc/uwss/UWUserDetailsImplTest.java
@@ -83,4 +83,9 @@ public class UWUserDetailsImplTest {
     assertEquals(lower.getEmailAddress(), upper.getEmailAddress());
     assertEquals(lower.getEmailAddressHash(), upper.getEmailAddressHash());
   }
+
+  @Test
+  public void newInstance_success() {
+    UWUserDetailsImpl instance = UWUserDetailsImpl.newInstance("UW123A123", "bucky", "", "Bucky Badger", "bucky.badger@wisc.edu", Collections.<String>emptyList(), Collections.<String>emptyList());
+  }
 }