diff --git a/src/Squidex/Areas/IdentityServer/Config/IdentityServerExtensions.cs b/src/Squidex/Areas/IdentityServer/Config/IdentityServerExtensions.cs index 721c3f1d0..2686d027e 100644 --- a/src/Squidex/Areas/IdentityServer/Config/IdentityServerExtensions.cs +++ b/src/Squidex/Areas/IdentityServer/Config/IdentityServerExtensions.cs @@ -32,9 +32,16 @@ namespace Squidex.Areas.IdentityServer.Config public static IServiceProvider UseMyAdminRole(this IServiceProvider services) { var roleManager = services.GetRequiredService>(); - var roleFactory = services.GetRequiredService(); - roleManager.CreateAsync(roleFactory.Create(SquidexRoles.Administrator)).Wait(); + Task.Run(async () => + { + if (!await roleManager.RoleExistsAsync(SquidexRoles.Administrator)) + { + var role = services.GetRequiredService().Create(SquidexRoles.Administrator); + + await roleManager.CreateAsync(role); + } + }).Wait(); return services; } diff --git a/src/Squidex/Squidex.csproj b/src/Squidex/Squidex.csproj index 692b20555..af29f0cc4 100644 --- a/src/Squidex/Squidex.csproj +++ b/src/Squidex/Squidex.csproj @@ -1,5 +1,4 @@  - true true @@ -68,9 +67,6 @@ - - - @@ -79,8 +75,6 @@ - - @@ -110,8 +104,4 @@ - - - - \ No newline at end of file