diff --git a/src/com/google/enterprise/adaptor/sharepoint/SharePointUserProfileAdaptor.java b/src/com/google/enterprise/adaptor/sharepoint/SharePointUserProfileAdaptor.java
index 9ea7e3e..92360d4 100644
--- a/src/com/google/enterprise/adaptor/sharepoint/SharePointUserProfileAdaptor.java
+++ b/src/com/google/enterprise/adaptor/sharepoint/SharePointUserProfileAdaptor.java
@@ -454,7 +454,7 @@
         List<GroupPrincipal> permitGroups = new ArrayList<GroupPrincipal>();
         permitGroups.add(
             new GroupPrincipal("NT AUTHORITY\\Authenticated Users"));
-        response.setAcl(new Acl.Builder()
+        response.setAcl(new Acl.Builder().setEverythingCaseInsensitive()
             .setInheritanceType(Acl.InheritanceType.LEAF_NODE)
             .setPermitGroups(permitGroups).build());
       }
diff --git a/test/com/google/enterprise/adaptor/sharepoint/SharePointUserProfileAdaptorTest.java b/test/com/google/enterprise/adaptor/sharepoint/SharePointUserProfileAdaptorTest.java
index cee6435..3f04b9a 100644
--- a/test/com/google/enterprise/adaptor/sharepoint/SharePointUserProfileAdaptorTest.java
+++ b/test/com/google/enterprise/adaptor/sharepoint/SharePointUserProfileAdaptorTest.java
@@ -1,5 +1,6 @@
 package com.google.enterprise.adaptor.sharepoint;
 
+import com.google.enterprise.adaptor.Acl;
 import static org.junit.Assert.*;
 
 
@@ -230,14 +231,13 @@
 
 
     //ACL Verification
-    assertNotNull(response.getAcl());
-    assertNotNull(response.getAcl().getPermitGroups());
-    assertEquals(1, response.getAcl().getPermitGroups().size());
-    assertTrue(response.getAcl().getPermitGroups().contains(
-        new GroupPrincipal("NT AUTHORITY\\Authenticated Users")));
-    assertTrue(response.getAcl().getPermitUsers().isEmpty());
-    assertTrue(response.getAcl().getDenyGroups().isEmpty());
-    assertTrue(response.getAcl().getDenyUsers().isEmpty());
+    List<GroupPrincipal> groups = new ArrayList<GroupPrincipal>();
+    groups.add(new GroupPrincipal("NT AUTHORITY\\Authenticated Users"));
+    assertEquals(new Acl.Builder()
+        .setEverythingCaseInsensitive()
+        .setInheritanceType(Acl.InheritanceType.LEAF_NODE)
+        .setPermitGroups(groups).build(),
+        response.getAcl());
   }
 
   @Test
