C# Вход в Active Directory - PullRequest
       88

C# Вход в Active Directory

0 голосов
/ 20 февраля 2020

Я написал программу для управления нашей Active Directory в c# - windows формах.

Я застрял в следующем моменте: для управления Active Directory и фиксации изменений вам нужно запустить программа от имени администратора. Я хочу включить кнопку входа в систему, чтобы подтвердить как администратор и иметь возможность вносить изменения без запуска .exe непосредственно от имени администратора.

Что-то вроде:

group.Properties["member"].Add(distinguishedName);
group.CommitChanges();

Если это невозможно, я подумал, что может быть возможно перезапустить программу, когда пользователь введет свои учетные данные и введет учетные данные администратора. непосредственно в поле имени пользователя и пароля в качестве параметров.

Возможно ли это? Если нет, у вас есть другие предложения?

1 Ответ

0 голосов
/ 20 февраля 2020

Ваша программа не должна запускаться от имени администратора. Вам просто нужно подключиться к Active Directory, используя учетные данные, которые имеют разрешения для обновления этой группы. По умолчанию он использует учетные данные, с которыми работает программа. Похоже, что учетные данные, которые вы используете для запуска с правами администратора, также имеют разрешения на обновление этой группы.

Если вам это поможет, вы можете использовать альтернативные учетные данные для подключения к AD с помощью конструктора для DirectoryEntry, который принимает учетные данные . Например:

var group = new DirectoryEntry($"LDAP://{groupDn}", "username", "password");
group.Properties["member"].Add(distinguishedName);
group.CommitChanges();
...