Alterar lista de computadores de logon permitidos do arquivo em lotes

1

Como posso alterar essa configuração de um arquivo em lotes? Para qualquer usuário, como posso fazê-lo para que eles possam fazer logon no computador chamado abc? Um script vbs ou powershell seria minha segunda escolha.

    
por jftuga 07.04.2011 / 22:17

1 resposta

5

Você precisa atualizar o atributo do AD "userWorkstations" para os usuários.

No VBS, seria algo como:

On Error Resume Next
Const ADS_SCOPE_SUBTREE = 2
Set ObjRootDSE = GetObject("LDAP://RootDSE")
strOU = "OU=SCRIPT,DC=Company,DC=local"

Set objConnection = CreateObject("ADODB.Connection")
Set objCommand =   CreateObject("ADODB.Command")
objConnection.Provider = "ADsDSOObject"
objConnection.Open "Active Directory Provider"
Set objCommand.ActiveConnection = objConnection

objCommand.Properties("Page Size") = 1000
objCommand.Properties("Searchscope") = ADS_SCOPE_SUBTREE 
objCommand.Properties("Sort On") = "SN"

objCommand.CommandText = _
    "SELECT Name, displayName, distinguishedName FROM 'LDAP://" & strOU & " ' WHERE objectCategory='user'" 

Set objRecordSet = objCommand.Execute
objRecordSet.MoveFirst
Do Until objRecordSet.EOF

    usrDN = objRecordSet.Fields("distinguishedName").Value
    Set objUser = GetObject("LDAP://" & objRecordSet.Fields("distinguishedName").Value)

    Err.Clear
    Set objCnt = GetObject("LDAP://" & usrDN)
        If (Err.Number > 0) Then
        Else 
            objUser.userWorkstations = "abc"
            objUser.SetInfo
        End If 
    objRecordSet.MoveNext

    Loop
objRecordSet.Close
Set objRecordSet = Nothing
Set objCommand = Nothing
objConnection.Close
Set objConnection = Nothing
WScript.Quit

Isso leva todos os usuários à OU "SCRIPT" de nível superior e modifica o atributo userWorkstation para cada um. Obviamente, você pode manipulá-lo conforme necessário.

Além disso, Greg apontou que o atributo não é uma matriz e especifica mais de uma estação de trabalho que você usaria:

objUser.userWorkstations = "computer1,computer2,computer3"
    
por 10.04.2011 / 15:46