Pangangasiwa ng mga account sa domain ng Active Directory. Domain ng Active Directory - ano ito sa mga simpleng salita, paglalarawan at mga review

17.03.2014 Darren Mar Elia

Noong unang lumitaw ang Windows PowerShell, maraming tao ang nagsimulang magtanong kung posible bang pamahalaan Aktibong Direktoryo(AD) gamit ang PowerShell. Noong panahong iyon, ang tugon ng Microsoft ay hindi ang gustong marinig ng karamihan sa mga administrator. Ang PowerShell ay mayroong built-in na Active Directory Service Interfaces (ADSI) na "type accelerator" para sa pag-access sa mga bagay ng AD, ngunit ang user ay kadalasang kailangang malaman kung paano gamitin ang PowerShell upang maisagawa ang mga gawain sa pangangasiwa ng AD nang mag-isa. Ang mga makabuluhang pagbabago ay naganap sa paglabas Windows Server 2008 R2, na nagpasimula ng Active Directory PowerShell module. Ang AD module ay may kasamang set ng mga command para sa pamamahala ng AD, pati na rin ang isang AD Provider na hinahayaan kang mag-navigate sa AD tulad ng isang symbolic drive. Sa artikulong ito, ipapakita ko sa iyo kung paano i-install ang AD module at ilarawan kung paano ito gumagana nang detalyado.

Noong unang lumabas ang Windows PowerShell, maraming tao ang nagsimulang magtanong kung ang Active Directory (AD) ay maaaring pamahalaan gamit ang PowerShell. Noong panahong iyon, ang tugon ng Microsoft ay hindi ang gustong marinig ng karamihan sa mga administrator. Ang PowerShell ay mayroong built-in na Active Directory Service Interfaces (ADSI) na "type accelerator" para sa pag-access sa mga bagay ng AD, ngunit ang user ay kadalasang kailangang malaman kung paano gamitin ang PowerShell upang maisagawa ang mga gawain sa pangangasiwa ng AD nang mag-isa. Pagkaraan ng ilang oras, nagbigay ang Quest Software ng libreng set ng mga command para sa mga gawaing pang-administratibo ng AD, kabilang ang paggawa, pagbabago, at pagtanggal ng mga bagay sa AD, at paghahanap ng mga bagay sa AD. Sa mahabang panahon, ang estado ng PowerShell at pamamahala ng AD ay naging ganito.

Malaking pagbabago ang naganap sa paglabas ng Windows Server 2008 R2, na nagpasimula ng PowerShell module para sa Active Directory. Ang AD module ay may kasamang set ng mga command para sa pamamahala ng AD, pati na rin ang isang AD Provider na hinahayaan kang mag-navigate sa AD tulad ng isang symbolic drive. Sa artikulong ito, ipapakita ko sa iyo kung paano i-install ang AD module at ilarawan kung paano ito gumagana nang detalyado.

Pag-install ng Active Directory Module

Hindi tulad ng mga nakaraang tool na gumamit ng LDAP upang makipag-ugnayan sa AD, ang AD module ay gumagamit ng mga protocol ng Active Directory Web Services (ADWS) upang makipag-ugnayan sa isang AD domain controller (DC). Ang mga protocol na ito ay detalyado sa MSDN blog na "Active Directory Web Services Overview", ngunit sapat na para sabihin na ang PowerShell command sa AD module at ang Active Directory Administrative Center (ADAC) ay gumagamit ng ADWS para makipag-ugnayan at kumuha ng impormasyon mula sa AD.

Kapag nag-install ka ng Windows Server 2012 o Server 2008 R2 domain controllers sa isang AD domain, ang ADWS protocol ay naka-install at nagsimula bilang default sa bawat isa sa kanila. Kung ang iyong domain ay ganap na binubuo ng Windows Server 2008 o Windows Server 2003 domain controllers, dapat mong i-install nang hiwalay ang ADWS. Ang Microsoft ay nagbibigay ng Active Directory Management Gateway Service package na walang bayad para sa layuning ito. Kung i-install mo ang package sa kahit isang AD Server 2008 o Server 2003 domain controller, maaari mong gamitin ang AD module para sa PowerShell kasama ng ADAC.

Ang AD module mismo ay naka-install bilang default sa anumang DC na tumatakbo sa Server 2012 o Server 2008 R2. Naka-on Mga Windows computer 8 at Windows 7 (o anumang computer maliban sa isang DC na tumatakbo sa Server 2012 o Server 2008 R2), dapat mong i-install ang Remote Server Administration Tools mula sa Microsoft Download Center.

Hindi alintana kung ang Remote Server Administration Tools ay naka-install sa computer bago o hiwalay, ang susunod na hakbang ay upang buksan ang Add / Remove Programs na seksyon sa Control Panel at piliin ang I-on o i-off ang mga feature ng Windows mula sa menu sa kaliwa . Mag-scroll pababa sa dialog ng Tampok ng Windows sa seksyong Mga Tool sa Pangangasiwa ng Remote Server. Hanapin ang Active Directory Module para sa Windows PowerShell check box sa \Remote Server Administration Tools\Role Administration Tools\AD DS at AD LDS Tools folder, tulad ng ipinapakita sa Figure 1. Piliin ang check box at i-click ang OK upang i-install ang module.

Dapat mong makita ang Active Directory Module para sa Windows PowerShell shortcut sa ilalim ng Administrative Tools na seksyon ng Start menu. I-click ang shortcut na ito para ilunsad ang PowerShell na may naka-load na AD module. Kung gumagamit ka na ng PowerShell at gusto mo lang mag-load ng module para magamit ito, maaari mong i-type ang sumusunod na command para ma-access ang mga command ng AD at AD Provider:

Import-Module ActiveDirectory

Ngayon tingnan natin kung paano mag-navigate sa AD gamit ang AD Provider.

Gamit ang Active Directory Provider

Ipinapatupad ng PowerShell ang konsepto ng mga PowerShell drive, na tatawagin ko lang bilang mga PS drive. Ang isang pinasimpleng termino para sa isang PS drive ay isang representasyon ng isang mapagkukunan, tulad ng isang navigable file system na binubuo ng mga folder at dahon. Hindi lahat ng mapagkukunan ay maaaring katawanin sa ganitong paraan, ngunit marami (kabilang ang AD at ang registry) ay angkop sa modelong ito. Ang AD module ay naglalaman ng PS AD disk provider. Alinsunod dito, maaari kang lumipat sa paligid at kahit na baguhin ang AD na parang ito ay isang file system.

Kaya paano ka mag-navigate sa AD gamit ang AD Provider? Ipinapalagay nito na ang PowerShell ay bukas at ang AD module ay na-load. Sa kasong ito, ang unang hakbang ay ang patakbuhin ang Set-Location command, na mayroong ilang mga alias, kabilang ang sl at cd:

Itakda ang AD ng Lokasyon:

Binabago ng command na ito ang kasalukuyang posisyon sa pagtatrabaho ng PS AD drive. Bilang resulta, ipapakita ng PowerShell prompt ang AD:\ sa halip na C:\. Pagkatapos, para makita ang mga item sa PS AD drive, maaari mong gamitin ang Get-ChildItem command na may dir alias:

Get-ChildItem

Ipinapakita ng screen 2 ang isang halimbawa ng resulta sa aking computer.

Tulad ng nakikita natin, ang utos ay nagbabalik ng isang listahan ng lahat ng magagamit na mga partisyon ng domain. Ang pinaka-kawili-wili, sa aking opinyon, ay ang seksyon ng domain na tinatawag na cpandl, na naglalaman ng mga pangalan ng user at computer. Upang baguhin ang domain na ito, ipasok lamang ang command:

Itakda ang Lokasyon "dc=cpandl,dc=com"

Tandaan na ang Set-Location command ay gumagamit ng distinguished name (DN) ng aking AD domain. Ito ay kinakailangan para sa tamang nabigasyon. Pagkatapos mag-navigate sa direktoryo ng domain (tulad ng ipinahiwatig ng AD:\dc=cpandl,dc=com prompt sa PowerShell), maaari mong gamitin ang Get-ChildItem command para makita ang top-level na istraktura ng AD (Figure 3).


Figure 3: Pagtingin sa pinakamataas na antas ng AD hierarchy

Kung gusto mong tingnan ang mga user sa isang organizational unit (OU) SDM, pagkatapos ay upang mag-navigate sa OU na ito, ilagay lang ang:

Itakda ang Lokasyon "OU=SDM"

Ang linya ng command ng PowerShell ay magmumukhang AD:\ou=SDM,dc=cpandl,dc=com. Naka-on yugtong ito maaari mong gamitin ang Get-ChildItem command upang makita ang lahat ng object ng user sa OU na ito. Kung gusto kong baguhin ang Description property sa user object na kumakatawan sa aking Darren Mar-Elia user account. May team para dito! Binibigyang-daan ka ng Set-ItemProperty command na baguhin ang isang property sa isang AD object. Kung gusto mong baguhin ang paglalarawan ng user account sa Chief Techie, patakbuhin ang command:

Set-ItemProperty -Path ".\CN=Darren Mar-Elia" ` -Pangalan "Paglalarawan" -Value "Chief Techie"

Tulad ng nakikita natin, ang parameter na -Path ay ginagamit dito upang tukuyin ang aking user account sa kasalukuyang direktoryo. Ginagamit ko rin ang parameter na -Name upang isaad na dapat baguhin ang katangian ng Paglalarawan, at ang parameter na -Value upang isaad ang paglalarawan ng Chief Techie.

Tandaan na kung gusto mong mahanap ang lahat ng bagay na may partikular na halaga ng property, maaari mong gamitin ang Get-ItemProperty. Kung gusto mo lang makakuha ng reference sa isang AD object, gamitin ang Get-Item.

Tulad ng nakikita mo, ang pagtatrabaho sa AD sa ganitong paraan ay medyo simple. Ang mekanismo ay halos hindi angkop para sa maramihang mga pagbabago, ngunit ito ay maginhawa para sa pagtatrabaho sa AD bilang isang file system. Gayunpaman, nalaman ko na karamihan sa mga administrator ay gumagamit ng mga command sa halip na ang PS AD drive upang pamahalaan ang AD. Tingnan natin kung paano gumagana ang ilan sa mga utos na ito.

Paglalapat ng Active Directory Commands

Ang module para sa AD na kasama ng Windows 7 ay naglalaman ng 76 na utos para sa pamamahala ng AD. Magagamit ang mga ito para sa halos anumang layunin, kabilang ang paghahanap ng mga bagay sa AD, paggawa at pagtanggal ng mga bagay sa AD, at pagmamanipula ng impormasyon tungkol sa mga setting ng AD (tulad ng forest mode at pinong patakaran ng password). Karaniwang pinagsama-sama ang mga utos ng mga pandiwa gaya ng Add-, Remove-, Get-, at Set-. Tandaan na hindi lahat ng Get- command ay may katumbas na Set- command at vice versa, kaya kung minsan ay nangangailangan ng pagsisikap upang mahanap nais na utos para sa gawain. Halimbawa, maaari mong itakda ang antas ng functionality ng gubat ng AD gamit ang Set-ADForestMode, ngunit upang malaman ang kasalukuyang antas ng functionality ng kagubatan, dapat mong gamitin ang Get-ADForest command at tingnan ang ForestMode property sa ibinalik na object.

Tingnan natin ang ilang karaniwang gawain na maaaring gawin gamit ang mga utos ng AD. Sa partikular, ipapakita nito sa iyo kung paano magdagdag ng mga user account, pamahalaan ang membership ng grupo, i-reset ang mga password ng user account, at maghanap ng mga bagay sa AD.

Pagdaragdag ng mga user account

Ang New-ADUser command ay nagbibigay ng madaling paraan upang magdagdag ng mga user account sa AD. Kung kailangan mong magdagdag ng bagong user account na pinangalanang Bill Smith sa SDM OU, kung gayon sa pinakasimpleng kaso, maaari kang lumikha ng bagong user account gamit ang command:

New-ADUser -Pangalan "Bill Smith" -SamAccountName "bsmith" ` -GivenName "Bill" -Surname "Smith" ` -DisplayName "Bill Smith" -Path "OU=SDM,DC=cpandl,DC=com"

Ang command na ito ay pumapasok sa pangunahing impormasyon ng user account. Sa partikular, ang parameter na -SamAccountName ay ginagamit upang ibigay ang pangalan ng SAM account na kinakailangan upang gawin ang object ng user. Ginagamit din ang parameter na –Path para sabihin sa command kung saan ilalagay ang object, sa kasong ito ang SDM OU sa domain ng cpandl.com. Bilang karagdagan, ang pangalan ng user (-GivenName parameter), apelyido (-Surname parameter), at display name (-DisplayName parameter) ay tinukoy.

Ang pagpapatakbo ng command na ito ay lilikha ng isang user account, ngunit may dalawang problema. Una, idi-disable ang account. Pangalawa, ang account ay hindi magkakaroon ng password na nauugnay dito, na kinakailangan sa karamihan ng mga domain.

Upang maiwasang i-activate ang account at magtalaga ng password nang hiwalay, maaari mong baguhin ang New-ADUser command. Awtomatikong papaganahin ng New-ADUser ang account kung tinukoy mo ang -Enabled $true na opsyon sa command. Ang pag-activate ay nangangailangan ng isang password, kaya dapat mo ring tukuyin ito sa utos.

Maaari mong gamitin ang parameter na –AccountPassword para magbigay ng password. Gayunpaman, hindi mo maaaring ipasok ang password sa plain text sa command line. Ang pagpipiliang ito ay nangangailangan na ang password ay ipasok sa isang secure na string (iyon ay, ng data type SecureString). Mayroong dalawang paraan upang i-convert ang password sa isang secure na string, at sa parehong mga kaso ay ginagamit ang isang variable.

Ang unang paraan ay gumagamit ng ConvertTo-SecureString command, na nagko-convert ng mga plain text string upang ma-secure ang mga string. Halimbawa, kung kailangan mong baguhin ang password [email protected] sa isang secure na string at italaga ito sa $pwd variable, patakbuhin ang command:

$pwd = ConvertTo-SecureString -string " [email protected]» ` -AsPlainText –puwersa

