Аутентификация против AD выполняется на основе объема соединения, как я его не понимаю.
По сути, это означает, что все в контексте строки подключения считается ...
если у вас есть соединение как:
LDAP: // domaincontroller / OU = Пользователи домена, DC = my, DC = домен, DC = com
После этого аутентифицируется любой пользователь, являющийся членом домена.
оттуда вы должны добавить поставщика ролей на основе токенов Windows и настроить его примерно так ...
<!-- use windows authentication -->
<authentication mode="Windows" />
<!-- use the Windows role provider -->
<roleManager enabled="true" defaultProvider="AspNetWindowsTokenRoleProvider" />
<!-- global authorization rules -->
<authorization>
<allow roles="Domain Admins, Product Users"/>
<deny users="*" />
</authorization>
Это блокирует приложение для использования только администраторами домена и пользователями в подразделении «Пользователи продукта» И всеми его дочерними объектами рекурсивно.
оттуда вы можете выполнять дальнейшие «контекстно-зависимые» проверки для других функций, например, ...
If(User.IsInRole("Product Admins"))
{
// do something groovy
}
else
throw new SecurityException();
Что это значит ...
Это означает, что у вас есть точный контроль над безопасностью логики вашего приложения на основе членства в группе пользователей домена, если пользователь находится в вашем домене, он будет аутентифицировать их, но может не авторизовать их (это зависит от конфигурации вашего поставщика ролей). ).
Аутентификация: идентификация пользователя.
Авторизация: Предоставление прав / доступа пользователю.