Назад | Перейти на главную страницу

Windows Server 2008: как определить, является ли пользователь «локальным» пользователем или пользователем «домена»

Я разработчик, а не администратор сервера, так что терпите меня!

Мне было поручено проверить установку некоторого программного обеспечения на машине Windows Server 2008 R2 в облаке в двух сценариях:

  1. Нет домена, программа будет использовать локальных пользователей и группы для аутентификации
  2. Есть домен, софт будет использовать пользователей и группы домена для аутентификации

Я сделал часть 1, но меня озадачивает часть 2.

Я только что установил на сервере роль доменных служб Active Directory, так что теперь у меня есть домен из одного компьютера. Когда я смотрю в Active Directory - пользователи и компьютеры, я вижу всех своих исходных локальных пользователей и группы. Были ли они теперь «повышены» до пользователей домена? Или у меня еще нет пользователей домена? Есть ли способ теперь определить разницу между пользователями домена и локальными пользователями?

Спасибо

Все, что отображается в консоли «Active Directory - пользователи и компьютеры», находится в домене и реплицируется на все контроллеры домена.

На контроллере домена (т. Е. На сервере с установленной ролью доменных служб Active Directory) нет локальных пользователей и групп (за исключением пользователя режима восстановления служб каталогов, который является особым случаем).

Рядовые серверы и рабочие станции в домене имеют своих собственных локальных пользователей и групп. Когда машина добавляется в домен, некоторые группы домена автоматически вкладываются в локальные группы; группа «Администраторы домена» становится членом локальной группы «Администраторы», группа «Пользователи домена» становится членом локальной группы «Пользователи».

Короче говоря, если учетная запись пользователя появляется в консоли ADUC, это учетная запись домена.

Хорошо, вы должны сначала прочитать об Active Directory, прежде чем делать что-либо еще.

AD - это служба каталогов: она содержит пользователей, компьютеры и всевозможные ссылки, которые используются внутри «домена безопасности», обычно компании или отдела. Это центральное место для управления этими учетными записями.

Когда вы устанавливаете роль AD на сервере, все «локальные» пользователи становятся пользователями домена. Это одна из причин, по которой вы обычно НЕ устанавливаете ничего на тот же компьютер, что и AD.

В вашем случае нет смысла устанавливать AD на вашем сервере: AD имеет смысл только в том случае, если вы хотите централизовать управление учетными записями между несколькими машинами.

Теперь, если вы хотите правильно выполнить свой тест, вам нужно будет удалить AD со своего сервера (или, желательно, полностью переустановить его), установить отдельный сервер 2008R2, на котором вы установите AD, а затем присоедините свой сервер приложений к этому домену. . Только после этого вы можете попытаться использовать учетные записи AD для своего приложения.

Однако имейте в виду, что AD - это не просто сетевая служба: вам необходимо установить всю инфраструктуру, которая поставляется с ним (в основном, это DNS, но это также означает, что вам понадобится статический IP-адрес).

Я снова призываю вас начать читать об AD: это не будет потерянным временем для тех, кому приходится работать с сетями Windows. По крайней мере, взгляните на статью в Википедии об Active Directory и попробуйте прочитать одно из (многочисленных) руководств для начинающих по AD, доступных в сети.

Вы не можете протестировать то, что хотите протестировать, на DC. Вам нужно будет протестировать его на рядовом сервере. Когда DC повышается, все учетные записи, кроме учетной записи DSRM, становятся учетными записями домена.

Проверить, является ли сервер членом домена, можно несколькими способами:

Реестр: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Domain

Это значение будет содержать полное доменное имя или будет пустым на компьютере рабочей группы.

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

В %userdomain% Переменная окружения будет именем машины, если она не находится в домене (но если имя машины совпадает с именем домена, этот тест завершится неудачно. Пограничный случай, да, но все же возможен).

Можно с уверенностью предположить, что при обнаружении домена пользователь скорее всего хочет использовать аутентификацию Active Directory, но почему бы просто не спросить их в установщике? Если вы устанавливаете службу Windows, я абсолютно хотел бы, чтобы меня спрашивали (и у меня был выбор, какой пользователь; я бы никогда не запустил службу в качестве администратора, если бы мне не пришлось; требуются минимум привилегий и тому подобное).