Hindi ito ang pinakasecure na paraan ng pagtatalaga ng password, dahil maaaring may tumingin sa iyong balikat habang ipinasok mo ang command. Ang isang mas maaasahang paraan ay kung ang New-ADUser command ay humihingi ng password at itinago ang mga character na iyong ipinasok. Magagawa ito gamit ang Read-Hostcmdlet command gamit ang -AsSecureString parameter:

$pwd = Read-Host -AsSecureString

Pagkatapos isagawa ang utos na ito, makikita mo ang pamilyar na simbolo na "*" sa screen kapag ipinasok ang password. Kapag tapos ka nang pumasok, pindutin ang Enter key.

Kapag ang password ay naka-imbak sa $pwd variable, maaari mo itong ipasa sa New-ADUser command:

New-ADUser -Pangalan"Bill Smith"-SamAccountName"bsmith"` -GivenName"Bill"-Surname"Smith"` -DisplayName"Bill Smith"` -Path"OU=SDM,DC=cpandl,DC=com"` - Pinagana ang $true -AccountPassword $pwd

Tulad ng nakikita natin, ang command ay naglalaman ng mga opsyon na -Enabled at -AccountPassword, na nagpapagana sa account at ligtas na nagtalaga dito ng password.

Ang paggawa ng mga user account nang paisa-isa ay isang maayos na paraan, ngunit minsan kailangan mong gumawa ng maraming account nang sabay-sabay. Mahusay ang PowerShell para sa layuning ito. Halimbawa, kung kailangan mong lumikha ng tatlong user account, maaari kang maghanda ng comma-separated value (CSV) file na naglalaman ng impormasyon ng account, at pagkatapos ay gamitin ang Import-CSV na command upang ipasa ang impormasyong iyon sa New-ADUser.

Ipinapakita ng Figure 4 ang isang CSV file na pinangalanang userlist.csv.

Tandaan na sa file na ito, tumutugma ang mga heading ng column sa mga pangalan ng parameter na ibinigay sa nakaraang command na New-ADUser. Ito ay ginawa ng kusa. Kapag naipasa ang data ng CSV sa New-ADUser, kukunin ng command ang mga pangalan ng parameter na ito mula sa pipeline ng PowerShell at hindi na kailangang tukuyin sa mismong command. Narito ang utos na ginamit upang lumikha ng tatlong user account:

Import-CSV -Path C:\data\userlist.csv | New-ADUser -Pinagana ang $true -AccountPassword $pwd

Gaya ng nakikita mo, ang mga linya ng output ng Import-CSV command ay mapupunta sa New-ADUser command. Kinikilala ng pipeline na ang mga heading ng column sa CSV file ay mga pangalan ng parameter at ang iba pang mga row ay naglalaman ng mga value, kaya kailangan lang nitong magbigay ng mga parameter na -Enabled at -AccountPassword. Ito ay isang mahusay na kakayahan sa pipeline. Ginagawa nitong mas mahusay ang paggamit ng PowerShell para sa mga ganitong uri ng mga gawain sa automation.

Pamamahala ng pagiging miyembro ng grupo

Ang pagdaragdag ng mga user at computer account ay isang karaniwang gawain sa pamamahala ng AD. Sa tulong ng AD module, medyo madali itong gawin. Gamit ang Add-ADGroupMember command, maaari kang magdagdag ng isa o higit pang mga account sa isang grupo. Halimbawa, kung gusto mong magdagdag ng tatlong bagong user sa pangkat ng Mga Gumagamit sa Marketing. Ang pinakamadaling paraan ay ang paggamit ng command:

Add-ADGroupMember -Identity»Marketing Users«` -Miyembro jadams,tthumb,mtwain

Sa command na ito, ang -Identity parameter ay ginagamit upang ibigay ang pangalan ng grupo. Ginagamit din ang opsyong -Members para ibigay ang mga pangalan ng SAM account ng mga user. Kung maraming pangalan ng SAM account, dapat na tukuyin ang mga ito sa isang comma delimited file.

Maaari mong pagsamahin ang mga hakbang sa paggawa ng tatlong account at pagdaragdag ng mga ito sa pangkat ng Mga Gumagamit ng Marketing sa isang command upang makumpleto ang gawain sa isang hakbang. Gayunpaman, hindi sinusuportahan ng Add-ADGroupMember command ang pagpasa ng mga pangalan ng miyembro ng grupo sa pipeline. Samakatuwid, dapat mong gamitin ang Add-ADPrincipalGroupMembership command kung gusto mong gamitin ang pipeline. Maaaring kunin ng command na ito ang user, computer, o pangkat na mga bagay bilang input mula sa pipeline at idagdag ang mga bagay na iyon sa tinukoy na grupo.

Maaari mong pagsamahin ang pagpapatakbo ng paglikha ng mga user sa pagpapatakbo ng pagdaragdag ng mga bagong user sa pangkat ng Mga Gumagamit sa Marketing sa isang utos tulad ng sumusunod:

Import-CSV -Path C:\data\userlist.csv | New-ADUser -Pinagana ang $true -AccountPassword $pass ` -PassThru | Add-ADPrincipalGroupMembership ` -MemberOf"Marketing Users"

Tandaan na ang -PassThru parameter ay naidagdag sa New-ADUser na bahagi ng command. Ang parameter na ito ay nagtuturo sa New-ADUser na ipasa ang mga nabuong object ng user sa pipeline. Kung hindi tinukoy ang parameter na ito, mabibigo ang Add-ADPrincipalGroupMembership command.

Kapansin-pansin din na ang parameter na -MemberOf lang ang ginagamit upang tukuyin ang pangalan ng grupo sa seksyong Add-ADPrincipalGroupMembership ng command. Ginagawa ng pipeline ang natitira sa pamamagitan ng pagdaragdag ng bawat isa sa tatlong user sa pangkat ng Mga Gumagamit sa Marketing.

Kaya, sa isang command ng PowerShell, tatlong bagong user ang ginawa, inilagay sa isang OU, binigyan ng mga password, at idinagdag sa pangkat ng Mga Gumagamit sa Marketing. Ngayon tingnan natin ang ilang iba pang karaniwang gawain sa pagpapanatili ng AD na maaaring i-automate gamit ang PowerShell at ang AD module.

I-reset ang mga password ng user account

Minsan kailangan ng mga user na i-reset ang password ng kanilang account. Madali mong ma-automate ang gawaing ito gamit ang Set-ADAccountPassword na utos sa pamamagitan ng pagbabago o pag-reset ng password ng account. Upang baguhin ang password, dapat mong malaman ang lumang password at magpasok ng bago. Para i-reset ang iyong password, magbigay lang ng bagong password. Gayunpaman, kailangan mo ng pahintulot ng I-reset ang Password sa object ng user sa AD upang ma-reset ang password.

Tulad ng -AccountPassword na opsyon ng New-ADUser command, ang Set-ADAccountPassword na command ay gumagamit ng SecureString data type para sa mga password, kaya dapat mong gamitin ang isa sa mga paraan upang i-convert ang mga plain text na password upang ma-secure ang mga string. Halimbawa, kung gusto mong i-reset ang password para sa user account na Tom Thumb, pagkatapos ay pagkatapos i-save ang bagong password bilang secure na string sa $pass variable, maaari mong patakbuhin ang command:

Set-ADAccountPassword -Identity"tthumb"` -NewPassword $pass –I-reset

Sa command na ito, ginagamit ko ang -Identity parameter para magtalaga ng pangalan ng SAM account sa Tom Thumb user account. Ipinasok ko rin ang opsyong -NewPassword na may variable na $pass para magbigay ng bagong password. Sa wakas, ang -Reset na opsyon ay ibinibigay upang ipahiwatig na ang isang pag-reset ay ginagawa sa halip na isang pagbabago ng password.

Isa pang opsyonal na gawain: i-toggle ang flag ng user account ni Tom Thumb para pilitin siyang palitan ang kanyang password sa susunod na mag-log in siya. Ito ay isang karaniwang pamamaraan pagdating sa pag-reset ng password ng isang user. Maaaring isagawa ang gawaing ito gamit ang Set-ADUser command sa pamamagitan ng pagtatakda ng -ChangePasswordAtLogon parameter sa $true:

Set-ADUser -Identity tthumb -ChangePasswordAtLogon $true

Lumilitaw ang tanong kung bakit hindi ginamit ang pipeline para i-pipe ang output ng Set-ADAccountPassword command sa Set-ADUser command upang maisagawa ang parehong operasyon sa isang PowerShell command. Sinubukan ko ang diskarteng ito, hindi ito gumana. Marahil ay may ilang limitasyon sa utos ng Set-ADAccountPassword na pumipigil sa isang utos na matagumpay na tumakbo. Sa anumang kaso, sapat na ang pag-toggle sa flag gamit ang Set-ADUser command, tulad ng ipinapakita sa itaas.

Paghahanap ng Active Directory Objects

Ang isa pang karaniwang gawain ng AD ay ang paghahanap ng mga bagay sa AD na tumutugma sa ilang pamantayan. Halimbawa, mahahanap mo ang lahat ng computer na nagpapatakbo ng partikular na bersyon ng operating system ng Windows sa isang AD domain. Ang Get-ADObject command ay ang pinaka-maginhawang LDAP lookup command. Halimbawa, upang mahanap ang mga server ng Server 2008 R2 sa domain ng cpandl.com, ginamit ang command:

Get-ADObject -LDAPFilter ` "(&(operatingSystem=Windows Server 2008 R2 Enterprise)` (objectClass=computer))"-SearchBase"dc=cpandl,dc=com"` -SearchScope Subtree

