Engineering · Common · Sitecore
Remove Sitecore users in bulk
Sometimes we need to clear out old users, or all users in a specific domain. We can do this from the Sitecore User Manager by removing them one by one, but with a large number of users that becomes tedious. Instead, we can remove Sitecore users in bulk with a PowerShell or SQL script.
A PowerShell script should be the first choice:
Get-User -Filter * | Where-Object {$_.Profile.Email -like "*@gmail.com"} | Remove-User
A SQL script is the second option:
Select UserId Into #TempUserList
From [www-s9-uat7-xp1_Core].[dbo].[aspnet_Membership]
Where Email Like '%@gmail.com'
Delete From [www-s9-uat7-xp1_Core].[dbo].[aspnet_UsersInRoles]
Where UserId in (Select UserId From #TempUserList)
Delete From [www-s9-uat7-xp1_Core].[dbo].[aspnet_Membership]
Where UserId in (Select UserId From #TempUserList)
Delete From [www-s9-uat7-xp1_Core].[dbo].[aspnet_PersonalizationPerUser]
Where UserId in (Select UserId From #TempUserList)
Delete From [www-s9-uat7-xp1_Core].[dbo].[aspnet_Profile]
Where UserId in (Select UserId From #TempUserList)
Delete FROM [www-s9-uat7-xp1_Core].[dbo].[aspnet_Users]
Where UserId in (Select UserId From #TempUserList)