ASP.NET - определить, прошел ли пользователь проверку подлинности в Active Directory - PullRequest
0 голосов
/ 22 мая 2010

У нас есть решение SSO с ADFS для входа в наше веб-приложение, у нас также есть стандартная настройка, которая использует аутентификацию с нашей базой данных. Я хочу установить решение, которое учитывает оба. Итак, теперь я пытаюсь выяснить, есть ли способ для ASP.NET определить, прошел ли пользователь проверку подлинности в Active Directory, чтобы я мог сделать это на лету? Если пользователь вошел в систему через AD, отправьте через ADFS, иначе покажите экран входа. Есть идеи?

Я также понимаю, что это может не сработать, если они настроены на использование проверки подлинности на основе форм только после запуска процесса ADFS.

1 Ответ

0 голосов
/ 22 мая 2010

Да ... В IIS включите как встроенную аутентификацию, так и базовую и анонимную.Вся настоящая работа выполняется в HTTPModule, который зарегистрирован в корневом Web.config (например, в папке CONFIG во время выполнения).Встроенный HTTPModule для аутентификации установит принцип пользователя после аутентификации, если он аутентифицирован с помощью встроенных учетных данных.Вы можете добавить свое собственное, чтобы быть уволенным после этого.Если для IIdentity (например, User.Identity) для IsAuthenticated установлено значение false, то вы знаете, что они не были аутентифицированы, и можете затем перенаправить их.Если для него установлено значение true, вы можете заменить IPrinciple на тот, который содержит роли, относящиеся к вашему приложению.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...