Gumagamit ang command na ito ng tatlong parameter upang makumpleto ang gawain: -LDAPFilter, -SearchBase, at -SearchScope. Ang parameter na -LDAPFilter ay kumukuha ng karaniwang query sa LDAP bilang input. Ang halimbawang ito ay nagtatanong ng lahat ng mga bagay sa computer na mayroong OperatingSystem attribute na nakatakda sa Windows Server 2008 R2 Enterprise. Ang parameter na -SearchBase ay nagsasabi sa command kung saan magsisimulang maghanap sa AD hierarchy. Sa kasong ito, ang paghahanap ay isinasagawa mula sa root directory ng AD domain, ngunit hindi mahirap limitahan ang paghahanap sa isang partikular na OU. Sinasabi ng parameter na -SearchScope ang command kung i-crawl ang lahat ng container sa ilalim ng base ng paghahanap, sa paghahanap ng mga tinukoy na bagay. Sa kasong ito, ginagamit ang parameter ng Subtree para suriin ng command ang lahat ng pinagbabatayan na container.

Kapag pinatakbo mo ang command, ang mga bagay na tumutugma sa pamantayan ay ipapakita. O maaari mong ipadala ang mga resulta sa isa pang command upang iproseso ang mga nahanap na bagay.

Tandaan na para sa malalaking paghahanap, kapaki-pakinabang na gamitin ang parameter na -ResultPageSize upang makontrol ang pagination ng mga resulta ng paghahanap. Karaniwan kong itinatakda ang parameter na ito sa 1000 at ang utos ng Get-ADObject ay nagbabalik ng 1000 na bagay sa isang pagkakataon. Kung hindi, maaaring hindi mo makuha ang inaasahang resulta dahil ang bilang ng mga ibinalik na bagay ay lumampas sa maximum na pinapayagan ng itinakda ng patakaran para sa isang kahilingan sa paghahanap.

Ang isa pang command sa paghahanap na ibinigay ng Microsoft ay Search-ADAccount. Ang utos na ito ay lalong kapaki-pakinabang para sa paghahanap gamit ang iba't ibang mga paunang natukoy na kundisyon, tulad ng mga hindi pinaganang account, mga account na may mga nag-expire na password, at mga naka-lock na account. Halimbawa, hinahanap ng sumusunod na command ang lahat ng user account na may mga nag-expire na password sa SDM OU:

Search-ADAccount -PasswordExpired -UsersOnly ` -SearchBase"OU=sdm,dc=cpandl,dc=com"` -SearchScope OneLevel Search-ADAccount -PasswordExpired -UsersOnly ` -SearchBase"OU=sdm",dc=c=com ` -SearchScope OneLevel

Ginagamit ng command na ito ang parameter na -PasswordExpired para tukuyin na kailangan ang mga account na may mga nag-expire na password. Tinutukoy ng parameter na -UsersOnly na ang mga bagay ng user lang ang dapat hanapin (iyon ay, ibukod ang mga bagay na "computer"). Tulad ng sa nakaraang halimbawa, ang -SearchBase at –SearchScope na mga parameter ay ginagamit upang tukuyin ang saklaw ng paghahanap. Ngunit sa kasong ito, ginagamit ko ang OneLevel parameter upang maghanap lamang sa pinakamalapit na OU (iyon ay, hindi kasama ang anumang mga OU ng bata).

Ito ay isang maikling pagtingin lamang sa AD module, ngunit umaasa ako na mayroon kang ideya kung ano ang kaya nito. Tulad ng nabanggit sa itaas, mayroong higit sa 70 mga utos sa module. Ang mga paksang hindi sakop sa artikulong ito ay kinabibilangan ng pagtanggal ng mga bagay gamit ang Remove- command, pagpapanumbalik ng mga tinanggal na bagay gamit ang Restore-ADObject command, at pag-alis ng UAC properties sa user object gamit ang Set-ADAccountControl command. Mayroong mga utos para sa halos anumang gawaing administratibo ng AD.



Aralin 7. Pangangasiwa ng Active Directory.

Ang proseso ng pangangasiwa ng Active Directory ay upang pamahalaan ang:

  • Mga domain ng Active Directory;
  • istraktura ng direktoryo ng domain;
  • mga bagay ng domain (mga user, contact, computer, grupo, printer, atbp.);
  • Mga site at network ng Active Directory;
  • pagtitiklop ng datos.

Ang lahat ng mga gawaing ito ay nalulutas gamit ang tatlong management console na naka-install sa panahon ng pag-install ng Active Directory sa isang domain controller:

  • Active Directory - Mga Domain at Trust
  • Active Directory - Mga User at Computer
  • Mga Site at Serbisyo ng Active Directory

Sa iba pang mga computer sa domain, maaaring i-install ang mga console na ito bilang bahagi ng administrative utilities package.

Paglalarawan ng mga bagay na Active Directory.

Gumagamit ang lahat ng console ng pamamahala ng Active Directory ng isang set ng mga icon upang magpakita ng mga object ng direktoryo. Nasa ibaba ang lahat ng pangunahing mga object ng Active Directory at ang kanilang mga kaukulang icon. Tutulungan ka ng impormasyong ito na mag-navigate sa iyong Active Directory nang mas madali.

Aktibong Direktoryo

Kinakatawan ang Active Directory sa kabuuan. Halos hindi na matagpuan sa mga tool sa pamamahala, maliban sa mga search window at pagpili ng bagay

Kumakatawan sa isang domain ng Windows. Binibigyang-daan kang pamahalaan ang mga pangkalahatang setting ng domain

lalagyan, folder

Kumakatawan sa isang simpleng lalagyan na bagay. Ang ganitong mga bagay ay maaari lamang gawin ng operating system at kadalasang nabubuo kapag naka-install ang Active Directory.

Unit ng organisasyon

Kinakatawan ang OP. Ginagamit ang container object na ito upang bumuo ng hierarchy ng mga container na naglalaman ng iba pang mga object.

Gumagamit

Kumakatawan sa isang user account. Ang bagay ay naglalaman ng isang malaking bilang ng mga katangian na naglalarawan sa gumagamit

Kumakatawan sa isang user na hindi miyembro ng isang domain. Ginagamit ang mga contact upang mag-imbak ng impormasyon tungkol sa mga panlabas na user sa direktoryo, hindi sila mga account at hindi pinapayagan ang mga user na magrehistro sa domain

Kumakatawan sa isang pangkat ng mga user at karaniwang ginagamit upang tumulong na pamahalaan ang mga pahintulot at pribilehiyo

Computer

Kumakatawan sa isang solong computer sa isang lokal na network. Para sa mga computer na nagpapatakbo ng Windows NT, 2000 at mas bago, ang Windows ay ang computer account. Ang bagay ay naglalaman ng pangunahing impormasyon tungkol sa computer at nagbibigay-daan sa iyong pamahalaan ito

Controller ng domain

Kumakatawan sa iisang Windows domain controller. Sa snap-in ng Active Directory Users and Computers, ipinapakita ng mga controllers ng domain ang parehong mga icon gaya ng mga regular na computer. Ang tinukoy na icon ay ginagamit upang ipakita ang mga controller ng domain sa snap-in ng Active Directory Sites and Services. Binibigyang-daan kang pamahalaan ang mga setting ng controller ng domain

Kumakatawan sa isang network printer. Ang bagay ay isang sanggunian sa isang nakabahaging printer. Ang mga bagay ng ganitong uri ay maaaring idagdag sa catalog nang manu-mano o awtomatiko. Ang manu-manong pagdaragdag ay posible lamang para sa mga printer na nakakonekta sa mga computer na nagpapatakbo ng mga bersyon na mas maaga kaysa sa Windows 2000

Nakabahaging mapagkukunan

Kumakatawan sa isang nakabahaging folder. Ang object ay isang reference sa isang network share at hindi naglalaman ng anumang data

Mga Pagpipilian sa Paglilisensya

Kinakatawan ang pandaigdigang mga setting ng paglilisensya ng site. Nagbibigay-daan sa iyong sentral na pamahalaan ang mga lisensya para sa mga produkto ng software at ang kanilang pagtitiklop sa loob ng site

Patakaran sa Domain

Kumakatawan sa object ng patakaran ng domain. Binibigyang-daan kang i-configure ang mga setting ng patakaran sa antas ng domain

Patakaran sa controller ng domain

Kumakatawan sa isang object ng patakaran ng domain controller. Binibigyang-daan kang i-configure ang mga setting ng patakaran para sa lahat ng mga controller ng domain

Patakaran ng Grupo

Kumakatawan sa isang di-makatwirang GPO. Binibigyang-daan kang pamahalaan ang mga setting ng patakaran para sa mga object ng container kung saan inilalapat ang patakaran.

Kumakatawan sa isang site ng Active Directory. Binibigyang-daan kang pamahalaan ang mga setting nito. Naglalaman ng mga sanggunian sa mga object ng domain controller, mga link ng site, mga setting ng site

Tambalan

Kinakatawan ang isang koneksyon sa pagitan ng mga controller ng domain sa loob ng isang site. Binibigyang-daan kang pamahalaan ang mga setting ng topology at replikasyon sa pagitan ng mga controller ng domain sa loob ng isang site

Link ng site

Kumakatawan sa isang solong relasyon sa pagitan ng mga site. Binibigyang-daan kang pamahalaan ang topology at mga parameter ng intersite replication

Mga setting ng site

Kinakatawan ang configuration object para sa isang site o domain controller sa isang site. Binibigyang-daan kang pamahalaan ang mga setting ng pagkopya sa buong site o kung paano nakikipag-ugnayan ang isang domain controller sa isang site

Kumakatawan sa isang subnet na nauugnay sa isang partikular na site. Binibigyang-daan kang tukuyin ang mga hangganan ng IP network

Icon

Isang bagay

Paglalarawan

I-reload ang server.

Ilagay ang password para sa Directory Service Restore Mode.

Kumpirmahin ang mga lokasyon ng folder para sa pag-save ng mga AD file.

Kumpirmahin ang pangalan ng domain ng NetBIOS.

7. Piliin ang antas ng seguridad para sa mga user at grupo:

· Mga pahintulot na katugma sa pre-Windows 2000 server– kung may mga program o serbisyo na tumatakbo sa mga server na nagpapatakbo ng Windows NT sa domain, o kung ang computer ay miyembro ng isang domain na nagpapatakbo ng Windows NT.

· Ang mga pahintulot ay katugma lamang sa Windows 2000 server at Windows Server 2003– kung ang mga server lamang na nagpapatakbo ng Windows 2000 server at Windows Server 2003 ay tumatakbo sa domain.

Ang isang hanay ng mga snap-in sa pamamahala ng Active Directory ay ginagamit upang pangasiwaan ang Active Directory. Binubuo ito ng apat na rigs:

1 Active Directory User at Computers (mga user at computer) - idinisenyo upang pangasiwaan ang mga user account at computer sa domain.

2 Mga Domain at Trust ng Aktibong Direktoryo (mga domain at tiwala) - ginagamit upang magtatag ng mga ugnayan ng tiwala sa pagitan ng mga domain.

3 Mga Site at Serbisyo ng Active Directory (mga site at serbisyo) - idinisenyo upang pamahalaan ang mga site at link ng site.

4 DNS - pangangasiwa ng DNS server na isinama sa Active Directory.

Mga User at Computer ng Active Directory.

Ang mga user account at computer account ng Active Directory ay kasing pisikal na entity bilang isang computer o user. Ang mga user account ay maaari ding gamitin bilang mga nakalaang entry ng serbisyo para sa ilang mga application.

User account– isang Active Directory object na naglalaman ng lahat ng impormasyon na tumutukoy sa isang user sa Windows operating system. Kasama sa impormasyong ito ang:

personal na data ng user (pangalan, telepono, e-mail, postal address, impormasyon tungkol sa organisasyon);

· Mga setting ng account (kinakailangan ang username at password para sa pag-login ng user, petsa ng pag-expire ng account, pamamahala ng password, pag-encrypt at mga setting ng pagpapatunay);

ang mga pangalan ng mga pangkat kung saan miyembro ang gumagamit;

profile ng user (naglalaman ng impormasyon tungkol sa mga setting para sa isang partikular na user, tulad ng mga setting ng desktop, patuloy na koneksyon sa network, at mga setting ng application);

