Я использую Identity в своем приложении ASP.NET, но работаю на двух веб-серверах на AWS и имею проблему, когда при входе в систему на одном сервере вы не регистрируетесь в другом, потому что они не имеют одного сеанса.Идентификатор ядра ASP.Net с распределенным сеансом
Это также проблема, например. когда я развертываю новую версию своего приложения - тогда пользователи будут выходить из системы и должны снова войти в систему.
Я попытался добавить распределенный кэш с Redis, в моем Configure
метод:
app.UseSession();
И мой ConfigureServices
:
services.AddDistributedRedisCache(options =>
{
options.Configuration = "uri-to-redis-server";
options.InstanceName = "name";
});
services.AddIdentity<ApplicationUser, IdentityRole>(o =>
{
o.Password.RequireNonAlphanumeric = false;
})
.AddEntityFrameworkStores<MyContext>()
.AddDefaultTokenProviders();
services.AddMvc();
services.AddSession();
Любые идеи о том, что я могу сделать?
Вы можете попробовать хранить то тождество связанных данных в базе данных? Вы также можете найти провайдера ASP.Net Identity на основе REDIS, я уверен, что вы найдете хороший пакет nuget. –
Идентификация не использует сеанс, поэтому проблема с чем-то еще – trailmax