mirror of
https://github.com/bitwarden/server
synced 2026-02-17 18:09:11 +00:00
Enhance seeder with additional cipher types and architectural refactorings (#6935)
This commit is contained in:
@@ -2,6 +2,7 @@
|
||||
using Bit.Core.Entities;
|
||||
using Bit.Infrastructure.EntityFramework.Repositories;
|
||||
using Bit.Seeder.Recipes;
|
||||
using Bit.Seeder.Services;
|
||||
using CommandDotNet;
|
||||
using Microsoft.AspNetCore.Identity;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
@@ -38,7 +39,8 @@ public class Program
|
||||
|
||||
var mapper = scopedServices.GetRequiredService<IMapper>();
|
||||
var passwordHasher = scopedServices.GetRequiredService<IPasswordHasher<User>>();
|
||||
var recipe = new OrganizationWithUsersRecipe(db, mapper, passwordHasher);
|
||||
var manglerService = scopedServices.GetRequiredService<IManglerService>();
|
||||
var recipe = new OrganizationWithUsersRecipe(db, mapper, passwordHasher, manglerService);
|
||||
recipe.Seed(name: name, domain: domain, users: users);
|
||||
}
|
||||
|
||||
@@ -48,17 +50,31 @@ public class Program
|
||||
args.Validate();
|
||||
|
||||
var services = new ServiceCollection();
|
||||
ServiceCollectionExtension.ConfigureServices(services);
|
||||
ServiceCollectionExtension.ConfigureServices(services, enableMangling: args.Mangle);
|
||||
var serviceProvider = services.BuildServiceProvider();
|
||||
|
||||
using var scope = serviceProvider.CreateScope();
|
||||
var scopedServices = scope.ServiceProvider;
|
||||
|
||||
var manglerService = scopedServices.GetRequiredService<IManglerService>();
|
||||
var recipe = new OrganizationWithVaultRecipe(
|
||||
scopedServices.GetRequiredService<DatabaseContext>(),
|
||||
scopedServices.GetRequiredService<IMapper>(),
|
||||
scopedServices.GetRequiredService<IPasswordHasher<User>>());
|
||||
scopedServices.GetRequiredService<IPasswordHasher<User>>(),
|
||||
manglerService);
|
||||
|
||||
recipe.Seed(args.ToOptions());
|
||||
|
||||
if (!manglerService.IsEnabled)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
var map = manglerService.GetMangleMap();
|
||||
Console.WriteLine("--- Mangled Data Map ---");
|
||||
foreach (var (original, mangled) in map)
|
||||
{
|
||||
Console.WriteLine($"{original} -> {mangled}");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user