Iba pang impormasyon (profile ng mga serbisyo ng terminal, remote control, pamamahala ng session, atbp.).

Account sa computer- isang object ng Active Directory na natatanging kinikilala ang isang computer sa isang domain. Ang computer account ay tumutugma sa pangalan ng computer sa domain. Ang isang computer na ang account ay naidagdag sa isang domain ay maaaring lumahok sa mga pagpapatakbo ng network na gumagamit ng mga nilalaman ng Active Directory. Halimbawa, ang isang workstation na idinagdag sa isang domain ay nakikilala ang mga account at pangkat na umiiral sa Active Directory.



@ Ang mga computer na nagpapatakbo ng Windows 95, Windows 98, at Windows Me ay walang mga advanced na tampok sa seguridad at hindi maaaring magtalaga ng mga computer account.

Grupo ay isang koleksyon ng mga user at computer account, contact, at iba pang grupo na maaaring pamahalaan bilang isang entity. Ang mga user at computer na kabilang sa isang partikular na grupo ay tinatawag na mga miyembro ng grupo. Ang mga pangkat sa Active Directory ay mga object ng direktoryo na naninirahan sa loob ng mga object ng container ng domain at unit ng organisasyon.

Binibigyang-daan ka ng mga pangkat sa Active Directory na:

· Pasimplehin ang pangangasiwa sa pamamagitan ng pagtatalaga ng mga pahintulot sa pagbabahagi sa isang grupo sa halip na sa mga indibidwal na gumagamit. Nagbibigay ito ng parehong access sa mapagkukunan para sa lahat ng miyembro ng pangkat na ito;

italaga ang pangangasiwa sa pamamagitan ng pagtatalaga kaagad ng mga karapatan sa mga user para sa buong grupo sa pamamagitan ng patakaran ng grupo, at pagkatapos ay idagdag ang mga kinakailangang miyembro sa grupo, na dapat ay may parehong mga karapatan sa grupo;

Ang mga grupo ay nailalarawan sa pamamagitan ng kanilang saklaw at uri. Tinutukoy ng saklaw ng isang pangkat ang saklaw kung saan nalalapat ang pangkat sa loob ng isang domain o kagubatan. May tatlong magkakaibang saklaw: pangkalahatan, pandaigdigan, at lokal na domain.

· Lokal na domain (lokal na naka-embed)- Ang mga miyembro ng mga pangkat na may lokal na saklaw ng domain ay maaaring magsama ng iba pang mga grupo at account mula sa mga domain ng Windows Server 2003, Windows 2000, o Windows NT at maaari lamang bigyan ng mga pahintulot sa loob ng domain.

@ Domain lokal na mga grupo ay dapat gamitin upang kontrolin ang access sa mga mapagkukunan sa loob ng parehong domain.

· Global- Ang mga miyembro ng pandaigdigang saklaw na grupo ay maaari lamang magsama ng iba pang mga grupo at account mula sa domain kung saan tinukoy ang grupo, at maaari silang bigyan ng mga pahintulot sa anumang domain sa kagubatan.

Ang @Global-scoped group ay inirerekomenda para sa pamamahala ng mga object ng direktoryo na nangangailangan ng pang-araw-araw na pagpapanatili. Ang mga halimbawa nito ay mga user at computer account. Dahil ang mga pangkat na nasasakupan sa buong mundo ay hindi gumagaya sa labas ng kanilang domain, ang mga account na nakapaloob sa mga naturang pangkat ay maaaring mabago nang madalas nang hindi nagdudulot ng karagdagang trapikong nauugnay sa pagtitiklop sa pandaigdigang catalog.

· Pangkalahatan- Ang mga miyembro ng pangkalahatang saklaw na mga grupo ay maaaring magsama ng iba pang mga grupo at account mula sa anumang domain sa domain tree o kagubatan, at maaari silang bigyan ng mga pahintulot sa anumang domain sa domain tree o gubat.

@ Magtalaga ng pangkalahatang saklaw sa mga pangkat na sumasaklaw sa mga domain. Upang gawin ito, idagdag ang mga account sa mga pangkat na may pandaigdigang saklaw, at pagkatapos ay ilagay ang mga pangkat na iyon sa mga pangkat na may pangkalahatang saklaw. Sa diskarteng ito, ang pagbabago ng membership ng mga globally scoped group ay hindi makakaapekto sa mga universally scoped group.


Tinutukoy ng uri ng pangkat kung magagamit ang pangkat upang magtalaga ng mga pahintulot sa mga mapagkukunan o sa mga listahan lamang ng pamamahagi ng email.

Mga grupo ng seguridad– magbigay ng mahusay na kontrol sa pag-access sa mga mapagkukunan ng network. Ang paggamit ng mga pangkat ng seguridad ay nagbibigay-daan sa iyong gawin ang sumusunod:

· Magtalaga ng mga karapatan ng user sa isang pangkat ng seguridad sa Active Directory. Tinutukoy ng mga karapatan ng user na itinakda para sa mga pangkat ng seguridad kung ano ang magagawa ng isang miyembro ng pangkat na iyon sa loob ng saklaw ng domain (o kagubatan). Awtomatikong itinatakda ang mga karapatan ng user para sa mga pangkat ng seguridad sa panahon ng pag-install ng Active Directory upang matulungan ang mga administrator na matukoy ang tungkulin ng mga administratibong user sa isang domain. Halimbawa, ang isang user na idinagdag sa pangkat ng Mga Backup Operator sa Active Directory ay nakakakuha ng kakayahang mag-back up at mag-restore ng mga file at direktoryo sa anumang domain controller sa domain. Maaari kang magtakda ng mga karapatan ng user sa isang pangkat ng seguridad gamit ang Patakaran ng Grupo upang magtalaga ng mga partikular na gawain. Kailangang mag-ingat kapag nagtatalaga ng mga itinalagang gawain. Ang isang walang karanasan na user na binigyan ng masyadong maraming karapatan sa isang grupo ng seguridad ay maaaring magdulot ng malubhang pinsala sa network.

· Magtalaga ng mga pahintulot sa mapagkukunan sa mga pangkat ng seguridad. Huwag malito ang mga pahintulot sa mga karapatan ng user. Nakatakda ang mga pahintulot para sa mga pangkat ng seguridad na gumagamit ng mga nakabahaging mapagkukunan. Tinutukoy ng mga pahintulot kung sino ang maaaring mag-access sa isang ibinigay na mapagkukunan at ang antas ng pag-access, tulad ng ganap na kontrol. Ang ilang mga pahintulot na nakatakda sa mga object ng domain ay awtomatikong nakatakda para sa iba't ibang antas ng pag-access sa mga default na grupo gaya ng Mga Operator ng Account o Mga Operator ng Domain. Para sa higit pang impormasyon tungkol sa mga pahintulot, tingnan ang Access Control sa Active Directory.

Ang @ Security group ay nakalista sa mga selective access control table na tumutukoy sa mga pahintulot sa mga mapagkukunan at mga bagay. Dapat magtalaga ang mga administrator ng mga pahintulot sa mga mapagkukunan (nakabahaging mga file, printer, at iba pa) sa mga pangkat ng seguridad, hindi sa mga indibidwal na user. Isang beses itinatalaga ang mga pahintulot sa isang grupo, sa halip na magtalaga ng mga karapatan sa bawat indibidwal na user. Ang bawat account, kapag idinagdag sa isang grupo, ay makakakuha ng mga karapatan na itinakda para sa pangkat na iyon sa Active Directory at ang mga pahintulot na itinakda para sa pangkat na iyon sa mapagkukunan.

Mga pangkat sa pamamahagi– ginagamit lamang ng mga email application upang magpadala ng mga mensaheng email sa mga grupo ng mga user. Ang mga grupo ng pamamahagi ay hindi gumagamit ng seguridad, sa madaling salita, hindi sila maaaring isama sa mga selective access control table (DACLs). Kung ang isang pangkat ay ginawa upang kontrolin ang pag-access sa mga nakabahaging mapagkukunan, ang pangkat na ito ay dapat na isang pangkat ng seguridad.

Ang @ Security group ay maaari ding gamitin bilang mga email na destinasyon, tulad ng mga grupo ng pamamahagi. Ang isang mensaheng email na ipinadala sa isang grupo ay ipinapadala sa lahat ng mga miyembro ng grupo.

Mayroon ding mga grupo kung saan hindi mo maaaring i-edit o tingnan ang impormasyon ng membership. Ang mga pangkat na ito ay tinatawag na mga custom na pagkakakilanlan at ginagamit upang kumatawan sa iba't ibang mga user sa iba't ibang panahon, depende sa mga pangyayari.

(Anonymous na login, Lahat, Network, Interactive)

Halimbawa, kinakatawan ng pangkat ng Lahat ang lahat ng kasalukuyang user ng network, kabilang ang mga bisita at user mula sa ibang mga domain. Para sa higit pang impormasyon, tingnan ang Mga Espesyal na Pagkakakilanlan.

Ang mga user at computer account (pati na rin ang mga grupo) ay tinatawag na mga security principal. Ang mga punong-guro ng seguridad ay mga object ng direktoryo na awtomatikong itinalaga ng mga security ID (SID) para sa pag-access ng mga mapagkukunan ng domain. Ang user o computer account ay ginagamit para sa mga sumusunod na layunin:

pagpapatunay ng user o computer.

Payagan o tanggihan ang access sa mga mapagkukunan ng domain.

· pangangasiwa ng iba pang mga principal ng seguridad (upang kumatawan sa isang security principal mula sa isang external na pinagkakatiwalaang domain).

· mga aktibidad sa pag-audit na isinagawa gamit ang isang user o computer account.

Upang magtalaga ng mga karapatan sa parehong oras isang malaking bilang gumagamit ang mga gumagamit ng mga pangkat ng seguridad. Maaaring ipangkat ang mga account gamit ang mga unit ng organisasyon (mga lalagyan).

Upang matiyak ang seguridad ng pagpapatunay ng user, dapat kang lumikha ng hiwalay na mga account para sa bawat user ng network gamit ang " Mga User at Computer ng Active Directory ».

Ang bawat user account ng Active Directory ay may ilang mga setting na nauugnay sa seguridad na tumutukoy kung paano napatotohanan ang account na iyon kapag nagla-log on sa network.

Nakatuon sa paggamit ng PowerShell para pangasiwaan ang AD. Bilang panimulang punto, nagpasya ang may-akda na kumuha ng 10 karaniwang gawain sa pangangasiwa ng AD at tingnan kung paano sila mapapasimple gamit ang PowerShell:

  1. I-reset ang password ng user
  2. I-activate at i-deactivate ang mga account
  3. I-unlock ang user account
  4. Tanggalin ang iyong account
  5. Maghanap ng mga walang laman na grupo
  6. Magdagdag ng mga user sa isang pangkat
  7. Maglista ng mga miyembro ng pangkat
  8. Maghanap ng mga lipas na account sa computer
  9. I-deactivate ang computer account
  10. Maghanap ng mga computer ayon sa uri

Bilang karagdagan, ang may-akda ay nagpapanatili ng isang blog (sa PowerShell, siyempre), inirerekomenda naming tingnan - jdhitsolutions.com/blog. At ang pinaka-up-to-date na makukuha mo sa twitter niya twitter.com/jeffhicks.
Kaya, nasa ibaba ang pagsasalin ng artikulong "Nangungunang 10 Active Directory Tasks Solved with PowerShell".

Ang pamamahala sa Active Directory (AD) gamit ang Windows PowerShell ay mas madali kaysa sa iyong iniisip, at gusto kong patunayan ito sa iyo. Maaari mo lamang kunin ang mga script sa ibaba at gamitin ang mga ito upang malutas ang ilang mga gawain sa pamamahala ng AD.

Mga kinakailangan

