mirror of
https://github.com/bitwarden/server
synced 2026-01-11 13:03:27 +00:00
Disable database distributed cache in non-self-hosted environments (#6783)
* Disable database distributed cache in non-self-hosted environments * Added distributed memory cache as a final fallback option
This commit is contained in:
@@ -661,8 +661,9 @@ public static class ServiceCollectionExtensions
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Adds an implementation of <see cref="IDistributedCache"/> to the service collection. Uses a memory
|
||||
/// cache if self hosted or no Redis connection string is available in GlobalSettings.
|
||||
/// Adds an implementation of <see cref="IDistributedCache"/> to the service collection. Uses Redis
|
||||
/// if a connection string is available in GlobalSettings, a database-backed distributed cache if
|
||||
/// self-hosted or a distributed memory cache as a final fallback.
|
||||
/// </summary>
|
||||
public static void AddDistributedCache(
|
||||
this IServiceCollection services,
|
||||
@@ -677,19 +678,26 @@ public static class ServiceCollectionExtensions
|
||||
}
|
||||
else
|
||||
{
|
||||
var (databaseProvider, databaseConnectionString) = GetDatabaseProvider(globalSettings);
|
||||
if (databaseProvider == SupportedDatabaseProviders.SqlServer)
|
||||
if (globalSettings.SelfHosted)
|
||||
{
|
||||
services.AddDistributedSqlServerCache(o =>
|
||||
var (databaseProvider, databaseConnectionString) = GetDatabaseProvider(globalSettings);
|
||||
if (databaseProvider == SupportedDatabaseProviders.SqlServer)
|
||||
{
|
||||
o.ConnectionString = databaseConnectionString;
|
||||
o.SchemaName = "dbo";
|
||||
o.TableName = "Cache";
|
||||
});
|
||||
services.AddDistributedSqlServerCache(o =>
|
||||
{
|
||||
o.ConnectionString = databaseConnectionString;
|
||||
o.SchemaName = "dbo";
|
||||
o.TableName = "Cache";
|
||||
});
|
||||
}
|
||||
else
|
||||
{
|
||||
services.AddSingleton<IDistributedCache, EntityFrameworkCache>();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
services.AddSingleton<IDistributedCache, EntityFrameworkCache>();
|
||||
services.AddDistributedMemoryCache();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user