ドメインコントローラーサーバー以外からActiveDirectoryに問い合わせをする

部署の人のメールの一覧を取得したくて、ActiveDirectory へのコマンド問い合わせを調べてみました。

「Active Directoryをインストールしたサーバ上で実行しましょう」という情報ばかりしかネットになかったので独立サーバ/クライアントから問い合わせできるところから始めます。

準備編

サーバの場合

サーバマネージャのダッシュボードから役割と機能の追加を選択してください。

役割と機能の追加ウィザードが起動するので「次へ」を選択します。

「サーバープールからサーバーを選択」にチェックし、対象のサーバを選択します。

左ペインで「機能」を選択し、下記にチェックを入れます。

>役割管理ツール
>AD DSおよびAD LDSツール
AD DSツール > AD DSスナップインおよびコマンドラインツール →管理ツールのActiveDirectory関連および、コマンドラインのDSQueryなどが入る
Windows PowerShell用Active Directoryモジュール

クライアントOSの場合

OSに対して管理ツールを追加する必要があります。
マイクロソフトのサイトで「リモート サーバー管理ツール」を検索してください。

インストール後、コントロールパネルから以下のメニューを開きます。
プログラムと機能
>Windowsの機能の有効化または無効化
>役割管理ツール
>AD DSおよびAD LDSツール
AD DSツール > AD DSスナップインおよびコマンドラインツール →管理ツールのActiveDirectory関連および、コマンドラインのDSQueryなどが入る
Windows PowerShell用Active Directoryモジュール

コマンドプロンプトによる問い合わせ

DSQueryを使います。

DSQueryは古くからあるコマンドなのでネットに整備された情報があるため割愛します。

PowerShellによる問い合わせ

取り出したデータをテキストに加工するとか、2次加工がコマンドプロンプトに比べてずっとしやすいので、今回はPowerShellを使って処理を行います。

(-Properties *)を付けなかった場合の実行結果はこんな感じ

  • Descriptionに部署のツリーが入っていそうだったので、自分の部署の人かどうかを調べる

  • 名前からユーザを調べる方法

 

  • 同じ部署の人の人数と一覧を取得する

CSVに落とせてしまえば、後はやりたい放題(ry

コメントを残す

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください