2012-05-09 4 views
0

활성 디렉터리의 그룹에있는 사용자 목록을 가져 오려고합니다. 도메인이 여러 개 있습니다. 각 그룹의 각 도메인을 폴링 할 중앙 위치에서 실행하고 싶습니다. 또한 중첩 된 멤버를 표시하기를 원합니다.Active PowerShell 디렉터리의 그룹에 중첩 된 사용자 목록 가져 오기

현재이 프로그램을 실행 해 보았는데 컴퓨터가 폴링중인 도메인과 동일한 도메인에있을 때 일종의 작업을 수행했습니다. 모든 구성원과 중첩 된 구성원이 표시됩니다.

dsquery group -samid "group name" | dsget group -members -expand >c:\list.txt 

"cn=username,ou=users,dc=domain1,dc=com" 

그러나 다른 도메인을 폴링하려고하면 출력이 표시되지 않습니다.

dsquery group -samid "cn=group name,cn=users,dc=domain2,dc=com" | dsget group -members -expand >c:\list.txt 

dsget failed: 'target object for this command' is missing 

그런 다음 동일한 이드를 사용하지 않으면 출력이 발생합니다.

dsquery group "cn=group name,cn=users,dc=domain2,dc=com" | dsget group -members -expand >c:\list.txt 

"CN=username2,OU=users,DC=domain2,DC=com" 
"CN=S-1-5-21,CN=ForeignSecurityPrincipals,DC=domain1,DC=com" 
"cn=group name,ou=users,dc=domain2,dc=com" 

따라서 ID가 표시되고 중첩 된 멤버가 표시되지 않습니다.

올바른 중첩 된 멤버와 겹침없는 부분을 해결하려면 어떻게해야합니까? 또한 여러 도메인에서 여러 그룹 이름을 폴링하도록하려면 어떻게해야합니까? 또는 나는 그것을 전부 분리하고 한 번에 하나씩해야합니까?

미리 감사드립니다.

답변

4

는 지금까지 내가 이해 귀하의 질문은 부분적으로 Listing users in ad group recursively with powershell script without CmdLets

에 대한 답변하지만 W2K8R2의 environement에서 작업하는 경우는 액티브 디렉토리 모듈을 사용할 수 있습니다.

DSQUERY 그룹 : 당신은 당신이 아래 입력의 용도로 SamID이있는 경우

  • "글로벌 카탈로그 옵션을 사용하여"는 GC에서 결과를 조회 할 필요가 모든 경우에

    Import-Module activedirectory 
    Get-ADGroupMember groupName -Recursive 
    
0

-samid "그룹의 SamID"-gc | Dsget 도구의

  • 을 -expand하지만 -memberof 그룹 아래 입력 사용으로 distinguishedName을가있는 경우 :

Dsget 도구 그룹 "그룹의 고유 이름"-gc | dsget 그룹 -memberof -expand

관련 문제