Я пытаюсь понять общую картину при создании нового веб-сайта с использованием ASP.NET Core. Я хочу, чтобы пользователи моего сайта могли регистрироваться и входить в социальные сети, такие как Facebook и Google. После регистрации, когда они отправляют запросы в мой WebAPI на ресурсы, мне нужно знать, какой пользователь вошел в систему, чтобы запросы ресурсов можно было персонализировать для пользователя. Я поиграл с ASP.NET Core Identity, и это, кажется, обеспечивает большую часть функциональности того, что мне нужно - например, регистрация у внешних провайдеров, вход в систему и сохранение этих данных в базе данных с использованием Entity Framework - однако с немного больше волшебства, чем мне бы хотелось - во многих руководствах перечислены шаги, чтобы заставить его работать, не объясняя, как это работает в фоновом режиме, например, для общения с Facebook.
Во внешнем интерфейсе я собираюсь использовать Aurelia, и я заметил несколько учебных пособий, в которых используется Identity Server, который, как я понимаю, является реализацией OpenIDConnect.
Прочитав видео о IdentityServer ... Я понимаю, что вы можете использовать ASP.NET Core Identity с IdentityServer. Чего я не понимаю, так это того, что мне было бы полезно просто реализовать ASP.NET Core Identity. (Тем не менее, я не могу найти учебники по интеграции Aurelia, ASP.NET Core Identity ...) Каково преимущество добавления большей сложности с Identity Server по сравнению с простым использованием ASP.NET Core Identity?