Внешняя авторизация останавливает идентификацию .Net Core по умолчаниюC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Внешняя авторизация останавливает идентификацию .Net Core по умолчанию

Сообщение Anonymous »

Кажется, мне не удается заставить внешние входы работать с базовым управлением идентификацией .net по умолчанию.
Я установил свои индивидуальные входы в учетную запись в Program.cs следующим образом: р>

Код: Выделить всё

builder.Services.AddDefaultIdentity
(options => options.SignIn.RequireConfirmedAccount = true)
.AddEntityFrameworkStores()
.AddSignInManager();
Пока все хорошо, все работает отлично. Я попытался добавить внешние логины, и вот здесь начались проблемы:

Код: Выделить всё

builder.Services.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme)
.AddCookie(options =>
{
options.LoginPath = "/Identity/Login";
options.LogoutPath = "/Identity/LogOff";
options.ExpireTimeSpan = TimeSpan.FromMinutes(60);
options.SlidingExpiration = true;
options.Cookie.HttpOnly = true;
options.Cookie.SecurePolicy = CookieSecurePolicy.Always;
options.Cookie.SameSite = SameSiteMode.Strict;
options.Cookie.IsEssential = true;
})
.AddGoogle(options =>
{
options.ClientId = builder.Configuration["Google:ClientId"] ?? "";
options.ClientSecret = builder.Configuration["Google:ClientSecret"] ?? "";
options.Scope.Add("profile");
options.Scope.Add("email");
})
.AddFacebook(options =>
{
options.AppId = builder.Configuration["Facebook:AppId"] ?? "";
options.AppSecret = builder.Configuration["Facebook:AppSecret"] ?? "";
});
При этих настройках внешние входы работают отлично, но индивидуальная учетная запись перестает работать. Когда я использую SignInManager для входа в систему, я добиваюсь успеха, но я не аутентифицирован. Если я удалю второй блок из кода, отдельные учетные записи начнут работать, а внешние — нет. Может ли кто-нибудь подсказать мне, что мне может не хватать?
Я читал, что установка CookieAuthenticationDefaults.AuthenticationScheme фактически нарушает AddDefaultIdentity, поэтому мой вопрос больше связан с тем, что является лучшим решением для моя ситуация? Должен ли я создать собственную систему управления удостоверениями или можно сохранить удостоверение по умолчанию вместе с внешним?

Подробнее здесь: https://stackoverflow.com/questions/792 ... t-identity
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «C#»