кратката команда Set-ADComputer ви позволява да промените атрибутите на компютърен акаунт в Active Directory. В тази статия ще покажем как да използвате скриптове за влизане и командлета Set-ADComputer, за да напишете текущото потребителско име и IP адрес към компютърните свойства в AD. Такъв скрипт може да бъде полезен, когато трябва да намерите компютър в домейн, над който работи определен потребител..
Съдържание:
- Използване на Set-ADComputer за промяна на компютърни атрибути в AD
- Как да добавите потребителско име към компютърните свойства в AD?
Използване на Set-ADComputer за промяна на компютърни атрибути в AD
кратката команда Set-ADComputer
е част от модула Active Directory за PowerShell и изисква модулът да бъде инсталиран на компютъра. Помислете как да използвате командлета Set-ADComputer. Нека се опитаме да добавим името на компанията и отдела към компютърните свойства в AD. Първо, използвайки Get-ADComputer, ще проверим какво е посочено за определен компютър в домейна в полетата на компанията, отдела и описанието.
Get-ADComputer SRV-MAN01 -properties * | select-object dNSHostName, операционна система, компания, отдел, описание | ft -wrap -auto
Както можете да видите, компютърът няма полета с описание, име на фирма и отдел.
Нека опитаме да променим описанието на компютъра с командата:
Set-ADComputer -Идентичност SRV-MAN01 -Add @ "description" = "Сървър за управление на инфраструктурата"
Можете да определите местоположението на компютъра:
Set-ADComputer -Идентичност SRV-MAN01-Местоположение „Spb / Russia“
Ако трябва да зададете няколко компютърни параметъра, използвайте следната конфигурация на PowerShell:
$ Server = Get-ADComputer -Идентичност SRV-MAN01
$ Server.company = "contoso"
$ Server.department = "ИТ"
Set-ADComputer -Instance $ Server
Проверете дали атрибутите на компютъра са се променили:
Get-ADComputer SRV-MAN01 -properties * | select-object dNSHostName, операционна система, компания, отдел, описание | ft -wrap -auto
Както можете да видите, сега атрибутите на компютъра съдържат необходимата ни информация. Сега можем да избираме компютри в AD въз основа на тези критерии. Например, искам да избера всички компютри от IT отдела на Contoso. Командата за извличане може да изглежда така:
Get-ADComputer -Filter company -eq 'contoso'-AND отдел -подобен' IT ' -properties * | select-object dNSHostName, операционна система, компания, отдел, описание | ft -wrap -auto
Командлерът Set-ADComputer също ви позволява да заключите (отключите) компютърен акаунт в AD:
Set-ADComputer pc-name -Enabled $ false
Как да добавите потребителско име към компютърните свойства в AD?
Помислете за по-интересен и полезен пример за използване на командлета Set-ADComputer. Да предположим, че решите да съхранявате в атрибутите на всеки компютър в Active Directory неговия текущ IP адрес и името на последния влязъл потребител.
IP адресът на компютъра, който ще съхраняваме в атрибута описание, а името на потребителя, който работи на компютъра, е в атрибута ManagedBy.
На първо място, е необходимо да делегирате правата на групата на потребители на домейни (или на друга група за защита на потребителите) в ОУ с компютри, за да промените стойностите в полетата на обекти като Computer: ManagedBy и описание (Напишете описание + Пишете, управлявано от).
Сега създайте нова политика със следния скрипт за вход PowerShell (Конфигурация на потребителя -> Политики -> Настройки на Windows -> Скриптове -> Вход), което трябва да започне, когато потребителят влезе:
$ curhostname = $ env: име на компютър
$ env: HostIP = (
Get-NetIPConfiguration |
Къде-обект
$ _. IPv4DefaultGateway -ne $ null -и
$ _. NetAdapter.Status -ne "Прекъснато"
) .IPv4Address.IPAdress
$ currus_cn = (get-aduser $ env: UserName -properties *).
$ ADComp = Get-ADComputer -Идентичност $ curhostname
$ ADComp.ManagedBy = $ currus_cn
$ ADComp.description = $ env: HostIP
Set-ADComputer -Инстанция $ ADComp
Този скрипт на PowerShell се изпълнява като потребител, определя името и IP адреса на текущия компютър, CN на потребителя и ги записва в компютърния акаунт в AD.
Това правило трябва да бъде свързано с контейнера с компютри и да се даде възможност за заключване на групови правила Конфигурирайте режима на групови правила за връщане към обратна връзка (виж тук).
Сега, когато потребителят влиза в системата на компютъра, той изпълнява този скрипт и актуализира описанието на компютъра в AD.
Конзолата ADUC сега показва IP адресите на компютрите и в компютърните свойства в раздела Управлявано от сега има активна връзка към потребителския акаунт, последно регистриран на този компютър.
Сега можете бързо да намерите компютри в домейн по IP адрес:
get-adcomputer -filter description -like "10.10.1. *" -properties * | изберете име, описание, ManagedBy
Или можете да намерите всички компютри в домейна, в който е влязъл конкретен потребител (командлетът Get-AdUser се използва за получаване на DistinguishedName на потребителя):
$ user = 'daivanov'
$ user_cn = (get-aduser $ user -properties *)
Get-ADComputer -Filter "ManagedBy -eq '$ user_cn'" -properties * | изберете име, описание, ManagedBy | ft
По същия начин можете да напишете всяка информация за работна станция или потребител в свойствата на компютърните акаунти в AD и да я използвате за търсене (избор) на компютри в AD.
Подобен сценарий със съхранение на информация за модела и серийния номер на сървъра в AD се обсъжда в следващата статия.