From 103bae000ab72a3be08d83d7aebcb41891551ea4 Mon Sep 17 00:00:00 2001 From: Sebastian Date: Mon, 11 Nov 2019 15:07:48 +0100 Subject: [PATCH] Fix user resolve to ignore invalid ids. --- .../src/Squidex.Domain.Users/DefaultUserResolver.cs | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/backend/src/Squidex.Domain.Users/DefaultUserResolver.cs b/backend/src/Squidex.Domain.Users/DefaultUserResolver.cs index 4e32d317a..97357cc60 100644 --- a/backend/src/Squidex.Domain.Users/DefaultUserResolver.cs +++ b/backend/src/Squidex.Domain.Users/DefaultUserResolver.cs @@ -29,6 +29,8 @@ namespace Squidex.Domain.Users public async Task CreateUserIfNotExists(string email, bool invited) { + Guard.NotNullOrEmpty(email); + using (var scope = serviceProvider.CreateScope()) { var userFactory = scope.ServiceProvider.GetRequiredService(); @@ -58,6 +60,8 @@ namespace Squidex.Domain.Users public async Task FindByIdOrEmailAsync(string idOrEmail) { + Guard.NotNullOrEmpty(idOrEmail); + using (var scope = serviceProvider.CreateScope()) { var userFactory = scope.ServiceProvider.GetRequiredService(); @@ -76,6 +80,8 @@ namespace Squidex.Domain.Users public async Task> QueryByEmailAsync(string email) { + Guard.NotNullOrEmpty(email); + using (var scope = serviceProvider.CreateScope()) { var userManager = scope.ServiceProvider.GetRequiredService>(); @@ -88,9 +94,14 @@ namespace Squidex.Domain.Users public async Task> QueryManyAsync(string[] ids) { + Guard.NotNull(ids); + using (var scope = serviceProvider.CreateScope()) { var userManager = scope.ServiceProvider.GetRequiredService>(); + var userFactory = scope.ServiceProvider.GetRequiredService(); + + ids = ids.Where(x => userFactory.IsId(x)).ToArray(); var result = await userManager.QueryByIdsAync(ids);