#asp.net-core #asp.net-core-webapi #openiddict
#asp.net-ядро #asp.net-core-webapi #openiddict
Вопрос:
Я реализовал OpenIddict с ASP.NET Идентификация как отдельный сервер аутентификации, и я использую потоки учетных данных клиента и паролей. У меня также есть проект web api в качестве сервера ресурсов.
Сервер ресурсов развернут в IIS и должен проверять подлинность пользователей домена, а также конечных пользователей. У всех контроллеров есть [Authorize]
атрибут, а у действий есть пользовательский фильтр аутентификации, наследуемый от ActionFilterAttribute
, с помощью которого я проверяю наличие разрешений в базе данных. Сервер ресурсов имеет встроенную проверку подлинности Windows.
В настоящее время на данном этапе разработки я не могу использовать ADFS или AAD.
Пользователи домена получают доступ к серверу ресурсов с помощью приложения Winforms, в котором они передают свои сетевые учетные данные. У конечных пользователей есть веб-сайты и собственные приложения, и они будут / должны использовать поток паролей для получения токена доступа.
Итак, мой вопрос:
Должен ли я иметь конечную [Authorize]
точку на сервере аутентификации, с помощью которой пользователи домена могут проходить аутентификацию? В этом случае мне также нужно будет использовать встроенную аутентификацию Windows (чего я бы предпочел избежать).
И как только пользователь домена аутентифицируется, должен ли я использовать поток учетных данных клиента для получения токена доступа? Пользователей домена не нужно сохранять в ASP.NET Личность. Конечные пользователи будут использовать поток паролей.
Это правильный способ обработки как аутентификации Windows, так и OpenID?