Мое текущее приложение использует класс PrincipalContext
для аутентификации пользователя по умолчанию (заполнено в выделенном разделе Web.config ) по LDAP (а точнее Active Directory) ):
ldapContext = new PrincipalContext(AdContextType, AdHost, AdContainer,
ContextOptions.SimpleBind,
AdDefaultUser, AdDefaultPassword)
Эта аутентификация затем позволяет искать любого другого пользователя (через UserPrincipal.FindByIdentity(ldapContext, username)
). НО я должен изменить это, так как наличие открытого пользователя в Web.config не приемлемо для моего клиента. ОК, я могу понять, что: -))
Итак, у меня есть несколько решений:
удается зашифровать соответствующую часть Web.config (часть membership
, с providers
и т. Д.)
использовать учетную запись из пула приложений IIS 7, в которой развернуто приложение. Это подразумевает получение принципала из IIS (я думаю, этот пункт не должен быть таким сложным), а затем использовать его для аутентификации на AD; но я не могу найти никакого способа для этого, ни через класс PrincipalContext
, ни через ActiveDirectoryMembershipProvider
один.
Знаете ли вы, как управлять любым из этих двух решений, или вы думаете о каком-либо другом?
Большое спасибо !!