여러 AD에서 사용자를 추출하는 방법

여러 AD에서 사용자를 추출하는 방법

내 AD가 모두 포함된 파일을 추출해야 합니다. Get-ADuser를 사용하여 그렇게 하려고 합니다. 그러나 -Searchbase는 여러 소스를 허용하지 않기 때문에 다음과 같이 했습니다.

    'DC=AD1,DC=net','DC=1D2,DC=net','DC=AD3,DC=net','DC=AD4,DC=net' |
foreach-object{
get-aduser -SearchBase $_ -Filter { ( Enabled -eq $True ) -and ( (sn -ne 'Empty') -or (givenName  -ne 'empty')) -and ( (telephoneNumber -ne 'empty') -or (mobile -ne 'empty'))} -Properties * |Select sn,givenName,title,department,company,telephoneNumber,mobile,mail,employeeType,physicalDeliveryOfficeName,extensionAttribute15 | Export-CSV "c:\temp\Liste_collaborateurs.csv" -Encoding UTF8 -Delimiter ";" -NoTypeInformation
}

하지만 실행하면 다음과 같은 오류가 3번 발생합니다.

get-aduser : 제공된 고유 이름은 다음 파티션 중 하나에 속해야 합니다: 'DC=bva,DC=net , CN=Configuration,DC=bva,DC=net , CN=Schema,CN=Configuration,DC= bva,DC=net , DC=DomainDnsZones,DC=bva,DC=net , DC=ForestDnsZones,DC=bva,DC=net'. C:\Users\adm.wfd\Desktop\getaduser.ps1:3 char:1 + get-aduser -SearchBase $_ -Filter { ( Enabled -eq $True ) -and ( (sn -ne 'Empty' .. . ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidArgument: (:) [Get-ADUser], ArgumentException + FullyQualifiedErrorId : ActiveDirectoryCmdlet:System.ArgumentException,Microsoft.ActiveDirectory.Management.Comm ands.GetADUser

내 서버가 연결되지 않은 각 AD에 대해 3번이 있는 것 같습니다. 각 DC에서 명령을 실행할 수 없습니다.

단일 서버에서 모든 사용자의 CSV를 어떻게 얻을 수 있습니까?

답장을 보내주셔서 감사합니다.

답변1

올바른 도메인 컨트롤러를 사용하고 있습니까? 아니면 철자와 순서가 맞는 걸까요? 여러 도메인 컨트롤러가 있는 내 환경에서 스크립트를 테스트했는데 제대로 작동했습니다. 잘못된 정보를 입력한 경우에만 오류 메시지가 나타납니다.

루프에서 실행되지 않을 때 명령이 개별 도메인 컨트롤러에서 작동합니까?

도메인 컨트롤러에서 직접 스크립트를 시작했다면 어떻게 될까요?

나는 그것을 직접 테스트하지 않았습니다.

그렇죠.

$Servers = 'server1','server2'            
ForEach ($Server in $Servers) {            
    Invoke-Command -ComputerName $Server -ScriptBlock {            
        get-aduser -Filter { ( Enabled -eq $True ) -and ( (sn -ne 'Empty') -or (givenName  -ne 'empty')) -and ( (telephoneNumber -ne 'empty') -or (mobile -ne 'empty'))} -Properties * |Select sn,givenName,title,department,company,telephoneNumber,mobile,mail,employeeType,physicalDeliveryOfficeName,extensionAttribute15 | Export-CSV "c:\temp\Liste_collaborateurs.csv" -Encoding UTF8 -Delimiter ";" -NoTypeInformation         
    }            
} 

관련 정보