Printout Header
RSS Feed

Wie man den Namen der eigenen Active Directory Domäne ermittelt


Beim Scripten in Active Directory Umgebungen benötigt man oft den Namen der eigenen Domäne, also der Domäne, in der der Benutzer angemeldet ist, der das Script gerade ausführt - sei es in Form eines LDAP-Pfadnamens, eines (alten) NetBIOS-Namens oder in Form eines voll qualifizierten DNS-Namens.


Der LDAP Pfadname (=Distinguished Name) der eigenen Domäne


Dieses Script findet den LDAP Pfad (=Distinguished Name) der eigenen Domäne:

Set rootDSE = GetObject("LDAP://rootDSE") domainDN = rootDSE.Get("defaultNamingContext") WScript.Echo domainDN

Der NetBIOS-Name der eigenen Domäne


Dieses Script findet den NetBIOS-Namen der eigenen Domäne, hierbei werden ausschließlich LDAP-Abfragen verwendet:

Set rootDSE = GetObject("LDAP://rootDSE") domainDN = rootDSE.Get("defaultNamingContext") configDN = rootDSE.Get("configurationNamingContext") Set partitions = GetObject("LDAP://cn=partitions," & configDN) For Each nameSpace In partitions If (nameSpace.nCName = domainDN) Then Exit For Next domainNETBios = nameSpace.nETBIOSName WScript.Echo domainNETBios

Die gerade gezeigte Version ist offensichtlich ziemlich kompliziert und steht hier nur zu Demonstrationszwecken. Kürzer geht es mit dem ADSystemInfo COM Objekt:

Set aio = CreateObject("ADSystemInfo") domainNETBios = aio.DomainShortName WScript.Echo domainNETBios

Ebenfalls möglich ist die Verwendung des WinNTSystemInfo COM Objects. Ob man dieses oder ADSystemInfo verwendet, hängt davon ab, welche Informationen man noch anderweitig benötigt, die von diesen COM Objekten geliefert werden.

Set wio = CreateObject("WinNTSystemInfo") domainNameNeBIOS = wio.DomainName WScript.Echo domainNETBios

The DNS Name der eigenen Domäne


Dieses Script findet den vollqualifizierten DNS-Namen der eigenen Domäne. Wir benutzen hier wieder das ADSystemInfo COM Objekt:

Set aio = CreateObject("ADSystemInfo") domainDNS = aio.DomainDNSName WScript.Echo domainDNS