[Powershell] Get-ADUser 명령어

기본적으로 Script 언어를 배울 때, 변경 명령어는 나중에 배우고, 보통 정보를 읽어오는 행위 먼저 배우게 됩니다. 그 이유는 변경 명령어로 예기치 않는 장애가 발생할 수 있으니까요. Powershell 도 동일하게 보통 Get-ADUser 명령어를 먼저 배우게 됩니다.

다만 Powershell 구분은 Like 구분에 대해 굉장히 인색하게 적용되어 일반적인 Script 언어에 비해 접근이 좀 어려운게 사실 입니다. 구체적인 내용은 아래를 내용들을 참고 해주시기 바랍니다.

[일반적인 Filter 설정한 구문]
[cc lang=”powershell” nowrap=”0″]
Get-ADUser [-AuthType ] [-Credential ] -Filter [-Properties <String[]>] [-ResultPageSize ] [-ResultSetSize ] [-SearchBase ] [-SearchScope ] [-Server ] []
[/cc]

[Filter 설정 하지 않은 구문]
[cc lang=”powershell” nowrap=”0″]
Get-ADUser [-AuthType ] [-Credential ] [-Identity] [-Partition ] [-Properties <String[]>] [-Server ] []
[/cc]

[LDAP Filter 적용 구문]
[cc lang=”powershell” nowrap=”0″]
Get-ADUser [-AuthType ] [-Credential ] -LDAPFilter [-Properties <String[]>] [-ResultPageSize ] [-ResultSetSize ] [-SearchBase ] [-SearchScope ] [-Server ] []
[/cc]

위의 구문들을 하나씩 실 서버에서 데이터를 조회하면 아래와 같이 결과를 확인 가능 합니다. 몇몇 정보는 외부 노출이 어려운 부분이 있어 블라인드 처리 했습니다.

[Filter 적용 구문]
[cc lang=”powershell” nowrap=”0″]
Get-ADUser -Filter * -SearchBase “OU=CDNG ManualUsers,DC=cdnetworks,DC=biz” | Out-GridView
[/cc]

ScreenShot 2019 01 09 PM 1 13 35

위 결과는 특정 OU에 포함되어 있는 전체 계정 정보들을 가져와서 리스트로 보여주는 구문 입니다. 하지만 이렇게 뽑아내면 보기 힘들고 보통은 특정 사람 한명을 찾을려고 하는게 일반적인 사례 입니다.

[사용자 계정 일부 단어만 알고 있었을 때 확인하는 구문]
[cc lang=”powershell” nowrap=”0″]
Get-ADUser -Filter ‘Name -like “*seonghyeon”‘ | Format-Table Name, SameAccountName -A
[/cc]

ScreenShot 2019 01 09 PM 1 20 00

위와 구문은 MS 사이트에 공식적으로 알려준 구문 입니다. 하지만 위 그림과 같이 실제 서버에 질의를 해보면 아무런 결과도 나오지 않습니다. 그렇다고 저 계정이 없는거냐? 아닙니다. 저 계정은 제 계정으로 현재도 회사를 잘 다니고 있습니다. (__)

그럼 뭐가 문제일까 ? 암묵적으로 해당 도메인에 질의를 던지는 상황이지만, 해당 질의를 받아줄 명확한 서버가 없는게 문제 입니다. 그래서 아래와 같이 명시적으로 질의 서버를 추가하여 구문을 변경해서 질의를 해보면 정상적으로 결과가 나오는 걸 확인 할 수 있습니다.

[cc lang=”powershell” nowrap=”0″]
Get-ADUser -Server PCDNAD01 -Filter ‘Name -like “seonghyeon“‘ | Format-Table Name, SameAccountName -A
[/cc]

ScreenShot 2019 01 09 PM 1 23 22

[Filter를 사용하지 않고 계정의 상세 정보를 얻을 때,]
[cc lang=”powershell” nowrap=”0″]
Get-ADUser -Identity seonghyeon.jo -Properties *
[/cc]

ScreenShot 2019 01 09 PM 1 26 03

Share

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Post comment