Я пытаюсь создать приложение с Google в качестве поставщика удостоверений в ядре asp.net.
Я использовал загрузочное веб-приложение, инициализированное инструментом dotnet cli:
dotnet new --type web
Я добавил Microsoft.AspNetCore.Authentication.Google
nuget в свой проект.json.
Я создал приложение Google и clientid/secret и добавил промежуточное ПО Google:
app.UseGoogleAuthentication(new GoogleOptions{
ClientId = "<clientId>",
ClientSecret = "<clientSecret>"
});
Но затем, следуя приведенному здесь руководству, следующая строка должна возвращать коллекцию loginProvider с одним элементом:
SignInManager.GetExternalAuthenticationSchemes()
Но все, что я получаю, это пустой IEnumerable. Я пытался следовать исходному коду, но не смог найти, что я делаю неправильно (плохая конфигурация идентификатора клиента, что-то пропущено в функциях Startup Configure(Service)).
Как заставить SignInManager.GetExternalAuthenticationSchemes()
вернуть google loginProvider?