Одна небольшая точка: аутентификация и сессия - это две разные концепции в ASP.NET, хотя терминология легко их спутать.
Аутентификация имеет билет аутентификации, зашифрованный в куки-файле, и обычно у него есть ограничение по времени, в течение которого вы вошли на сайт, прежде чем вам потребуется повторная аутентификация. Это также может быть скользящая шкала или никогда не требовать повторной аутентификации, в зависимости от того, как настроена ваша аутентификация.
Session - это данные, которые хранятся в состоянии Session в течение определенного интервала (аутентифицированы и не аутентифицированы) и отслеживаются его собственным файлом cookie. В зависимости от того, как сеанс и аутентификация настроены вместе, возможны сценарии, когда интервал аутентификации пользователя истекает, требуя от него входа в систему, и все же у него все еще есть данные сеанса и наоборот.
Похоже, вы говорите о приложении для интрасети, исходя из того факта, что вы хотели бы использовать Windows authenticatio n и Active Directory для аутентификации пользователей и авторизации того, что эти пользователи могут делать в приложении. Это может очень хорошо работать для приложений в интрасети, и я не совсем уверен, какие проблемы безопасности были высказаны по этому поводу. Не могли бы вы уточнить?
Если вы говорите об интернет-приложении и хотели бы использовать проверку подлинности Windows и Active Directory для пользователей интрасети и проверки подлинности на основе форм для всех остальных, то это, безусловно, также может быть достигнуто. Для этого вам может понадобиться Windows Identity Foundation .