Локальная аутентификация Blazor плюс Google и Microsoft

#authentication #blazor

#аутентификация #blazor

Вопрос:

Я работаю над веб-сборкой blazor, основным размещенным проектом. Для использования веб-сайта у пользователей должна быть локальная учетная запись. Для этого я использую поставщик аутентификации blazor по умолчанию с IdentityServer.

У меня есть страница календаря, где пользователи могут добавлять и просматривать некоторые события. Я хотел бы предложить им возможность войти в свою учетную запись Google или Microsoft, чтобы увидеть свои личные события в том же месте.

Но аутентификация Google или Microsoft не может заменить локальную аутентификацию. Это должен быть дополнительный вариант.

Я не могу понять, как с этим справиться. Все примеры, которые я вижу, используют RemoteAuthenticatorView.

Ответ №1:

Вам необходимо добавить аутентификацию внешнего поставщика в свой серверный проект, выполнив шаги, описанные в Facebook, Google и проверка подлинности внешнего поставщика в ASP.NET Ядро

Комментарии:

1. Хорошо, я попробовал это, отлично работает с Google, но он может переопределить локальную учетную запись для входа в систему, а этого я не хочу. Я хотел бы ссылаться на внешнюю учетную запись только после создания локальной учетной записи

2. Вы можете отключить вход в локальную учетную запись с помощью IdentityServer и создание локальной учетной записи с помощью Identity

3. это не то, что я хочу. Я хочу, чтобы пользователи продолжали входить в систему с локальными учетными записями. И они могут связать свою личную учетную запись (Google, Microsoft, ..) просто для просмотра событий своего календаря

4. С помощью Identity вы можете связать внешнюю учетную запись с локальным входом в систему на странице управления пользователями

5. На странице входа в IdentityServer вы можете отключить внешнюю форму входа, поэтому пользователь должен войти в систему с локальной учетной записью и связать свой логин с внешним логином.