mirror of
https://github.com/bitwarden/server
synced 2025-12-15 07:43:54 +00:00
[SM-394] Secrets Manager (#2164)
Long lived feature branch for Secrets Manager Co-authored-by: Thomas Avery <43214426+Thomas-Avery@users.noreply.github.com> Co-authored-by: cd-bitwarden <106776772+cd-bitwarden@users.noreply.github.com> Co-authored-by: CarleyDiaz-Bitwarden <103955722+CarleyDiaz-Bitwarden@users.noreply.github.com> Co-authored-by: Thomas Avery <tavery@bitwarden.com> Co-authored-by: Colton Hurst <colton@coltonhurst.com>
This commit is contained in:
@@ -5,18 +5,18 @@ using LinqToDB.EntityFrameworkCore;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
|
||||
namespace Bit.Infrastructure.EntityFramework;
|
||||
|
||||
public static class EntityFrameworkServiceCollectionExtensions
|
||||
{
|
||||
public static void AddEFRepositories(this IServiceCollection services, bool selfHosted, string connectionString,
|
||||
SupportedDatabaseProviders provider)
|
||||
public static void SetupEntityFramework(this IServiceCollection services, string connectionString, SupportedDatabaseProviders provider)
|
||||
{
|
||||
if (string.IsNullOrWhiteSpace(connectionString))
|
||||
{
|
||||
throw new Exception($"Database provider type {provider} was selected but no connection string was found.");
|
||||
}
|
||||
|
||||
// TODO: We should move away from using LINQ syntax for EF (TDL-48).
|
||||
LinqToDBForEFTools.Initialize();
|
||||
|
||||
services.AddAutoMapper(typeof(UserRepository));
|
||||
services.AddDbContext<DatabaseContext>(options =>
|
||||
{
|
||||
@@ -35,7 +35,17 @@ public static class EntityFrameworkServiceCollectionExtensions
|
||||
{
|
||||
options.UseSqlite(connectionString, b => b.MigrationsAssembly("SqliteMigrations"));
|
||||
}
|
||||
else if (provider == SupportedDatabaseProviders.SqlServer)
|
||||
{
|
||||
options.UseSqlServer(connectionString);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
public static void AddPasswordManagerEFRepositories(this IServiceCollection services, bool selfHosted)
|
||||
{
|
||||
services.AddSingleton<IApiKeyRepository, ApiKeyRepository>();
|
||||
services.AddSingleton<IAuthRequestRepository, AuthRequestRepository>();
|
||||
services.AddSingleton<ICipherRepository, CipherRepository>();
|
||||
services.AddSingleton<ICollectionCipherRepository, CollectionCipherRepository>();
|
||||
services.AddSingleton<ICollectionRepository, CollectionRepository>();
|
||||
@@ -46,22 +56,21 @@ public static class EntityFrameworkServiceCollectionExtensions
|
||||
services.AddSingleton<IGroupRepository, GroupRepository>();
|
||||
services.AddSingleton<IInstallationRepository, InstallationRepository>();
|
||||
services.AddSingleton<IMaintenanceRepository, MaintenanceRepository>();
|
||||
services.AddSingleton<IOrganizationRepository, OrganizationRepository>();
|
||||
services.AddSingleton<IOrganizationApiKeyRepository, OrganizationApiKeyRepository>();
|
||||
services.AddSingleton<IOrganizationConnectionRepository, OrganizationConnectionRepository>();
|
||||
services.AddSingleton<IOrganizationRepository, OrganizationRepository>();
|
||||
services.AddSingleton<IOrganizationSponsorshipRepository, OrganizationSponsorshipRepository>();
|
||||
services.AddSingleton<IOrganizationUserRepository, OrganizationUserRepository>();
|
||||
services.AddSingleton<IPolicyRepository, PolicyRepository>();
|
||||
services.AddSingleton<IProviderOrganizationRepository, ProviderOrganizationRepository>();
|
||||
services.AddSingleton<IProviderRepository, ProviderRepository>();
|
||||
services.AddSingleton<IProviderUserRepository, ProviderUserRepository>();
|
||||
services.AddSingleton<ISendRepository, SendRepository>();
|
||||
services.AddSingleton<ISsoConfigRepository, SsoConfigRepository>();
|
||||
services.AddSingleton<ISsoUserRepository, SsoUserRepository>();
|
||||
services.AddSingleton<ITaxRateRepository, TaxRateRepository>();
|
||||
services.AddSingleton<ITransactionRepository, TransactionRepository>();
|
||||
services.AddSingleton<IUserRepository, UserRepository>();
|
||||
services.AddSingleton<IProviderRepository, ProviderRepository>();
|
||||
services.AddSingleton<IProviderUserRepository, ProviderUserRepository>();
|
||||
services.AddSingleton<IProviderOrganizationRepository, ProviderOrganizationRepository>();
|
||||
services.AddSingleton<IAuthRequestRepository, AuthRequestRepository>();
|
||||
|
||||
if (selfHosted)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user