У меня есть старое ASP. NET (. NET 4.0) веб-приложение форм, использующее проверку подлинности с помощью форм. Пользователь сохраняется в БД, а таблицы БД - старые роли. Пользователи бывают двух типов:
- Внутренние пользователи с паролем, хранящимся в БД
- Пользователи Active Directory (% DOMAIN% \% USER%)
Теперь клиент просит меня реализовать тот факт, что если в базе данных присутствуют пользователи AD, они должны видеть не формы входа, а автоматический вход. Если это не так, форма входа в систему должна появиться.
Для меня это выглядит как Windows Аутентификация больше, чем SSO.
Поэтому мне нужно, чтобы страница входа в систему:
- Извлечение текущего «домена \ пользователя» из Windows Сеанс, который вызвал страницу входа
- Проверьте, находится ли он в форме «домен \ пользователь» (без локального пользователя)
- Предположим, что пользователь прошел проверку подлинности (в противном случае невозможно войти в систему)
- Поиск в таблице пользователей базы данных записи "домен \ пользователь", которая соответствует "домену \ пользователю" из Windows сеанс
- Найдя его, разрешите пользователю войти в систему с ролью, указанной в базе данных.
- Если что-либо из перечисленного не удалось, перенаправьте на форму входа
Это что-то возможно?