diff --git a/uw-spring-security-core/src/main/java/edu/wisc/uwss/UWUserDetailsImpl.java b/uw-spring-security-core/src/main/java/edu/wisc/uwss/UWUserDetailsImpl.java
index 1a938385b23e82aeeb743e41f93bb5ac53c00aca..d51dd722f517d04108e37c88f267b4885f0429bc 100644
--- a/uw-spring-security-core/src/main/java/edu/wisc/uwss/UWUserDetailsImpl.java
+++ b/uw-spring-security-core/src/main/java/edu/wisc/uwss/UWUserDetailsImpl.java
@@ -168,7 +168,6 @@ public class UWUserDetailsImpl extends User implements UWUserDetails, HasModifia
   public void setIsisEmplid(String isisEmplid) {
     this.isisEmplid = isisEmplid;
   }
-
   /**
    * {@inheritDoc}
    * 
@@ -221,8 +220,9 @@ public class UWUserDetailsImpl extends User implements UWUserDetails, HasModifia
   /**
    * @param firstName the firstName to set
    */
-  public void setFirstName(String firstName) {
+  public UWUserDetailsImpl setFirstName(String firstName) {
     this.firstName = firstName;
+    return this;
   }
   /**
    * @return the lastName
@@ -233,8 +233,9 @@ public class UWUserDetailsImpl extends User implements UWUserDetails, HasModifia
   /**
    * @param lastName the lastName to set
    */
-  public void setLastName(String lastName) {
+  public UWUserDetailsImpl setLastName(String lastName) {
     this.lastName = lastName;
+    return this;
   }
 
 }
diff --git a/uw-spring-security-core/src/main/java/edu/wisc/uwss/local/LocalUserDetailsAttributesMapper.java b/uw-spring-security-core/src/main/java/edu/wisc/uwss/local/LocalUserDetailsAttributesMapper.java
index 76b8e22c24f322f66985757eb3a136fe85961e4c..db33acb8ca0dec3febf7d977069fd6220928c49c 100644
--- a/uw-spring-security-core/src/main/java/edu/wisc/uwss/local/LocalUserDetailsAttributesMapper.java
+++ b/uw-spring-security-core/src/main/java/edu/wisc/uwss/local/LocalUserDetailsAttributesMapper.java
@@ -40,22 +40,28 @@ public interface LocalUserDetailsAttributesMapper {
      * 
      * The format of the properties is as follows (key=value):
      * <pre>
-     * username=password,fullName,emailAddress[,membership1,[membership2...]]
+     * username=password,fullName,firstName,lastName,emailAddress[,membership1,[membership2...]]
      * </pre>
      * 
      * Membership can be 1 or more UDDS values, comma separated.
      */
     @Override
     public UWUserDetails mapUser(String username, String[] values) {
-      if(values.length > 4) {
-        String[] uddsValues = Arrays.copyOfRange(values, 4, values.length);
+      if(values.length > 6) {
+        String[] uddsValues = Arrays.copyOfRange(values, 6, values.length);
         List<String> membership = new ArrayList<>();
         for(String v : uddsValues) {
           membership.add(v); 
         }
-        return new UWUserDetailsImpl(values[1], username, values[0], values[2], values[3], membership);
+        // pvi, username, password, email,
+        return new UWUserDetailsImpl(values[1], username, values[0], values[2], values[5], membership)
+                .setFirstName(values[3])
+                .setLastName(values[4]);
       } else {
-        return new UWUserDetailsImpl(values[1], username, values[0], values[2], values[3]);
+        // String pvi, String username, String password, String fullName, String emailAddress
+        return new UWUserDetailsImpl(values[1], username, values[0], values[2], values[5])
+                .setFirstName(values[3])
+                .setLastName(values[4]);
       }
     }
     
diff --git a/uw-spring-security-core/src/main/java/edu/wisc/uwss/local/LocalUsersUdsPersonServiceImpl.java b/uw-spring-security-core/src/main/java/edu/wisc/uwss/local/LocalUsersUdsPersonServiceImpl.java
index beca7f305f13b6f4e731e09141792873afebc141..5731b0fdb408dba55674511eaad146421b08261f 100644
--- a/uw-spring-security-core/src/main/java/edu/wisc/uwss/local/LocalUsersUdsPersonServiceImpl.java
+++ b/uw-spring-security-core/src/main/java/edu/wisc/uwss/local/LocalUsersUdsPersonServiceImpl.java
@@ -50,6 +50,8 @@ public class LocalUsersUdsPersonServiceImpl implements UdsPersonService {
         Demographic demographic = new Demographic();
         demographic.setEmail(userDetails.getEmailAddress());
         Name name = new Name();
+        name.setFirst(userDetails.getFirstName());
+        name.setLast(userDetails.getLastName());
         name.setFull(userDetails.getFullName());
         demographic.setName(name);
 
diff --git a/uw-spring-security-core/src/main/resources/edu/wisc/uwss/local/local-users.properties b/uw-spring-security-core/src/main/resources/edu/wisc/uwss/local/local-users.properties
index 1cfe4e5ed7580f3f68ec2f7b9ff10eea1bbad841..8df9dbe5f6514be10e820fcf4da4ab85b10a9e21 100644
--- a/uw-spring-security-core/src/main/resources/edu/wisc/uwss/local/local-users.properties
+++ b/uw-spring-security-core/src/main/resources/edu/wisc/uwss/local/local-users.properties
@@ -1,4 +1,4 @@
-admin=admin,UW000A000,Amy Administrator,amy.administrator@demo.wisc.edu,A535900
-jane=jane,UW000A001,Jane Doe,jane.doe@demo.wisc.edu,A535005
-john=john,UW000A002,John Doe,john.doe@demo.wisc.edu,A535005
-jim=jim,UW000A003,Jim Doe,jim.doe@demo.wisc.edu
\ No newline at end of file
+admin=admin,UW000A000,Amy Administrator,Amy,Administrator,amy.administrator@demo.wisc.edu,A535900
+jane=jane,UW000A001,Jane Doe,Jane,Doe,jane.doe@demo.wisc.edu,A535005
+john=john,UW000A002,John Doe,John,Doe,john.doe@demo.wisc.edu,A535005
+jim=jim,UW000A003,Jim Doe,Jim,Doe,jim.doe@demo.wisc.edu
\ No newline at end of file
diff --git a/uw-spring-security-core/src/test/java/edu/wisc/uwss/local/LocalUserDetailsManagerImplTest.java b/uw-spring-security-core/src/test/java/edu/wisc/uwss/local/LocalUserDetailsManagerImplTest.java
index 904872ea1d795f1680a6920af30f21d2726b9ed1..b07c9e6d07efa3b0d31f85b7dee2e8da3e3bbfb5 100644
--- a/uw-spring-security-core/src/test/java/edu/wisc/uwss/local/LocalUserDetailsManagerImplTest.java
+++ b/uw-spring-security-core/src/test/java/edu/wisc/uwss/local/LocalUserDetailsManagerImplTest.java
@@ -94,7 +94,7 @@ public class LocalUserDetailsManagerImplTest {
   @Test
   public void init_demoUsers_with_no_udds_and_no_control() {
       Properties properties = new Properties();
-      properties.put("test", "test,UW000A000,Nothing,foo@foo.wisc.edu");
+      properties.put("test", "test,UW000A000,Nothing,Nothing,,foo@foo.wisc.edu");
       
       LocalUserDetailsManagerImpl service = new LocalUserDetailsManagerImpl();
       service.setDemoUsers(properties);
@@ -113,7 +113,7 @@ public class LocalUserDetailsManagerImplTest {
   @Test
   public void init_demoUsers_with_single_udds() {
       Properties properties = new Properties();
-      properties.put("test", "test,UW000A000,Single UDDS,foo@foo.wisc.edu,A061234");
+      properties.put("test", "test,UW000A000,Single UDDS,Single,UDDS,foo@foo.wisc.edu,A061234");
       
       LocalUserDetailsManagerImpl service = new LocalUserDetailsManagerImpl();
       service.setDemoUsers(properties);
@@ -132,7 +132,7 @@ public class LocalUserDetailsManagerImplTest {
   @Test
   public void setDemoUsers_with_multiple_udds() {
       Properties properties = new Properties();
-      properties.put("test", "test,UW000A000,Multiple UDDS,foo@foo.wisc.edu,A061234,A061235,A061236");
+      properties.put("test", "test,UW000A000,Multiple UDDS,Multiple,UDDS,foo@foo.wisc.edu,A061234,A061235,A061236");
       
       LocalUserDetailsManagerImpl service = new LocalUserDetailsManagerImpl();
       service.setDemoUsers(properties);