FSMO の役割の識別

説明

FSMO の役割を提供している Active Directory ドメイン コントローラを識別します。この役割とは、スキーマ マスタ、ドメイン ネーミング マスタ、PDC エミュレータ、RID マスタ、およびインフラストラクチャ マスタの 5 種類です。

スクリプトコード

Set objRootDSE = GetObject("LDAP://rootDSE") 
' Schema Master 
Set objSchema = GetObject("LDAP://" & objRootDSE.Get("schemaNamingContext")) 
strSchemaMaster = objSchema.Get("fSMORoleOwner") 
Set objNtds = GetObject("LDAP://" & strSchemaMaster) 
Set objComputer = GetObject(objNtds.Parent) 
WScript.Echo "Forest-wide Schema Master FSMO: " & objComputer.Name 
Set objNtds = Nothing 
Set objComputer = Nothing 
' Domain Naming Master 
Set objPartitions = GetObject("LDAP://CN=Partitions," & _ 
                              objRootDSE.Get("configurationNamingContext")) 
strDomainNamingMaster = objPartitions.Get("fSMORoleOwner") 
Set objNtds = GetObject("LDAP://" & strDomainNamingMaster) 
Set objComputer = GetObject(objNtds.Parent) 
WScript.Echo "Forest-wide Domain Naming Master FSMO: " & objComputer.Name 
Set objNtds = Nothing 
Set objComputer = Nothing 
' PDC Emulator 
Set objDomain = GetObject("LDAP://" & objRootDSE.Get("defaultNamingContext")) 
strPdcEmulator = objDomain.Get("fSMORoleOwner") 
Set objNtds = GetObject("LDAP://" & strPdcEmulator) 
Set objComputer = GetObject(objNtds.Parent) 
WScript.Echo "Domain's PDC Emulator FSMO: " & objComputer.Name 
Set objNtds = Nothing 
Set objComputer = Nothing 
' RID Master 
Set objRidManager = GetObject("LDAP://CN=RID Manager$,CN=System," & _ 
                              objRootDSE.Get("defaultNamingContext")) 
strRidMaster = objRidManager.Get("fSMORoleOwner") 
Set objNtds = GetObject("LDAP://" & strRidMaster) 
Set objComputer = GetObject(objNtds.Parent) 
WScript.Echo "Domain's RID Master FSMO: " & objComputer.Name 
Set objNtds = Nothing 
Set objComputer = Nothing 
' Infrastructure Master 
Set objInfrastructure = GetObject("LDAP://CN=Infrastructure," & _ 
                                  objRootDSE.Get("defaultNamingContext")) 
strInfrastructureMaster = objInfrastructure.Get("fSMORoleOwner") 
Set objNtds = GetObject("LDAP://" & strInfrastructureMaster) 
Set objComputer = GetObject(objNtds.Parent) 
WScript.Echo "Domain's Infrastructure Master FSMO: " & objComputer.Name 

免責事項

本サンプル スクリプトは Microsoft の標準サポート プログラムまたはサービスではサポートされていません。このサンプル コードは、何等保障もない現状有姿のままで提供されるものです。さらに、Microsoft は、商品性、特定目的への適合性を含む一切の黙示の保証をいたしかねます。お客様がこのサンプル スクリプトおよびドキュメントの運用または機能から受けた影響については、お客様が負うものです。Microsoft、本サンプル スクリプトの作成者、および本スクリプトの作成、製造、配布に関与する者は、いかなる場合においても、本サンプル スクリプトおよびドキュメントの使用または使用不能から生じる損害 (逸失利益、事業の中断、事業情報の喪失またはその他の金銭的損失を含みますがこれらに限定されません) に関して一切責任を負いません。たとえ、Microsoft がこのような損害の可能性について知らされていた場合でも一切責任を負いません。


ページのトップへページのトップへ