Para magamit ang PowerShell para pamahalaan ang AD, may ilang kinakailangan na dapat matugunan. Ipapakita ko kung paano gumagana ang AD cmdlet sa isang halimbawa ng Windows 7 na computer.
Upang magamit ang mga cmdlet, dapat ay mayroon kang Windows Server 2008 R2 domain controller, o maaari mong i-download at i-install ang Active Directory Management Gateway Service sa mga legacy na DC. Basahin nang mabuti ang dokumentasyon bago i-install; Kinakailangan ang pag-reboot.
Sa panig ng kliyente, i-download at i-install (RSAT) para sa alinman sa Windows 7 o Windows 8. Sa Windows 7, kakailanganin mong buksan Mga Control Panel kabanata Mga programa at pumili I-on o I-off ang Mga Feature ng Windows. Hanapin Remote Server Administration Tools at palawakin ang seksyon Mga Tool sa Pangangasiwa ng Tungkulin. Pumili ng naaangkop na mga item para sa AD DS at AD LDS Tools, lalo na tandaan na dapat piliin ang item Active Directory Module para sa Windows PowerShell, tulad ng ipinapakita sa Figure 1. (Sa Windows 8, ang lahat ng mga tool ay pinili bilang default). Ngayon ay handa na kaming magtrabaho.

Figure 1 Pag-enable sa AD DS at AD LDS Tools

Naka-log in ako gamit ang isang account na may mga karapatan ng administrator ng domain. Karamihan sa mga cmdlet na ipapakita ko sa iyo ay magbibigay-daan sa iyo na tukuyin ang mga kahaliling kredensyal. Sa anumang kaso, inirerekumenda kong basahin ang tulong ( Humingi ng Tulong) at mga halimbawa na ipapakita ko sa ibaba.
Magsimula ng session ng PowerShell at i-import ang module:

PS C:\> Import-Module ActiveDirectory

Lumilikha ang pag-import ng bagong PSDrive, ngunit hindi namin ito gagamitin. Gayunpaman, makikita mo kung anong mga utos ang nasa na-import na module.

PS C:\> get-command -module ActiveDirectory

Ang kagandahan ng mga utos na ito ay kung maaari akong gumamit ng isang utos para sa isang AD object, maaari itong magamit para sa 10, 100, at kahit na 1000. Tingnan natin kung paano gumagana ang ilan sa mga cmdlet na ito.

Gawain 1: I-reset ang User Password

Magsimula tayo sa isang karaniwang gawain: pag-reset ng password ng isang user. Magagawa mo ito nang madali at simple sa pamamagitan ng cmdlet Set-ADAccountPassword. Ang nakakalito na bahagi ay ang bagong password ay dapat na kwalipikado bilang isang secure na string: isang piraso ng text na naka-encrypt at nakaimbak sa memorya para sa tagal ng session ng PowerShell. Una, gumawa tayo ng variable na may bagong password:
PS C:\> $new=Read-Host "Ipasok ang bagong password" -AsSecureString

Pagkatapos, magpasok ng bagong password:

Ngayon ay maaari na nating i-extract ang account (gamit ang samAccountnameang pinakamahusay na pagpipilian) at magtakda ng bagong password. Narito ang isang halimbawa para sa user na si Jack Frost:

PS C:\> Set-ADAccountPassword jfrost -NewPassword $new

Sa kasamaang palad, mayroong isang bug sa cmdlet na ito: -passthru, -Paano kung, At – Kumpirmahin hindi gumagana. Kung mas gusto mo ang shortcut, subukan ang sumusunod:

PS C:\>Set-ADAccountPassword jfrost -NewPassword(ConvertTo-SecureString -AsPlainText -String" [email protected]"-puwersa)

Natapos kong kailanganin ni Jack na baguhin ang kanyang password sa susunod na pag-log in ko, at ina-update ko ang account gamit Set-ADUser.

PS C:\> Set-ADUser jfrost -ChangePasswordAtLogon $True

Ang mga resulta ng cmdlet execution ay hindi nakasulat sa console. Kung kailangan itong gawin, gamitin –Totoo. Ngunit maaari kong malaman kung ang operasyon ay matagumpay o hindi sa pamamagitan ng pag-extract ng username gamit ang cmdlet Get-ADUser at pagtukoy sa ari-arian PasswordExpired tulad ng ipinapakita sa figure 2.


kanin. 2. Mga resulta ng Get-ADUser Cmdlet na may property na PasswordExpired

Bottom line: Ang pag-reset ng password ng user gamit ang PowerShell ay hindi mahirap sa lahat. Inaamin ko na ang pag-reset ng password ay madali din sa isang iglap. Mga User at Computer ng Active Directory mga console Microsoft Management Console (MMC). Ngunit ayos lang ang paggamit ng PowerShell kung kailangan mong magtalaga ng isang gawain, ayaw mong i-deploy ang nabanggit na snap-in, o i-reset ang iyong password bilang bahagi ng isang malaking automated na proseso ng IT.

Gawain 2: I-activate at i-deactivate ang mga account

Ngayon i-deactivate natin ang account. Patuloy kaming makikipagtulungan kay Jack Frost. Ginagamit ng code na ito ang parameter -Paano kung, na maaari mong makita sa iba pang mga cmdlet na gumagawa ng mga pagbabago upang subukan ang aking utos nang hindi ito pinapatakbo.

PS C:\> Disable-ADAccount jfrost -whatif What if: Nagsasagawa ng operasyon na "Itakda" sa Target na "CN=Jack Frost, OU=staff,OU=Testing,DC=GLOBOMANTICS,DC=local".

At ngayon, i-deactivate natin nang totoo:

PS C:\> Huwag paganahin-ADAccount jfrost

At pagdating ng oras para i-activate ang account, aling cmdlet ang tutulong sa atin?

PS C:\> Paganahin-ADAccount jfrost

Ang mga cmdlet na ito ay maaaring gamitin sa isang pipeline na expression, na nagbibigay-daan sa iyong i-activate o i-deactivate ang maraming account hangga't gusto mo. Halimbawa, ide-deactivate ng code na ito ang lahat ng account sa sales department (Sales)

PS C:\> get-aduser -filter "department -eq "sales"" | huwag paganahin-adaccount

Siyempre, pagsulat ng isang filter para sa Get-ADUser sa halip kumplikado, ngunit ito ay kung saan ang paggamit ng parameter -Paano kung kasama ang cmdlet Huwag paganahin-ADAccount dumating upang iligtas.

Gawain 3: I-unlock ang user account

Isaalang-alang ang isang sitwasyon kung saan ni-lock ni Jack ang kanyang account habang sinusubukang magpasok ng bagong password. Sa halip na subukang hanapin ang kanyang account sa pamamagitan ng GUI, ang pamamaraan ng pag-unlock ay maaaring gawin sa isang simpleng utos.

PS C:\> Unlock-ADAccount jfrost

Sinusuportahan din ng cmdlet ang mga parameter -Paano kung At - Kumpirmahin.

Gawain 4: Tanggalin ang account

Hindi mahalaga kung gaano karaming mga user ang iyong tatanggalin - madali itong gawin sa isang cmdlet Alisin-ADUser. Hindi ko gustong tanggalin ang Jack Frost, ngunit kung gusto ko, gagamitin ko ang code na ito:

PS C:\> Remove-ADUser jfrost -whatif What if: Nagsasagawa ng operasyon na "Remove" sa Target na "CN=Jack Frost,OU=staff,OU=Testing,DC=GLOBOMANTICS,DC=local".

O maaari akong magpasok ng maraming mga gumagamit at alisin ang mga ito sa isang simpleng utos:

PS C:\> get-aduser -filter "enabled -eq "false"" -property WhenChanged -SearchBase "OU=Employees, DC=Globomantics,DC=Local" | kung saan ($_.WhenChanged -le (Get-Date).AddDays(-180)) | Remove-ADuser -whatif

Hahanapin at aalisin ng command na ito ang lahat ng na-deactivate na Employees OU account na hindi nagbago sa loob ng 180 araw o higit pa.

Gawain 5: Paghahanap ng mga Empty Groups

Ang pamamahala ng grupo ay isang walang katapusang at walang pasasalamat na gawain. Mayroong maraming mga paraan upang makahanap ng mga walang laman na grupo. Ang ilang mga expression ay maaaring gumana nang mas mahusay kaysa sa iba, depende sa iyong organisasyon. Hahanapin ng code sa ibaba ang lahat ng pangkat sa domain, kabilang ang mga built-in na grupo.

PS C:\> get-adgroup -filter * | kung saan (-Hindi ($_ | get-adgroupmember)) | piliin ang pangalan

Kung mayroon kang mga grupo na may daan-daang miyembro, maaaring tumagal ang paggamit ng command na ito; Kumuha-ADGroupMember sinusuri ang bawat pangkat. Kung maaari mong limitahan o i-customize ito ay magiging mas mahusay.
Narito ang isa pang diskarte:

PS C:\> get-adgroup -filter "miyembro -notlike "*" -AND GroupScope -eq "Universal"" -SearchBase "OU=Groups,OU=Employees,DC=Globomantics, DC=local" | Piliin ang Pangalan, Grupo*

Hinahanap ng command na ito ang lahat ng Universal group na walang membership sa OU Groups at nagpi-print ng ilan sa mga property. Ang resulta ay ipinapakita sa Figure 3.


kanin. 3. Maghanap at mag-filter ng mga pangkalahatang pangkat

Gawain 6: Pagdaragdag ng mga User sa isang Grupo

Idagdag natin si Jack Frost sa Chicago IT group:

PS C:\> add-adgroupmember "chicago IT" -Mga miyembro jfrost

Oo, ganoon kasimple. Madali ka ring makakapagdagdag ng daan-daang user sa mga grupo, kahit na medyo awkward ito sa aking opinyon:

PS C:\> Add-ADGroupMember "Chicago Employees" -miyembro (get-aduser -filter "city -eq "Chicago"")

Ginamit ko ang parenthetical pipelined expression upang mahanap ang lahat ng user na may ari-arian ng Lungsod sa Chicago. Ang code sa mga panaklong ay naisakatuparan at ang mga resultang bagay ay ipinapasa sa parameter na –Member. Ang bawat user object ay idinaragdag sa Chicago Employees group. Hindi mahalaga kung nakikipag-ugnayan kami sa 5 o 5000 mga gumagamit, ito ay tumatagal lamang ng ilang segundo upang i-update ang mga membership ng grupo. Ang expression na ito ay maaari ding isulat gamit ang Para sa Bawat-Bagay na maaaring mas maginhawa:

PS C:\> Get-ADUser -filter "city -eq "Chicago"" | foreach(Add-ADGroupMember "Mga Empleyado sa Chicago" -Miyembro $_)

Gawain 7: Pagpapakita ng Listahan ng mga Miyembro ng Grupo

Baka gusto mong malaman kung sino ang nasa isang partikular na grupo. Halimbawa, dapat mong suriin nang pana-panahon kung sino ang nasa pangkat ng Mga Admin ng Domain:

PS C:\> Get-ADGroupMember "Mga Admin ng Domain"

Ipinapakita ng Figure 4 ang resulta.


kanin. 4. Mga miyembro ng pangkat ng Domain Admins

Ang cmdlet ay naglalabas ng AD object para sa bawat miyembro ng grupo. Paano naman ang mga nested group? Ang My Chicago All Users group ay isang koleksyon ng mga nested group. Para makakuha ng listahan ng lahat ng account kailangan ko lang gamitin ang parameter -Recursive.

PS C:\> Get-ADGroupMember "Chicago All Users" -Recursive | Piliin ang DistinguishedName

Kung gusto mong pumunta sa ibang paraan - upang mahanap kung aling mga pangkat ang user ay kabilang - gamitin ang pag-aari ng user Miyembro ng:

PS C:\> get-aduser jfrost -property Memberof | Piliin ang -ExpandProperty memberOf CN=NewTest,OU=Groups,OU=Employees, DC=GLOBOMANTICS,DC=local CN=Chicago Test,OU=Groups,OU=Employees, DC=GLOBOMANTICS,DC=local CN=Chicago IT,OU= Mga Grupo,OU=Empleyado, DC=GLOBOMANTICS,DC=local CN=Chicago Sales Users,OU=Groups,OU=Empleyado, DC=GLOBOMANTICS,DC=local

