作成 2010.02.26
更新 2011.11.27
PowerShell で Active Directory の操作
目次
操作環境の構築
インストール
スクリプトを作成して動作させるには
Active Directory を操作できる様にする
検索
30日間ログオンしていないユーザーを検索する
2009年4月1日以降まったくログオンしていないユーザーを検索する
ロックされたアカウントを検索する
2010年4月10日以前に有効期限が切れるユーザー アカウントを検索する
パスワードの有効期限が「切れた」ユーザーを検索する
参考
操作環境の構築
インストール
PowerShell は Windows Update からインストールできます。
PowerShell で Active Directory を操作するには、モジュールのインストールとロードが必要です。
Windows Server 2008 R2 の場合は、
サーバー マネージャー/機能/機能の追加/
リモートサーバー管理ツール/役割管理ツール/AD DS および AD LDS ツール/Windows PowerShell 用 Active Directory モジュール
Windows 7 の場合は、リモートサーバー管理ツールをインストール後、
コントロール パネル/プログラム/Windows の機能の有効化または無効化 リモートサーバー管理ツール/役割管理ツール/AD DS および AD LDS ツール/Windows PowerShell 用 Active Directory モジュール
スクリプトを作成して動作させるには
既定ではスクリプトが動作しないので、今どうなっているか確認する
Get-ExecutionPolicy
スクリプトの実行許可を与えるには、
Set-ExecutionPolicy RemoteSigned
Active Directory を操作できる様にする
モジュールをロードして、操作するコマンドレットを準備します。
コマンドレットを実行する冒頭で指定します。
すごく重いので、将来的には改善されると期待したい。
Import-Module ActiveDirectory
検索
Search-ADAccount を使用します。
通常は -UsersOnly を必ず指定してください。指定しない場合、コンピューターアカウントも同時に検索対象となります。逆にコンピュータだけ検索した場合(長い間起動していないコンピューターを検索するなど)には、-ComputersOnly を使用します。
30日間ログオンしていないユーザーを検索する
-AccountIntactive は指定した期間、または指定した日時以来ログオンしていないユーザーを検索するためのオプションです。
-TimeSpan は日数で指定します。
Search-ADAccount –AccountInactive –TimeSpan 30 -UsersOnly
2009年4月1日以降まったくログオンしていないユーザーを検索する
-AccountIntactive は指定した期間、または指定した日時以来ログオンしていないユーザーを検索するためのオプションです。
-DateTime に指定した日付以降ログオンしていないユーザーを検索します。
指定する形式は、「MM/DD/YYYY」または「MM/DD/YY」固定ですので注意してください。MMは「月」、DDは「日」、YYYYよびYYには「年」を指定します。
Search-ADAccount –AccountInactive –DateTime "04/01/2009" -UsersOnly 
ロックされたアカウントを検索する
-LockOut は現在ロックされているアカウントを検索するためのオプションです。
Search-ADAccount –LockOut -UsersOnly 
2010年4月10日以前に有効期限が切れるユーザー アカウントを検索する
Search-ADAccount –AccountExpiring –DateTime "10/4/2010" -UsersOnly
パスワードの有効期限が「切れた」ユーザーを検索する
-PasswordExpired を指定するとパスワードが切れたユーザーを検索することができます。
Search-ADAccount –PasswordExpired -UsersOnly 
参考

©2004-2017 UPKEN IPv4