Как я могу добавить компьютер к домену программно (использующий.NET)?

Я должен записать программу или сценарий, который делает несколько вещей с (или к) сервер после установки Windows. Среди тех добавляет сервер к домену.

Существует ли способ сделать это программно или использование команды сценария?

5
задан Andrew J. Brehm 14 June 2010 в 16:49
поделиться

2 ответа

Если вы хотите сделать это из контроллера домена:

Источник: net computer \\ computername / add

Если вы хотите сделать это с рабочей станции:

Источник: NETDOM JOIN / DOMAIN: [DOMAINNAME] / USERD: [USERNAME] / PASSWORDD: [PASSWORD]

2
ответ дан 15 December 2019 в 00:50
поделиться

Это непросто, если вы пишете программу, но это возможно, и вы можете найти соответствующие примеры кода.

Прежде всего, необходимо создать учетную запись компьютера в домене. Для этого можно использовать функцию NetUserAdd. Соответствующий пример кода вы найдете в разделе http://msdn.microsoft.com/en-us/library/aa370254%28VS.85%29.aspx. Если у вас уже создана новая учетная запись компьютера в Active Directory (любым способом) в соответствующем целевом OU, вы можете пропустить этот шаг. Вы должны только понять, какой пароль имеет эта учетная запись (пароль будет построен на основе имени компьютера, подробнее см. пример кода).

Далее необходимо получить SID Домена, в который вы добавляете компьютер, и в конце использовать так называемый LSA API, чтобы все работало локально с учетом LsaSetTrustedDomainInformation. Соответствующий пример кода вы можете найти в http://support.microsoft.com/kb/145697.

Если вам все же придется создать учетную запись в домене, будьте внимательны, чтобы вы все время работали с одним и тем же контроллером домена. В противном случае у вас могут возникнуть небольшие проблемы, пока новая учетная запись не будет реплицирована на следующий контроллер домена, который вы используете (небольшой цикл ожидания с повторными попытками может быть достаточным).

P.S. Если у вас возникнут проблемы с реализацией, вы можете задать мне дополнительный вопрос на эту тему.

2
ответ дан 15 December 2019 в 00:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: