Назад | Перейти на главную страницу

Сценарий WMI для списка членства текущего компьютера?

У меня есть AD, размещенный на 2003R2 и 2008R2, я хотел бы проверить членство для компьютера домена (например, compA), когда пользователь входит в систему с этого компьютера (например, compA) и выполняет определенные операции внутри сценария. Я думаю, что WMI, вероятно, может быть полезен, но я не могу найти правильный запрос для получения списка групп соответствующей учетной записи компьютера. Любая идея?

Вот сценарий, который я изменил из этот сайт. Я не тестировал код, но он выглядит нормально.

Option Explicit
Dim objNetwork, strDomain, strComputer, objComputer, objGroup, strGroupMemberships
Dim arrGroupMemberships

' Get the domain and username from the WScript.Network object
Set objNetwork = CreateObject("WScript.Network")
strDomain = objNetwork.UserDomain
strComputer = objNetwork.ComputerName

' Instanciate the user object from the data above
Set objComputer = GetObject("WinNT://" & strDomain & "/" & strComputer)

' Run through the users groups and put them in the string
For Each objGroup In objComputer.Groups
    strGroupMemberships = strGroupMemberships & objGroup.Name & ","
Next

arrGroupMemberships = Split(strGroupMemberships, ",")

' Loop through array to get groups that this computer is a member of

Это должно помочь вам двигаться в правильном направлении, если вы еще не решили эту проблему.

Get-WmiObject win32_ComputerSystem | Format-List DomainRole

        0"Stand Alone Workstation"
        1"Member Workstation"
        2"Stand Alone Server"
        3"Member Server"
        4"Back-up Domain Controller"
        5"Primary Domain Controller"