Ginamit ko ang parameter -ExpandProperty upang ipakita ang mga pangalan Miyembro ng parang mga string.

Gawain 8: Maghanap ng mga lipas na account sa computer

Madalas kong tanungin ang tanong na ito: "Paano ko mahahanap ang mga lumang account sa computer?". At lagi kong sinasagot: "Ano ang lipas na para sa iyo?" Ang mga kumpanya ay nag-iiba sa kanilang kahulugan kung kailan ang isang computer account (o user account, anuman) ay itinuturing na lipas na at hindi na magagamit. Para sa akin, binibigyang pansin ko ang mga account na ang mga password ay hindi nabago sa isang tiyak na tagal ng panahon. Ang panahong ito para sa akin ay 90 araw - kung hindi binago ng computer ang password kasama ang domain sa panahong ito, malamang na offline ito at luma na. Ginamit ang Cmdlet Kumuha-ADComputer:

PS C:\> get-adcomputer -filter "Passwordlastset -lt "1/1/2012"" -properties *| Pumili ng pangalan, passwordlastset

Ang filter ay mahusay na gumagana sa isang mahirap na halaga, ngunit ang code na ito ay ia-update para sa lahat ng mga computer account na hindi nagbago ng kanilang mga password mula noong Enero 1, 2012. Ang mga resulta ay ipinapakita sa Figure 5.


kanin. 5. Maghanap ng mga lumang account sa computer

Bilang kahalili, ipagpalagay na ikaw ay nasa antas ng functional na domain ng Windows 2003. I-filter ayon sa property LastLogontimeStamp. Ang value na ito ay ang bilang ng 100 nanosecond na pagitan mula noong Enero 1, 1601, at naka-store sa GMT, kaya medyo nakakalito ang pagtatrabaho sa value na ito:

PS C:\> get-adcomputer -filter "LastlogonTimestamp -gt 0" -properties * | piliin ang pangalan,lastlogontimestamp, @(Name="LastLogon";Expression=(::FromFileTime ($_.Lastlogontimestamp))),passwordlastset | SortLastLogonTimeStamp


kanin. 6. I-convert ang halaga ng LastLogonTimeStamp sa pamilyar na format

Para gumawa ng filter, kailangan kong mag-convert ng petsa, gaya ng Enero 1, 2012, sa tamang format. Ang conversion ay ginagawa sa FileTime:

PS C:\> $cutoff=(Get-Date "1/1/2012").ToFileTime() PS C:\> $cutoff 129698676000000000

Ngayon ay magagamit ko na ang variable na ito sa filter para sa Kumuha-ADComputer:

PS C:\> Get-ADComputer -Filter "(lastlogontimestamp -lt $cutoff) -o (lastlogontimestamp -hindi tulad ng "*")" -property * | Piliin ang Pangalan,LastlogonTimestamp,PasswordLastSet

Nahanap ng code sa itaas ang parehong mga computer na ipinakita sa Figure 5.

Gawain 9: I-deactivate ang computer account

Maaaring gusto mong i-deactivate ang mga ito kapag nakakita ka ng mga hindi aktibo o hindi napapanahong mga account. Upang gawin ito ay medyo simple. Gagamitin namin ang parehong cmdlet na ginamit namin sa mga user account. Maaari mong pinuhin ito gamit samAccountname account.

PS C:\> Disable-ADAccount -Identity "chi-srv01$" -whatif What if: Nagsasagawa ng operasyon na "Itakda" sa Target na "CN=CHI-SRV01, CN=Computers,DC=GLOBOMANTICS,DC=local".

O gamit ang pipeline expression:

PS C:\> get-adcomputer "chi-srv01" | Huwag paganahin-ADAccount

Magagamit ko rin ang aking code para maghanap ng mga lipas na account at i-deactivate ang lahat ng ito:

PS C:\> get-adcomputer -filter "Passwordlastset -lt "1/1/2012"" -properties *| Huwag paganahin-ADAccount

Gawain 10: Maghanap ng mga computer ayon sa uri

Madalas din akong tanungin kung paano maghanap ng mga computer account ayon sa uri, gaya ng mga server o workstation. Nangangailangan ito ng ilang pagkamalikhain sa iyong bahagi. Walang anuman sa AD na nagpapakilala sa server mula sa kliyente, maliban marahil sa OS. Kung nagpapatakbo ang iyong computer ng Windows Server 2008, kakailanganin mong gumawa ng ilang karagdagang hakbang.
Una kailangan mong kumuha ng listahan ng OS, at pagkatapos ay i-filter namin ang mga account ayon sa available na OS.

PS C:\> Get-ADComputer -Filter * -Properties OperatingSystem | Piliin ang OperatingSystem -natatangi | Pagbukud-bukurin ang Operating System

Ang mga resulta ay ipinapakita sa Figure 7.


kanin. 7. I-extract ang listahan ng OS

Gusto kong hanapin ang lahat ng computer na nagpapatakbo ng server OS:

PS C:\> Get-ADComputer -Filter "OperatingSystem -like "*Server*"" -properties OperatingSystem,OperatingSystem ServicePack | Piliin ang Pangalan, Op* | format-listahan

Ang mga resulta ay ipinapakita sa Figure 8.

Tulad ng ibang AD Get cmdlet, maaari mong i-customize ang mga parameter ng paghahanap at limitahan ang query sa mga partikular na OU kung kinakailangan. Ang lahat ng mga expression na ipinakita ko ay maaaring isama sa malalaking PowerShell expression. Halimbawa, maaari kang mag-uri-uri, magpangkat, maglapat ng mga filter, mag-export sa CSV, o gumawa at mag-email ng mga HTML na ulat - lahat mula sa PowerShell! Sa kasong ito, hindi mo kailangang magsulat ng isang script.
Narito ang isang bonus para sa iyo: isang ulat sa edad ng password ng user na na-save sa isang HTML file:

PS C:\> Get-ADUser -Filter "Enabled -eq "True" -AND PasswordNeverExpires -eq "False"" -Properties PasswordLastSet,PasswordNeverExpires,PasswordExpired | Piliin ang DistinguishedName,Pangalan,pass*,@(Name="PasswordAge"; Expression=((Get-Date)-$_.PasswordLastSet)) |sort PasswordAge -Descending | ConvertTo-Html -Title "Ulat sa Edad ng Password" | Out-File c:\Work\pwage.htm !}

Kahit na ang expression na ito ay maaaring mukhang medyo nakakatakot, na may kaunting kaalaman sa PowerShell, ito ay madaling gamitin. At mayroon lamang ang huling tip: kung paano tukuyin ang tinatawag na custom na ari-arian PasswordAge. Ang halaga ay ang agwat sa pagitan ng ngayon at ang PasswordLastSet property. Pagkatapos ay inayos ko ang mga resulta para sa aking bagong ari-arian. Ipinapakita ng Figure 9 ang output para sa aking maliit na domain ng pagsubok.

Update:
Ang post ay naglalaman ng pagsasalin ng artikulo sa portal

Ang mga kailangang harapin ang mga bagay tulad ng isang Excel spreadsheet na naglilista ng 200 bagong mga hire simula sa susunod na linggo, o ang mga user account ay na-misconfigure dahil may isang taong sumusuporta sa isang bagay na hindi nila dapat na-click, at gayundin, ang mga interesado sa mas madaling paraan upang pamahalaan Ang Active Directory®, bilang karagdagan sa pagbubukas ng mga folder ng Mga User at Computer sa bawat oras, ay maaaring gumamit ng isa sa mga libreng tool sa pangangasiwa. Ang ilan sa mga ito ay binuo mismo sa operating system Windows, ang ilan ay nasa Resource Kit o Windows Support Toolkit, at ang ilan ay mga libreng third-party na produkto. Ano ang mga madaling gamiting tool na ito at saan ko makukuha ang mga ito? Alamin Natin.
Magsimula tayo sa mga built-in na command-line na tool sa Windows Server 2003 na nagbibigay-daan sa iyong lumikha, magtanggal, magbago, at maghanap ng mga bagay sa Active Directory.

Binibigyang-daan ka ng tool na CSVDE na mag-import ng mga bagong bagay sa Active Directory gamit ang orihinal na CSV file; binibigyan ka rin nito ng opsyong i-export ang mga umiiral na bagay sa isang CSV file. Hindi maaaring gamitin ang CSVDE upang baguhin ang mga umiiral na bagay; kapag ginagamit ang tool na ito sa import mode, makakagawa ka lang ng mga bagong object.

Ang pag-export ng isang listahan ng mga umiiral na bagay gamit ang CSVDE ay medyo simple. Ipinapakita ng sumusunod kung paano i-export ang mga object ng Active Directory sa isang file na tinatawag na ad.csv:

csvde –f ad.csv

Ang -f na opsyon ay tumutukoy na ito ay sinusundan ng pangalan ng output file. Ngunit magkaroon ng kamalayan na, depende sa kapaligiran, ang pangunahing syntax na ito ay maaaring magresulta sa isang malaki at mahirap gamitin na output file. Upang paghigpitan ang tool na mag-export lamang ng mga bagay sa loob ng isang partikular na unit ng organisasyon (OU), maaaring baguhin ang command bilang sumusunod:

csvde –f UsersOU.csv –d ou=Users,dc=contoso,dc=com

Ipagpalagay pa na kailangan ko lang mag-export ng mga object ng user sa aking CSV file. Sa ganoong sitwasyon, maaari mong idagdag ang -r na opsyon upang tumukoy ng LDAP protocol filter para sa paghahanap na ito, na maglilimita sa bilang ng mga attribute na na-export (tandaan na ang lahat ng sumusunod ay isang linya):

csvde –f UsersOnly.csv –d ou=Users,dc=contoso,dc=com –r
"(&(objectcategory=tao)(objectclass=user))" –l
DN, objectClass, paglalarawan

Binibigyang-daan ka ng opsyong -i na mag-import ng mga bagay sa Active Directory mula sa isang source na CSV file. Gayunpaman, ang paggawa ng mga object ng user gamit ang CSVDE ay may isang malaking disbentaha: hindi ito makakapagtakda ng mga password ng user, kaya hindi ko gagamitin ang CSVDE para gumawa ng mga object ng user.

Nagbibigay ang Active Directory ng pangalawang built-in na user batch facility na tinatawag na LDIFDE na mas malakas at flexible kaysa sa CSVDE. Bilang karagdagan sa paglikha ng mga bagong bagay, pinapayagan ka ng LDIFDE na baguhin at tanggalin ang mga umiiral na bagay, at palawigin pa ang schema ng Active Directory. Ang tradeoff para sa flexibility ng LDIFDE ay ang kinakailangang input file (LDIF file) na may .ldf extension ay gumagamit ng mas kumplikadong format kaysa sa isang simpleng CSV file. (Sa kaunting trabaho, maaari ka ring magtakda ng mga password ng user, ngunit higit pa doon sa ibang pagkakataon.)

Magsimula tayo sa isang simpleng halimbawa ng pag-export ng mga user sa isang business unit sa isang LDF file (tandaan na ang lahat ng sumusunod ay isang linya):

ldifde -f users.ldf -s DC1.contoso.com -d "ou=UsersOU,dc=contoso,dc=com"
–r "(&(objectcategory=tao)(objectclass=user))"

Tulad ng karamihan sa mga tool sa command-line, ang kumpletong paglalarawan ng mga opsyon sa LDIFDE ay maaaring makuha sa pamamagitan ng pagpapatakbo ng LDIFDE /? . ipinapakita ay ang mga ginamit ko dito. (Tandaan na ang mga opsyon para sa CSVDE at LDIFDE command ay pareho.)

Ang tunay na kapangyarihan ng LDIFDE ay kapag lumikha ka at nagmamanipula ng mga bagay. Gayunpaman, bago iyon, kailangan mong lumikha ng isang input file. Ang sumusunod na code ay lumilikha ng dalawang bagong user account, afuller at rking; Para gumawa ng input file, i-type ang notepad (o iba pang plain text editor) at i-save ito bilang NewUsers.ldf:

