替代活動(dòng)目錄管理的PowerShell命令
在以前,我們看過PowerShell如何用于管理Windows Server 2008 R2中的活動(dòng)目錄。這篇文章中,我們將提供一些微軟命令的替代選擇。
這些其它選擇的好處是沒有依賴性—當(dāng)然,除了活動(dòng)目錄命令本身。這些命令由Quest軟件和我自己的叫做BSonPosh的開源模塊提供。
51CTO專題推薦:聽專家講述Windows活動(dòng)目錄 | Windows中的腳本技術(shù)-Powershell
Quest確實(shí)是***個(gè)進(jìn)入活動(dòng)目錄領(lǐng)域的,從Windows PowerShell早期開始,大概有四年時(shí)間,它也一直存在,所以這些命令很成熟。它們不依賴任何具體事物,而且當(dāng)命令違背所有“活動(dòng)目錄”,它們還是能指定一個(gè)Quest活動(dòng)角色服務(wù)器,這個(gè)服務(wù)器提供更高程度的目標(biāo)管理和安全。拋開這些,它們和微軟命令非常相似。
這些Quest命令的缺點(diǎn)是它們沒有冒險(xiǎn)進(jìn)入基礎(chǔ)架構(gòu)管理領(lǐng)域,這也是我編寫B(tài)SonPosh模塊來彌補(bǔ)不足的原因。需要清楚的是,我這個(gè)模塊的覆蓋面遠(yuǎn)不只不止活動(dòng)目錄,不過活動(dòng)目錄基礎(chǔ)架構(gòu)管理的覆蓋范圍卻是很棒的。
當(dāng)我們沒有時(shí)間或空間完成Quest和BSonPosh提供的整套命令集時(shí),我們可以看看那些在兩種管理中都很出色的命令。
注意:你可能注意到Quest命令有QAD的動(dòng)詞前綴。這讓它們能和其它活動(dòng)目錄命令供應(yīng)商和平共處。
目標(biāo)管理(Quest)
Get-QADUser ——得到特定用戶目標(biāo)或搜尋與查詢匹配的用戶目標(biāo),例如:
#為BSonPosh域名解析不明確的用戶獲取用戶名 Get-QADUser bsonposh #獲取有BSonPosh的經(jīng)理級(jí)用戶 Get-QADUser –Manager bsonposh #獲取運(yùn)用LDAP過濾器的姓“Shell”的用戶 Get-QADUser -LDAPFilter "(sn=shell)"
更多列舉: Get-help Get-QADUser –example
Get-QADComputer——獲取特定電腦目標(biāo)或搜尋匹配查詢的電腦目標(biāo),例如:
#獲取指定組織單元的所有電腦 Get-QADComputer -SearchRoot "OU=XenDesktop,DC=Dev,DC=Lab" #獲取有指定身份的所有電腦(如,成員、域控制器、未定義) Get-QADComputer –ComputerRole DC #發(fā)現(xiàn)所有Windows 7機(jī)器 Get-QADComputer –OSName "Windows 7*" 更多舉例: Get-help Get-QADComputer –example
Get-QADGroup——獲取特定群組目標(biāo)或搜尋匹配查詢的群組目標(biāo),例如:
#列出所有通用群組 Get-QADGroup -GroupScope 'Universal' #獲取群組成員 Get-QADGroup "domain Admins" | select –ExpandProperty member #獲取群組成員的更簡單方式 Get-ADGroupMember "Domain Admins" #查找空群組 Get-QADGroup –empty $true 更多舉例: Get-help Get-QADGroup –example
基礎(chǔ)架構(gòu)管理(BSonPosh)
Get-Forest——返回當(dāng)前目錄林,例如:
#獲取當(dāng)前目錄林 Get-Forest #為特定域控制器獲取目錄林 Get-Forest –DomainController CoreDC 更多舉例: Get-help Get-Forest –example
Get-Domain —— 返回域目標(biāo),例如
# 獲得當(dāng)前域 Get-Domain #獲得特定域控制器的域 Get-Domain -DomainController CoreDC 更多舉例: Get-help Get-Domain –example Get-Forest
Get-DomainController——返回與傳送參數(shù)相匹配的域控制器目標(biāo),例如:
#獲取當(dāng)前用戶會(huì)話的域控制器 Get-DomainController #用特定名稱(RegEx)獲取域控制器 Get-DomainController -Filter "mydc(nyc|dr)\d"> #在指定域中返回所有域控制器 Get-DomainController –Domain Dev.Lab 更多舉例: Get-help Get-DomainController-example
Get-FSMO——返回目錄林/域的操作主機(jī),例如:
#返回目錄林和域的所有靈活單主機(jī)操作 Get-FSMO #只返回域靈活單主機(jī)操作 Get-FSMO –Domain #只返回目錄林靈活單主機(jī)操作 Get-FSMO –Forest 更多舉例: Get-help Get-FSMO –example>
#p#下面是Quest活動(dòng)目錄模塊提供的所有命令:
•Add-QADGroupMember
•Add-QADMemberOf
•Add-QADPasswordSettingsObjectAppliesTo
•Add-QADPermission
•Approve-QARSApprovalTask
•Connect-QADService
•Convert-QADAttributeValue
•Deprovision-QADUser
•Disable-QADUser
•Disconnect-QADService
•Enable-QADUser
•Get-QADComputer
•Get-QADGroup
•Get-QADGroupMember
•Get-QADMemberOf
•Get-QADObject
•Get-QADObjectSecurity
•Get-QADPasswordSettingsObject
•Get-QADPasswordSettingsObjectAppliesTo
•Get-QADPermission
•Get-QADPSSnapinSettings
•Get-QADRootDSE
•Get-QADUser
•Get-QARSAccessTemplate
•Get-QARSAccessTemplateLink
•Get-QARSApprovalTask
•Get-QARSOperation
•Move-QADObject
•New-QADGroup
•New-QADObject
•New-QADPasswordSettingsObject
•New-QADUser
•New-QARSAccessTemplateLink
•Reject-QARSApprovalTask
•Remove-QADGroupMember
•Remove-QADMemberOf
•Remove-QADObject
•Remove-QADPasswordSettingsObjectAppliesTo
•Remove-QADPermission
•Remove-QARSAccessTemplateLink
•Rename-QADObject
•Restore-QADDeletedObject
•Set-QADGroup
•Set-QADObject
•Set-QADObjectSecurity
•Set-QADPSSnapinSettings
•Set-QADUser
•Set-QARSAccessTemplateLink
•Unlock-QADUser
***,下面列出BSonPosh模塊中可發(fā)現(xiàn)的所以活動(dòng)目錄命令:
•ConvertTo-DistinguishedName
•ConvertTo-DNSName
•ConvertTo-Name
•ConvertTo-NetbiosName
•ConvertTo-Sid
•ConvertTo-UACFLag
•Get-ADACL
•Get-DCConnectionObject
•Get-Domain
•Get-DomainController
•Get-Forest
•Get-FSMO
•Get-Schema
•Get-SchemaClass
•Get-SchemaOID
•Get-SchemaProperty
•Get-SiteLink
•Get-Site
•New-ADACE
•Set-ADACL
通過Quest命令的在線幫助和BSonPosh的源代碼,你會(huì)發(fā)現(xiàn)有更多為活動(dòng)目錄目標(biāo)和基礎(chǔ)架構(gòu)管理運(yùn)用在這些PowerShell命令之上。
【編輯推薦】