diff --git a/src/main/java/org/olat/admin/user/imp/UserImportController.java b/src/main/java/org/olat/admin/user/imp/UserImportController.java
index e293f003f6c6ae5ba8f5c96d66a316b9b27f7a39..61f0598e7d317f8a9f81014817f2cfbab86ad3ea 100644
--- a/src/main/java/org/olat/admin/user/imp/UserImportController.java
+++ b/src/main/java/org/olat/admin/user/imp/UserImportController.java
@@ -341,7 +341,7 @@ public class UserImportController extends BasicController {
 			}
 		}
 
-		List<Identity> nextIds = securityManager.findIdentitiesByName(usernames);
+		List<Identity> nextIds = securityManager.findIdentitiesByNameCaseInsensitive(usernames);
 		identities.addAll(nextIds);
 		return identities;
 	}
diff --git a/src/main/java/org/olat/basesecurity/BaseSecurity.java b/src/main/java/org/olat/basesecurity/BaseSecurity.java
index 24ffbd3647b2514e011ef2bd8aeac98f7f7b3b81..880ba14c163fbb83c359e72c9e6b7cbe95e2e4d7 100644
--- a/src/main/java/org/olat/basesecurity/BaseSecurity.java
+++ b/src/main/java/org/olat/basesecurity/BaseSecurity.java
@@ -160,6 +160,8 @@ public interface BaseSecurity {
 	public Identity findIdentityByNameCaseInsensitive(String identityName);
 	
 	public List<Identity> findIdentitiesByName(Collection<String> identityName);
+	
+	public List<Identity> findIdentitiesByNameCaseInsensitive(Collection<String> identityNames);
 
 	/**
 	 * Find an identity by student/institutionalnumber (i.e., Matrikelnummer), using the getIdentititesByPowerSearch() method.
diff --git a/src/main/java/org/olat/basesecurity/BaseSecurityManager.java b/src/main/java/org/olat/basesecurity/BaseSecurityManager.java
index bdca01a9d1b9a51159e3ff56678f0527ec9ec0a6..354f1ed1bb39abae7c3e315ae8a82b2368347cd9 100644
--- a/src/main/java/org/olat/basesecurity/BaseSecurityManager.java
+++ b/src/main/java/org/olat/basesecurity/BaseSecurityManager.java
@@ -33,6 +33,7 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Locale;
 import java.util.Map;
+import java.util.stream.Collectors;
 
 import javax.persistence.EntityNotFoundException;
 import javax.persistence.LockModeType;
@@ -1020,6 +1021,26 @@ public class BaseSecurityManager implements BaseSecurity {
 				.getResultList();
 		return identities;
 	}
+	
+	
+
+	@Override
+	public List<Identity> findIdentitiesByNameCaseInsensitive(Collection<String> identityNames) {
+		if (identityNames == null || identityNames.isEmpty()) return Collections.emptyList();
+
+		StringBuilder sb = new StringBuilder();
+		sb.append("select ident from ").append(IdentityImpl.class.getName()).append(" as ident")
+		  .append(" inner join fetch ident.user user")
+		  .append(" where lower(ident.name) in (:usernames)");
+		
+		List<String> loweredIdentityNames = identityNames.stream()
+				.map(id -> id.toLowerCase()).collect(Collectors.toList());
+
+		return dbInstance.getCurrentEntityManager()
+				.createQuery(sb.toString(), Identity.class)
+				.setParameter("usernames", loweredIdentityNames)
+				.getResultList();
+	}
 
 	@Override
 	public Identity findIdentityByUser(User user) {
diff --git a/src/main/java/org/olat/course/member/wizard/ImportMemberOverviewIdentitiesController.java b/src/main/java/org/olat/course/member/wizard/ImportMemberOverviewIdentitiesController.java
index 08adfaef971f5edbcab74132e43a8b2617819561..2249ce0eff809757ef4b47323a81facff24d1351 100644
--- a/src/main/java/org/olat/course/member/wizard/ImportMemberOverviewIdentitiesController.java
+++ b/src/main/java/org/olat/course/member/wizard/ImportMemberOverviewIdentitiesController.java
@@ -179,7 +179,7 @@ public class ImportMemberOverviewIdentitiesController extends StepFormBasicContr
 			identListLowercase.add(ident.toLowerCase());
 		}
 		//search by names, must be lower case
-		List<Identity> identities = securityManager.findIdentitiesByName(identListLowercase);
+		List<Identity> identities = securityManager.findIdentitiesByNameCaseInsensitive(identListLowercase);
 		for(Identity identity:identities) {
 			identListLowercase.remove(identity.getName().toLowerCase());
 			if (!PersistenceHelper.containsPersistable(oks, identity)
diff --git a/src/main/java/org/olat/modules/portfolio/ui/wizard/MembersOverviewIdentitiesController.java b/src/main/java/org/olat/modules/portfolio/ui/wizard/MembersOverviewIdentitiesController.java
index ca5f14b721b5fc159e7391ae9d98d7fe910c3aa1..104e74b5e05076fa0b70b777e0ebbf22300274d6 100644
--- a/src/main/java/org/olat/modules/portfolio/ui/wizard/MembersOverviewIdentitiesController.java
+++ b/src/main/java/org/olat/modules/portfolio/ui/wizard/MembersOverviewIdentitiesController.java
@@ -183,7 +183,7 @@ public class MembersOverviewIdentitiesController extends StepFormBasicController
 			identListLowercase.add(ident.toLowerCase());
 		}
 		//search by names, must be lower case
-		List<Identity> identities = securityManager.findIdentitiesByName(identListLowercase);
+		List<Identity> identities = securityManager.findIdentitiesByNameCaseInsensitive(identListLowercase);
 		for(Identity identity:identities) {
 			identListLowercase.remove(identity.getName().toLowerCase());
 			if (!PersistenceHelper.containsPersistable(oks, identity)
diff --git a/src/test/java/org/olat/basesecurity/BaseSecurityManagerTest.java b/src/test/java/org/olat/basesecurity/BaseSecurityManagerTest.java
index dab7c58a5f3b39527e190e71bdf453d6aefd33e0..29da0e6978915fc625838495f82fc5e8c19dc60b 100644
--- a/src/test/java/org/olat/basesecurity/BaseSecurityManagerTest.java
+++ b/src/test/java/org/olat/basesecurity/BaseSecurityManagerTest.java
@@ -221,6 +221,31 @@ public class BaseSecurityManagerTest extends OlatTestCase {
 		Assert.assertTrue(foundIds.contains(id2));
 	}
 	
+	@Test
+	public void findIdentityByNamesCaseInsensitive() {
+		//create a user it
+		String username1 = "fINd-ME-4-" + UUID.randomUUID();
+		Identity id1 = JunitTestHelper.createAndPersistIdentityAsUser(username1);
+		String username2 = "fINd-ME-5-" + UUID.randomUUID();
+		Identity id2 = JunitTestHelper.createAndPersistIdentityAsUser(username2);
+		Assert.assertNotNull(id1);
+		Assert.assertEquals(username1, id1.getName());
+		Assert.assertNotNull(id2);
+		Assert.assertEquals(username2, id2.getName());
+		dbInstance.commitAndCloseSession();
+		
+		List<String> names = new ArrayList<String>(2);
+		names.add(username1);
+		names.add(username2);
+		
+		//find it
+		List<Identity> foundIds = securityManager.findIdentitiesByNameCaseInsensitive(names);
+		Assert.assertNotNull(foundIds);
+		Assert.assertEquals(2, foundIds.size());
+		Assert.assertTrue(foundIds.contains(id1));
+		Assert.assertTrue(foundIds.contains(id2));
+	}
+	
 	@Test
 	public void loadIdentityShortByKey() {
 		//create a user it