О'кейо Ahh, котор я вижу.
Так вы будете auth испытание LDAP здесь:
Вход DirectoryEntry = новое DirectoryEntry (_path, domainAndUsername, pwd);
И то отлично, вы устанавливает authenticated соединение. Но с другой стороны вы судите за и строите искатель для групп как это:
Поиск DirectorySearcher = новое DirectorySearcher (_path);
Вы падали authenticated соединение и теперь вы пытаетесь пройти в _path, создавая второе unauthenticated соединение, вместо authenticated DirectoryEntry.
Идеально вы хранили бы «вход» и использовали бы то.
например.
namespace FormsAuth
{
общественный тип LdapAuthentication
{
общественное DirectoryEntry _entry;
общественное bool IsAuthenticated (домен шнура, username шнура, pwd шнура)
{
//Update новый курс к потребителю в директории.
_filterAttribute = результат (шнура). Свойства [«cn»] [0];
_entry = result.GetDirectoryEntry ();
}
После этого если вы authenticated, то вы можете вытянуть атрибут memberOf от DirectoryEntry довольно чем ищущ снова в GetGroups:
// iий думает… после того как оно испытано
Зашнуруйте [] memberOf = _entry. Свойства [«memberof»]
Крис