dn: CN=afuller, OU=UsersOU, DC=contoso, DC=com
changetype: idagdag
cn: mas madami
objectClass: user
samAccountName: afuller dn: CN=rking, OU=UsersOU, DC=contoso, DC=com
changetype: idagdag
cn:rking
objectClass: user
samAccountName: rking

Matapos makumpleto ang paggawa ng file, patakbuhin ang sumusunod na command:

ldifde -i -f NewUsers.ldf -s DC1.contoso.com

Ang tanging bagong opsyon dito ay -i, na, tulad ng maaari mong hulaan, ay nagpapahiwatig na ang isang pag-import na operasyon ay ginagawa, hindi isang pag-export na operasyon.

Ang pagbabago o pagtanggal ng mga umiiral na bagay ay hindi nagbabago sa syntax ng LDIFDE command; sa halip, ang mga nilalaman ng LDF file ay binago. Upang baguhin ang field ng paglalarawan ng user account, gumawa ng text file na pinangalanang ModifyUsers.ldf, gaya ng ipinapakita sa Figure 1-1. 2.


kanin. 2 LDF file na ModifyUsers

Ang mga pagbabago ay ini-import sa pamamagitan ng pagpapatakbo ng parehong LDIFDE command syntax tulad ng dati, na tumutukoy sa bagong LDF file pagkatapos ng -f na opsyon. Ang LDF format para sa pagtanggal ng mga bagay ay mas simple; para tanggalin ang mga user na nakatrabaho mo, gumawa ng file na tinatawag na DeleteUsers.ldf at ilagay ang sumusunod:

dn: CN=afuller OU=UsersOU, DC=contoso, DC=com
changetype: tanggalin ang dn: CN=rking, OU=UsersOU, DC=contoso, DC=com
changetype: tanggalin

Tandaan na, hindi tulad ng CSVDE, maaaring i-customize ng LDIFDE ang mga password ng user. Gayunpaman, bago itakda ang unicodePWD attribute sa isang user account, dapat mong i-set up ang SSL/TLS encryption sa mga controllers ng domain. Bilang karagdagan, ang LDIFDE ay maaaring gumawa at magbago ng anumang Active Directory object, hindi lamang ng mga user account. Halimbawa, ang sumusunod na LDF file ay lilikha ng bagong extension ng schema na tinatawag na EmployeeID-example sa contoso.com forest schema:
dn: cn=EmployeeID-example,cn=Schema,
cn=Configuration,dc=contoso,dc=com
changetype: idagdag
adminDisplayName: EmployeeID-Example
attributeID: 1.2.3.4.5.6.6.6.7
attributeSyntax: 2.5.5.6
cn: Employee-ID
InstanceUri: 4
isSingleValued: Totoo
lDAPDisplayName: employeeID-halimbawa

Dahil ang mga LDIFDE file ay gumagamit ng industry-standard na LDAP file format, ang mga third-party na application na kailangang baguhin ang Active Directory schema ay kadalasang nagbibigay ng mga LDF file na magagamit para suriin at aprubahan ang mga pagbabago bago ilapat ang mga ito sa isang production environment.

Bilang karagdagan sa mga tool para sa maramihang pagpapatakbo ng pag-import at pag-export, ang Windows Server 2003 ay may kasamang built-in na set ng mga tool na nagbibigay-daan sa iyong lumikha, magtanggal, at magbago ng iba't ibang mga object ng Active Directory, pati na rin ang mga query object na nakakatugon sa ilang partikular na pamantayan. (Tandaan na ang mga tool na ito, dsadd, dsrm, dsget, at dsquery, ay hindi sinusuportahan ng Active Directory sa Windows 2000.)

Ginagamit ang Dsadd upang lumikha ng isang halimbawa ng isang klase ng object ng Active Directory sa isang partikular na partition ng direktoryo. Kasama sa mga klaseng ito ang "mga user", "computers", "contacts", "groups", "structural units" at "quota". Tandaan na ang bawat uri ng bagay na iyong nilikha ay nangangailangan ng isang partikular na hanay ng mga parameter na nauugnay sa mga katangiang magagamit para sa ganitong uri. Ang utos na ito ay lumilikha ng isang bagay ng gumagamit na may iba't ibang mga katangian na napunan (tandaan na ang mga sumusunod ay lahat ng isang linya):

dsadd user cn=afuller,ou=IT,dc=contoso,dc=com
–samID afuller –fn Andrew –ln Fuller –pwd *
-memberOf cn=IT,ou=Groups,dc=contoso,dc=com "cn=Help Desk,ou=Groups,
dc=contoso,dc=com"
–desc "Direktor ng Marketing"
Ang -memberOf na opsyon ay nangangailangan ng ganap na kilalang pangalan (DN) ng bawat pangkat kung saan idaragdag ang user, kung ang user ay idaragdag sa maraming grupo, maraming DN na pinaghihiwalay ng mga puwang ang maaaring idagdag. Ang elemento ay dapat na nakapaloob sa dobleng panipi. Kung ang isang elemento, sabihin nating ang IT\EMEA na unit ng organisasyon, ay naglalaman ng backslash, ang backslash ay dapat na ipasok nang dalawang beses: IT\\EMEA. (Ang mga kinakailangang ito ay nalalapat sa lahat ng mga tool ng ds*.) Kung gagamitin mo ang -pwd * na opsyon, ipo-prompt ka para sa isang password para sa user sa command line. Ang password ay maaaring tukuyin sa loob ng mismong command (-pwd [email protected]), ngunit pagkatapos ay ipapakita ito sa malinaw na teksto sa screen o sa anumang teksto o script file kung saan ipinasok ang command.

Katulad nito, maaari kang lumikha ng isang bagay ng pangkat at isang yunit ng negosyo na may sumusunod na dalawang utos:

dsadd computer cn=WKS1,ou=Workstations,dc=contoso,dc=com
dsadd ou "ou=Training OU,dc=contoso,dc=com"

Ang dsmod ay ginagamit upang baguhin ang mga umiiral na bagay, at pinapatakbo sa halos parehong paraan tulad ng dsadd, gamit ang iba't ibang submenus at syntax depende sa uri ng bagay na binago. Ang sumusunod na dsmod command ay nagbabago sa password ng user at binabago ang kanilang account upang sila ay ma-prompt na baguhin ang kanilang password sa susunod na mag-log in sila:

dsmod user "cn=afuller,ou=IT,dc=contoso,dc=com" –pwd [email protected]
--mustchpwd oo

Upang makita kung gaano magkatulad ang mga setting na ito, tingnan ang dsadd syntax na ginamit upang lumikha ng user na may parehong mga attribute na na-configure:

dsadd user "cn=afuller,ou=IT,dc=contoso,dc=com" –pwd [email protected] w0rd1
--mustchpwd oo

Malinaw, kung alam mo ang mga opsyon para sa paglikha ng mga bagay na may dsadd, maaari mong gamitin ang mga ito upang baguhin ang mga user gamit ang dsmod.

Ang kabaligtaran ng dsadd ay dsrm; tulad ng maaari mong isipin, ang tool na ito ay ginagamit upang alisin ang mga bagay mula sa command line. Ang pangunahing syntax para sa dsrm ay medyo diretso: i-type lamang ang dsrm na sinusundan ng kilalang pangalan ng bagay na gusto mong alisin, tulad nito:

dsrm cn=WKS1,ou=Workstations,dc=contoso,dc=com

Bilang default, ipo-prompt ng dsrm ang "Sigurado ka bang gusto mong tanggalin ang item na ito?". I-type ang Y at pindutin ang Enter button. Maaaring hindi paganahin ang prompt na ito gamit ang --noprompt na opsyon, ngunit malinaw na sa kasong ito ay walang pagkakataon na kumpirmahin na ang bagay ay napili nang tama bago tanggalin. Dalawang karagdagang opsyon ang maaaring maging kapaki-pakinabang kapag nagde-delete ng container object, iyon ay, isang structural subdivision na posibleng maglaman ng iba pang object. Ang sumusunod na command ay nag-aalis ng TrainingOU na unit ng organisasyon at lahat ng mga bagay na nilalaman nito:

At ang isang ito ay nagde-delete ng lahat ng child object sa TrainingOU, ngunit hindi nito hinawakan ang structural unit mismo:

dsrm ou=TrainingOU,dc=contoso,dc=com –subtree
--ibukod

Ang tool na dsmove ay ginagamit upang ilipat o palitan ang pangalan ng isang bagay sa Active Directory, ngunit tandaan na maaari lamang itong gamitin upang ilipat ang mga bagay sa loob ng isang domain. Upang mag-migrate ng mga bagay sa mga domain o kagubatan, gamitin ang Active Directory Migration Tool (ADMT), isang libreng pag-download mula sa Microsoft Web site. Umaasa ang Dsmove sa dalawang opsyon na maaaring gamitin nang mag-isa o magkasama. Binabago ng command na ito ang apelyido sa Steve Conn user account:

dsmove "cn=Conn, Steve,ou=IT,dc=contoso,dc=com"
--bagong pangalan "Steve Conn"

Inilipat ng utos na ito ang Steve account mula sa departamento ng IT patungo sa departamento ng Pagsasanay:

dsmove "cn=Conn, Steve,ou=IT,dc=contoso,dc=com" --newparent
ou=Pagsasanay,dc=contoso,dc=com

Ang pagpapalit ng pangalan at paglipat ay maaaring gawin sa isang operasyon sa pamamagitan ng pagtukoy sa parehong mga parameter nang sabay-sabay:

dsmove "cn=Conn, Steve,ou=IT,dc=contoso,dc=com" –newname
"Steve Conn" --newparent ou=Training,dc=contoso,dc=com

dsget at dsquery

Kasama rin sa ds* command line toolkit ang dalawang tool na ginagamit para mag-query ng impormasyon ng Active Directory, hindi para gumawa o magbago ng mga bagay.

Kinukuha ng Dsget ang natatanging pangalan (DN) ng bagay bilang input at ibinabalik ang halaga ng tinukoy na katangian o mga katangian. Ang dsget ay gumagamit ng parehong submenu gaya ng dsadd at dsmod - "user", "computer", "contact", "group", "structural unit", at "quota".

Upang makuha ang SAM account name at security ID (SID) ng user account, ilagay ang sumusunod na command (tandaan na ang lahat ng sumusunod ay isang linya):

dsget user cn=afuller,ou=IT,dc=contoso,dc=com
–samAccountName –sid

Ang mga resulta ay magiging katulad sa ipinapakita sa Fig. 3.

kanin. 3 Paggawa gamit ang dsget

Nagbabalik ang Dsquery ng listahan ng mga object ng Active Directory na tumutugma sa tinukoy na pamantayan.

Maaaring gamitin ng Dsquery ang mga sumusunod na submenus, bawat isa ay may sariling syntax, para sa ObjectType: "computer", "contact", "subnet", "group", "structural unit", "website", "server" (tandaan na ang submenu server kinukuha ang data tungkol sa mga controller ng domain, hindi mga server sa iyong kapaligiran), "user", "quota", at "partition". At kung ang isa sa mga uri ng query na ito ay hindi ang gusto mo, maaari mong gamitin ang * submenu upang magpasok ng isang libreng-form na query sa LDAP. Tinutukoy ng StartNode ang lokasyon ng puno ng Active Directory kung saan magsisimula ang paghahanap. Maaari kang gumamit ng partikular na DN, gaya ng ou=IT,dc=contoso,dc=com, o isa sa mga sumusunod na short path specifiers: domainroot, simula sa ugat ng isang partikular na domain, o forestroot, simula sa ugat ng forest root domain, gamit ang isang global catalog server para maghanap. Panghuli, ang parameter ng saklaw ng paghahanap ay tumutukoy kung paano dapat hanapin ng dsquery ang Active Directory tree. Ina-access ng mga subtree poll (ang default na opsyon) ang tinukoy na StartNode at lahat ng mga anak nito, ina-access lang ng mga kapatid na poll ang mga agarang anak ng StartNode, at ang StartNode lang ang ina-access ng mga baseline poll. Upang mas maunawaan ang mga saklaw ng paghahanap, isipin ang isang unit ng organisasyon (OU) na naglalaman ng : user object, at isang child OU na naglalaman din ng mga karagdagang object. Kapag gumagamit ng subtree bilang saklaw, ang OU, lahat ng object ng user sa loob nito, ang child OU, at ang mga nilalaman nito ay tatanungin. Sa saklaw ng magkakapatid, ang mga user lang na nasa OU, ngunit hindi ang batang OU at ang mga nilalaman nito, ang hihilingin. Ang base query ay magtatanong lamang sa OU mismo nang hindi nagtatanong sa mga bagay na nilalaman nito. Sa wakas, maaari mong gamitin ang output format upang kontrolin ang pag-format ng mga resulta ng dsquery. Bilang default, ibinabalik ng dsquery ang mga natatanging pangalan ng lahat ng mga bagay na tumutugma sa query, tulad nito:

