首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

PowerShell 經典腳本收藏:Active Directory 域資訊列舉

     編輯:關於SqlServer

WMI 查詢 Win32_NTDomain:快速掌握網域控制站、DNS、站台、GC、FSMO 角色

適用於網域控制器健康檢查、遷移前基線採集、文件化網域拓撲。

完整腳本

#===========================================
# 列出網域資訊
#===========================================
$strComputer = "."  # 本機,可改為遠端主機名/IP

$colItems = Get-WmiObject -Class "Win32_NTDomain" -Namespace "root\CIMV2" -ComputerName $strComputer

foreach ($objItem in $colItems) {
    Write-Host "Caption: " $objItem.Caption
    Write-Host "Client Site Name: " $objItem.ClientSiteName
    Write-Host "Creation Class Name: " $objItem.CreationClassName
    Write-Host "DC Site Name: " $objItem.DcSiteName
    Write-Host "Description: " $objItem.Description
    Write-Host "DNS Forest Name: " $objItem.DnsForestName
    Write-Host "Domain Controller Address: " $objItem.DomainControllerAddress
    Write-Host "Domain Controller Address Type: " $objItem.DomainControllerAddressType
    Write-Host "Domain Controller Name: " $objItem.DomainControllerName
    Write-Host "Domain GUID: " $objItem.DomainGuid
    Write-Host "Domain Name: " $objItem.DomainName
    Write-Host "DS Directory Service Flag: " $objItem.DSDirectoryServiceFlag
    Write-Host "DS DNS Controller Flag: " $objItem.DSDnsControllerFlag
    Write-Host "DS DNS Domain Flag: " $objItem.DSDnsDomainFlag
    Write-Host "DS DNS Forest Flag: " $objItem.DSDnsForestFlag
    Write-Host "DS Global Catalog Flag: " $objItem.DSGlobalCatalogFlag
    Write-Host "DS Kerberos Distribution Center Flag: " $objItem.DSKerberosDistributionCenterFlag
    Write-Host "DS Primary Domain Controller Flag: " $objItem.DSPrimaryDomainControllerFlag
    Write-Host "DS Time Service Flag: " $objItem.DSTimeServiceFlag
    Write-Host "DS Writable Flag: " $objItem.DSWritableFlag
    Write-Host "Installation Date: " $objItem.InstallDate
    Write-Host "Name: " $objItem.Name
    Write-Host "Name Format: " $objItem.NameFormat
    Write-Host "Primary Owner Contact: " $objItem.PrimaryOwnerContact
    Write-Host "Primary Owner Name: " $objItem.PrimaryOwnerName
    Write-Host "Roles: " $objItem.Roles
    Write-Host "Status: " $objItem.Status
    Write-Host ""
}

關鍵屬性解讀

屬性含義運維價值
DSPrimaryDomainControllerFlagPDC 模擬器角色持有者時間同步、密碼變更轉發、GPO 編輯鎖定點
DSGlobalCatalogFlag全域類別目錄 (GC) 持有者跨網域查詢、通用群組展開、登入驗證
DSKerberosDistributionCenterFlagKDC (Kerberos 金鑰分發中心)票證簽發、更新、跨域信任
DomainControllerAddressDC IP 位址網路連通性驗證、防火牆規則
DnsForestName / DnsDomainNameDNS 命名空間DNS 區域委派、條件轉送驗證

現代化替代:Active Directory PowerShell 模組

Import-Module ActiveDirectory
Get-ADDomain | Select-Object *
Get-ADDomainController -Filter * | Select-Object Name, Site, IPV4Address, OperationMasterRoles, IsGlobalCatalog
Get-ADForest | Select-Object *
  • 需 RSAT / Windows Feature `RSAT-AD-PowerShell`,語法更直覺、物件豐富、支援管線/過濾/匯出。
  • WMI 腳本優勢:**無額外模組相依、下層相容 (Server 2003+)、Core/無 GUI 環境皆可跑**。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved