Powershell Active Directory モジュールを活用しよう!! (その2)
皆さん、こんにちは。
先日、犬と一緒に温泉に行ってきました。犬専用の温泉風呂があるかのか!?と期待して行ったのですが、想像していたのとは異なり普通のバスタブにお湯を入れて利用するものでした。。。ちょっと微妙な感じでしたが、とりあえず楽しんできました!!やっぱり、温泉はいいですね。
で、今回ですが、前回に引き続き PowerShell 関係のネタを紹介させていただきます。 ご存じの通り Windows Server 2008 R2 では 、PowerShell は 2.0 にバージョンアップされております。 その新機能の一つに Active Directory モジュールが新たに追加されていたりするのですが、 その中で、 GUI の機能もいくつか追加されておりますので紹介したいと思います。
1.Windows Powershell ISE(Integrated Scripting Environment)
これまで、 Powershell には開発用 GUI は提供されていなかった為、直接コマンドプロンプト上で打ち込むか、テキストエディター等で ps1 ファイルを作成し実行するなど、作成に適した環境が提供されておりませんでした。
今回、この「Windows Powershell ISE」 が提供されて事でより Powershell スクリプトの作成が簡単に作成できるようになりました。以下に Windows Powershell ISE の画面を示します。
Windows Powershell ISEの主な特徴は以下の通りです。
(1)コマンドやコメントおよび変数毎に構文が色別に分かりやすく表示
(2)タグ表示により複数のモジュールの利用が簡単
(3)ブレイクポイントの指定 / 解除や選択項目の実行などのデバック機能を搭載
などなど、非常に開発しやすい環境が提供されております。
使用時の注意事項としては、Windows Powershell ISE では標準で組み込まれているモジュールは Windows Powershell のコマンドのみとなっていますので、AD 関連のコマンドを実行しても、エラーが表示され実行されません。なので起動時に AD モジュールであれば、 「Import-Module ActiveDirectory」を実行し AD モジュールを組み込んでいただく必要がありますのでご注意ください。
2.Out-GridViewコマンド
PowerShellスクリプトの実行結果からさらにデータの絞り込みや並べ替えができたらと思われた方は少なくないと思います。
通常ですと、Filterの構文を追記したりと構文の修正が発生しておりました。
Out-GridView コマンドを利用する事で出力されたデータを簡単に並べ替えや絞り込みを行う事が可能となっております。
利用方法も簡単で、出力系の構文に「| Out-GridView」を追加する事でデータがGridView 画面上に表示されデータ加工が可能となります。
以下に Get-Adobject コマンド でAD上のオブジェクトを検索した結果を GridView 画面に表示した画面を示します。
コマンド例:Get-ADObject -Searchbase "(ドメイン名)" -ldapFilter{(ObjectClass=User)} | Out-GridView
上記画面上の「Add criteria」ボタンを選択していただくと、表示されている項目ごとにデータをフィルタする事が可能です。
以下に、フィルタを指定した画面を示します。
指定したフィルタ例:Name が H または D で始まる User
指定できる条件は以下の通りです。
(1)contains
(2)dose not contain
(3)starts with
(4)eguals
(5)dose not equal
(6)ends with
(7)is empty
(8)is not empty
このように、出力されたデータを柔軟に加工できるようになっております。
ここで抽出されたデータを外部に保存する事はできませんが、データの条件を確認したり、データの内容を分析したりと様々な形で利用できるのではないかと思います。
今回は上記2つの機能について紹介させていただきました。是非ご利用してみてください。
中村 仁吏