毎週無効にするユーザーのリストが長く、AD 内のユーザーが無効になっているかどうかを確認し、無効になっていない場合は無効にして別の OU に移動するための LDIF スクリプトをどのように作成すればよいか考えています。
環境: Windows Server 2008 R2
ありがとう
答え1
これは PowerShell で実行できます。
一般的なプロセスは次のようになります。
- 無効にしたいユーザー名を1行ずつ読み込み、ユーザー名をループします。
- 使用
Get-ADUser
$username
ユーザーのADオブジェクトを1つずつ取得する - 取得したオブジェクトが無効になっているかどうかを確認します。
Enabled
これには ADUser のプロパティを使用できます。 - 無効にする必要がある場合は、
Disable-ADAccount
そしてMove-ADObject
それを実現するためのコマンドレット。
本当にやりたいのであれば、これをワンライナーとして実行することもできます。次のようになります。
Get-Content userstodisable.txt | Get-ADUser | Where Enabled -eq True | Disable-ADAccount -PassThru | Move-ADObject -TargetPath OU=Disabled,DC=corp,DC=example,DC=com
正しく動作するまで、自由に試してみてください。