AD アカウント有効期限が設定されている人を見つける方法

ActiveDirectoryユーザーの有効期限が設定されているアカウントの見つけ方の紹介です。全てのOUから検索を行うとDCに負荷をかけてしまうため、特定のOU内で検索する方法がこちらになります。

Windows リモートサーバー管理ツール」がインストールされていない場合は、先ずインストールしてください。インストール方法は「WINDOWS7/8 用のリモート サーバー管理ツール」を参照ください。

Active Directory Module for Windows PowerShellを起動します。

有効期限の有り無しでコマンドが一部異なりますので、以下を参照に必要箇所を変更して実行してください。大量に出力される場合は、テキストファイルに書き出してExcel等でフォーマットを整えてください。

 

有効期限なし
Get-ADUser -searchbase “OU=My,OU=Company,DC=mycompany,DC=com” -LDAPFilter ‘(|(accountExpires=0)(accountExpires=9223372036854775807))’
有効期限あり
Get-ADUser -searchbase “OU=My,OU=Company,DC=mycompany,DC=com” -LDAPFilter ‘(&(!accountExpires=9223372036854775807)(!accountExpires=0))’

または、Search-ADAccountを使用します。日付を遠い未来に設定すれば、検索できます。

Search-ADAccount -AccountExpiring -Datetime “DD/MM/YYYY” -UsersOnly -searchbase “OU=My,OU=Company,DC=mycompany,DC=com”