PowerShell로 만료된 사용자 계정 목록 가져오는 방법
Active Directory 관리자들이 수행하는 가장 중요한 작업 중 하나는 만료된 사용자 계정이 적시에 보고되도록 하고, 해당 계정을 즉시 삭제하거나 사용 중지하기 위한 조치가 취해지도록 하는 것입니다. 만료일을 설정한 사용자 계정은 일시적으로만 생성된다는 점에 유의하세요. 예를 들어 벤더가 Active Directory에 로그인할 수 있도록 여러 사용자 계정을 생성했을 수 있습니다. 마찬가지로 계약업체를 위해 사용자 계정을 만들었을 수도 있습니다. 만료된 계정이 무엇인지 확인하려면 다음 PowerShell 명령을 실행하세요:
Search-ADAccount -Server $ThisDomain -Credential $Creds -AccountExpired -UsersOnly -ResultPageSize 2000 -resultSetSize $null| Select-Object Name, SamAccountName, DistinguishedName
이번에도 Search-ADAccount PowerShell cmdlet을 다시 사용하되, 이번에는 다른 스위치로 사용합니다. 우리가 사용하는 스위치는 AccountExpired 입니다. 이름에서 알 수 있듯이, AccountExpired 스위치는 만료된 사용자 계정을 수집하는 데 도움이 됩니다.
PowerShell로 계정 만료 날짜를 확인하는 방법
Active Directory에서 활성화된 모든 사용자에 대해 AD account expiration date 를 가져오려면 Get-ADUser cmdlet을 -AccountExpirationDate 속성과 함께 사용할 수 있습니다. 다음 스크립트를 Windows Server의 PowerShell ISE에서 실행하세요:
Get-ADUser -Filter 'enabled -eq $true' -Properties AccountExpirationDate | Select sAMAccountName, distinguishedName, AccountExpirationDate
AD 사용자 전체 목록에 대해 만료 날짜와 시간을 확인할 수 있습니다.
특정 그룹에 대한 요약이 필요하다면 -SearchBase 매개변수를 추가하여 스크립트를 수정해야 합니다. 데이터를 .csv 파일로 파이프할 수도 있습니다(예: Excel로 가져오거나 텍스트 편집기에서 열기). 이를 위해 다음을 추가하세요 |export-csv <Path> –NoTypeInformation
enterprise.com 도메인의 “IT” 조직 구성 단위(OU)에 대해 계정 만료 날짜 목록을 내보내야 한다고 가정하면, DC에서 실행할 표현식은 다음과 같습니다:
Get-ADUser -Filter 'enabled -eq $true' -Searchbase "OU=IT,DC=enterprise,DC=com" -Properties AccountExpirationDate | Select SAMAccountName, distinguishedName, AccountExpirationDate |export-csv C:TempExpiryDate.csv -NoTypeInformation
정리하자면, 최소한의 Microsoft Powershell 스크립팅 기술로 Search-ADAccount 를 사용하고 Get-ADUser 를 함께 활용하면, 다양한 즉흥적인 AD 정리 및 분석 작업을 해결하는 데 도움이 됩니다.
Active Directory용 PowerShell 스크립트가 더 필요하신가요? 가장 많이 찾는 Active Directory용 PowerShell 명령어 를 한 편의 블로그 글에서 모두 확인하세요.
공유하기
더 알아보기
저자 소개
Nirmal Sharma
님말은 MCSEx3, MCITP이며 디렉터리 서비스 및 Windows 네트워킹 분야에서 Microsoft MVP 상을 수상했습니다. 그는 PowerShell 스크립팅, Microsoft Azure, Office 365, 디렉터리 서비스, 페일오버 클러스터, Hyper-V, System Center 제품을 전문으로 합니다.