Get-ADGroupMember Obtém o domínio do usuário no select-object

2

Eu pesquisei tudo e acho que isso seria bastante comum, mas talvez não.

Eu quero listar o domínio de um usuário com o nome de usuário via Get-ADGroupMember. Então, por exemplo, eu tenho isso:

Get-ADGroupMember -identity "MyGroup" -Recursive -Server "my.domain.net" | select-object SamAccountName

que lista

SamAccountName
--------------
jsmith
dsmith
lsmith

Eu quero que a lista retorne o domínio primário dos usuários, por exemplo, eu tenho os domínios

prod.my.domain.net
dev.my.domain.net
my.domain.net

Eu quero uma consulta que retorne

prod\jsmith
dev\dsmith
my\lsmith

dependendo do domínio dos usuários (não importa a ordem dos nomes).

    
por Element Zero 18.01.2017 / 16:48

2 respostas

3
Ok depois de googlar mais e brincar com isso por um tempo eu vim com o seguinte, que recebe o que eu preciso. Eu não tenho certeza se esta é a melhor maneira de obtê-lo, mas parece limpo para mim

Get-ADGroupMember -identity "MyGroup" -Recursive -Server "my.domain.net" | select-object @{name="Login"; expression={(($_.DistinguishedName  -split '(DC=)')[2] -replace ',')+"\"+$_.SamAccountName}}

que dá

Login
-----
prod\jsmith
dev\dsmith
my\lsmith
    
por 18.01.2017 / 18:00
0

Eu não tenho um ambiente de vários domínios para testar, mas acredito que isso fará o que você quer.

Get-ADGroupMember -Identity 'MyGroup' | foreach {
$ADuser = Get-ADUser -Identity $_.sAMAccountName -Properties UserPrincipalName
$Domain = $ADuser.UserPrincipalName.Split('@.')[1]
$Name = $Domain + '\' + $ADuser.Name
$Name
}
    
por 18.01.2017 / 17:45