ADのユーザをコマンドで一覧表示させる パターン2

前回、コマンドプロンプトで「ADのユーザをコマンドで一覧表示させる」処理について説明したが、いまひとつだった。

PowerShellの初期設定は既に終わっていることで話をしよう。終わっていない場合は、こちらを参考に設定しておこう。

 

Import-Module ActiveDirectoryを利用することで、ADに関するいろいろな処理が簡単に行えることができる。
PowerShell ISE を利用することで、エディタで書きながら、実行できるので便利だ。

PowerShell ISE

 

このコマンドを利用することで、Select-Objectに書かれている項目をコンマ区切りで表示させることが可能だ。
「CN,DisplayName,WhenCreated,PasswordLastSet,Enabled」
この中の「Enabled」はユーザが有効か無効化を判断する。
ここに、例えば「*」とすれば、すべての列項目が出力できるため、どういう列項目があるのか、どういう結果が出るのか調べるときにも有効だ。

-encodingパラメータに指定できる文字列はUnicode、UTF7、UTF8、ASCII、UTF32、BigEndianUnicode、Default、OEMで、DefaultはShift-JISと他のブログに書かれていたり、Unicodeなんだと書かれていたりするため、明記した方がよさそうだ。ちなみに、Office365では、UTF8が推奨されていたりする。

このコマンドの例では、パスワードが更新されているかどうか、調査するための情報出力となっている。ID作成日時とパスワード更新日時を比較できるような出力となっている。

是非、時間の短縮ができるものがあれば、それを活用した方が効率がいい。

 

Active Directoryモジュールは意外に便利かもしれない。いい情報があり次第、また投稿したい。