"cn=afuller,ou=Training,dc=contoso,dc=com"
"cn=rking,ou=ITTraining,ou=Training,dc=contoso,dc=com" Upang i-query ang lahat ng object ng user na nasa IT organizational unit at ang child OU nito, gamitin ang sumusunod:

dsquery user ou=IT,dc=contoso,dc=com

Ang query ay maaaring gawing mas tumpak sa pamamagitan ng pagdaragdag ng mga karagdagang opsyon, tulad ng -disabled, na nagbabalik lamang ng mga hindi pinaganang user account; -inactive x, nagbabalik lamang ng mga user na hindi nakakonekta sa loob ng x o higit pang mga linggo; o -stalepwd x, na nagbabalik lamang ng mga user na hindi nagbago ng kanilang password sa loob ng x o higit pang mga araw.

Depende sa bilang ng mga bagay sa direktoryo, maaaring kailanganin mong tukuyin ang -limit x na opsyon kapag pinapatakbo ang query. Bilang default, ang dsquery ay nagbabalik ng hanggang 100 mga bagay na tumutugma sa mga parameter ng query; ngunit maaari kang tumukoy ng mas malaking numero, gaya ng -limit 500, o gumamit ng -limit 0 upang maibalik ng dsquery ang lahat ng tumutugmang bagay.

Maaari mo ring gamitin ang iba pang mga submenu upang magsagawa ng mga kapaki-pakinabang na query sa iba pang mga uri ng mga bagay. Isaalang-alang ang sumusunod na query, na nagbabalik sa bawat subnet na tinukoy sa Mga Site at Serbisyo ng Active Directory na nasa 10.1.xx address space:

dsquery subnet -pangalan 10.1.*

At ang sumusunod na command ay maaaring gamitin upang ibalik ang bawat subnet na nasa web site ng Corp:

dsquery subnet –site Corp

Gamit ang susunod na submenu, mabilis mong matutukoy kung gaano karaming mga controllers ng domain sa kagubatan ang na-configure upang kumilos bilang mga server ng global catalog:

dsquery server –forest –isgc

Maaari mo ring gamitin ang syntax na ito upang gawing mas madaling matukoy ang isang domain controller sa isang partikular na domain na naglalaman ng pangunahing tungkulin ng emulator ng FSMO ng Pangunahing Domain Controller (PDC):

dsquery server –hasfsmo pdc

Tulad ng iba pang mga ds* na utos na may kasamang mga submenu, ang lahat ng mga opsyon na magagamit sa isang partikular na dsquery submenu ay maaaring matingnan sa pamamagitan ng pagpasok command line at pag-type ng dsquery user /?, dsquery computer /?, dsquery subnet /?, at iba pa.

Ang isang karagdagang trick ay ang pag-pipe ng papalabas na data ng dsquery sa isa pang tool, tulad ng dsmod, gamit ang | (SHIFT+backslash para sa layout ng English na keyboard). Halimbawa, pinalitan ng isang kumpanya ang pangalan ng isang departamento mula sa "Pagsasanay" patungong "Internal na Pag-unlad" at kailangan na ngayong i-update ang field ng paglalarawan para sa bawat user sa departamentong iyon. Sa isang linya ng command, maaari mong i-query ang lahat ng object ng user na mayroong field ng Prepare description, at pagkatapos ay palitan ang field ng paglalarawan na iyon para sa buong package gaya ng sumusunod:

dsquery user --description "Pagsasanay" | dsmod
-paglalarawan "Internal Development"

Ang ilang mga nahanap mula sa mga tagagawa ng third-party

Dahil nakabatay ang Active Directory sa mga pamantayan ng LDAP, maaari itong i-query at baguhin gamit ang anumang tool na nakakaunawa sa LDAP. Maraming mga third-party na vendor ang naglabas ng mga bayad na tool upang matulungan kang pangasiwaan ang Active Directory, ngunit kung minsan ay makakahanap ka ng mga tunay na kayamanan na ibinahagi nang libre. Ito ay partikular na totoo sa koleksyong ginawa ng Directory Services MVP na si Joe Richards at available para ma-download sa joeware.net/freetools. Naglalaman ito ng maraming mga tool na nagsisilbi upang malutas ang iba't ibang mga problema. Tatlo sa kanila ang paulit-ulit kong binabalikan ay adfind, admod at oldcmp.

adfind at admod

Ang adfind at admod ay tulad ng dsquery at dsmod; Ang adfind ay isang command-line query tool para sa Active Directory, at maaaring gumawa, magtanggal, o magbago ng mga object ng Active Directory ang admod.

Hindi tulad ng mga tool ng ds*, na mayroong maraming submenu at iba't ibang opsyon depende sa uri ng object, ginagamit ng adfind at admod ang parehong syntax anuman ang uri ng query o pagbabagong ginagawa. Pangunahing syntax para sa adfind:

adfind -b -s -f
mga katangiang ninanais

Ang isang query para sa natatanging pangalan at paglalarawan ng lahat ng mga bagay sa computer sa domain ay magiging ganito:

adfind -b dc=contoso,dc=com -s subtree -f (objectclass=computer) dn
paglalarawan

Ang isang query para sa lahat ng mga bagay ng gumagamit ay magiging ganito:

adfind –b dc=contoso,dc=com –s subtree –f "(&(objectcategory=tao)
(objectclass=user))" dn paglalarawan

Tandaan na maliban sa pagtatanong sa nilalaman ng LDAP, hindi nagbago ang syntax.

Kapag nagtatrabaho sa adfind, makakahanap ka ng ilang mga pagpipilian sa shorthand para sa pagsusulat ng mga parameter na makakatipid sa iyo mula sa karagdagang trabaho sa pag-type. Halimbawa, maaaring palitan ng -default na opsyon ang -b dc=contoso,dc=com sa nakaraang halimbawa at hanapin ang buong domain; -gc ay naghahanap batay sa pagkolekta ng basura (GC) at ibinabalik ang lahat ng user sa iyong Active Directory na kagubatan. Ang pagpipiliang -rb ay maaari ding gamitin upang magtakda ng isang kamag-anak na base sa paghahanap; kung, sabihin nating, kailangan mong hanapin ang unit ng organisasyon na "Pagsasanay" sa domain ng phl.east.us.contoso.com, maaari kang makatipid ng oras sa pamamagitan lamang ng pagtukoy -default -rb ou=Training, sa halip na -b ou= Pagsasanay, dc=phl, dc=east,dc=us,dc=contoso,dc=com.

Ang Adfind ay maaari ding magsagawa ng ilang mga advanced na function sa paghahanap na mahirap kontrolin mula sa command line kung wala ito.

Ang isang halimbawa gamit ang -asq na opsyon ay humihiling ng "Ipakita sa akin ang mga membership ng grupo ng mga miyembro ng HelpDesk" tulad ng sumusunod:

adfind --default --rb cn=HelpDesk,ou=IT --asq member memberOf

Ang Admod, gaya ng ipinahihiwatig ng pangalan ng programa, ay ginagamit upang baguhin ang mga bagay sa Active Directory. Tulad ng adfind, walang mga espesyal na submenu na may sariling mga syntax na dapat tandaan; Ang admod ay gumagamit ng parehong syntax anuman ang uri ng bagay na pinoproseso. Magagamit din ang Admod upang magdagdag, ilipat, palitan ang pangalan, tanggalin, at ibalik ang mga bagay sa pamamagitan lamang ng pagdaragdag ng naaangkop na opsyon, sabihin -add, -rm, -move, -undel. At tulad ng sa dsquery at dsmod, ang | ay maaaring gamitin upang i-pipe ang adfind request data sa admod.

Tandaan na ang pagsasagawa ng restore gamit ang admod ay isang simpleng operasyon ng pag-restore ng lapida na bagay kung saan ang karamihan sa mga katangian ng object ay naalis na. Upang ganap na maibalik ang isang bagay na may lahat ng mga katangian, kakailanganin mong magsagawa ng sapilitang pagpapanumbalik ng bagay.

May isa pang tool sa koleksyon ng mga tool ni Joe na itinuturing kong isang kailangang-kailangan na bahagi ng aking automation toolset: oldcmp, na naghahanap sa database ng Active Directory para sa mga kredensyal ng mga computer na hindi pa nagagamit sa isang tiyak na bilang ng mga linggo at maaaring gawin ang mga sumusunod:

  • lumikha ng mga ulat sa mga account nang walang anumang aksyon na may kaugnayan sa mga ito;
  • huwag paganahin ang hindi nagamit na mga account sa computer;
  • ilipat ang mga account sa computer sa isa pa, dati nang tinukoy, yunit ng istruktura;
  • Ganap na tanggalin ang mga account sa computer.

Tandaan na dahil ang oldcmp ay maaaring gumawa ng ilang malubhang pinsala sa isang direktoryo, ito ay may ilang mga built-in na tampok sa seguridad. Hindi nito inaalis ang mga account na hindi pa na-disable dati (maliban kung sinabi mong "Hindi, gusto ko talagang gawin ito!" sa command line). Hindi nito binabago ang higit sa 10 mga bagay sa isang pagkakataon (maliban kung, muli, ito ay partikular na binanggit kung hindi man) at hindi ito gagawa ng anuman sa computer account ng isang domain controller.

Na-update na ngayon ni Joe ang oldcmp para makapagsagawa ito ng mga katulad na function sa mga user account na hindi pa nagamit para sa tinukoy na tagal ng oras.

Para sa isang maliit na kapaligiran ng Active Directory, o isang kapaligiran kung saan nagtatrabaho ka lamang sa isa o dalawang karagdagan o pagbabago sa isang pagkakataon, maaaring sapat na ang mga tool sa GUI tulad ng Mga User at Computer ng Active Directory para sa pang-araw-araw na pangangasiwa, ngunit magdagdag araw-araw kung kinakailangan . o pagbabago ng malaking bilang ng mga bagay, o simpleng pagnanais na makahanap ng mas mahusay na solusyon para sa mga gawaing pang-administratibo, ang paglipat sa command line ay maaaring lubos na mapabilis ang proseso ng paglikha, pagbabago, at pagtanggal ng mga bagay sa Active Directory. Tulad ng ipinakita sa itaas, mayroong isang hanay ng nababaluktot at makapangyarihang mga libreng tool, parehong nakapaloob sa Windows at ipinamamahagi ng mga miyembro ng komunidad ng Active Directory. Ang bawat isa sa kanila ay maaaring lubos na mapataas ang pagiging produktibo ng Active Directory administrator, ngunit magkasama sila ay nagiging mas mahalaga para sa kanyang pang-araw-araw na gawain.

Si Laura E. Hunter ay isang apat na beses na Microsoft MVP sa Windows Server Networking Tools. Siya ang may-akda ng ikalawang edisyon ng Active Directory Reference Guide (na inilathala ni O "Reilly, 2006). Sa sampung taong karanasan sa industriya ng IT, nagtatrabaho na ngayon si Laura bilang Active Directory designer sa isang world-class engineering firm. . Siya rin ang may-ari ng ilang mga sertipiko ng industriya, at madalas siyang nagsasalita sa mga pulong ng grupo ng gumagamit at mga kumperensya ng industriya.