コンテンツにスキップ
Zenn Dev 8chikuwa3 Articles 97019af96a3f7b

Active Directory:OU階層をツリー状テキストに出力

  • URL: https://zenn.dev/8chikuwa3/articles/97019af96a3f7b
  • 日付: 2026-06-26
  • Tier: Tier 3
  • 要旨: Active DirectoryのOU階層構造をPowerShellで解析し、視覚的なツリー状テキストファイルとして出力するスクリプトを紹介している。Get-ADOrganizationalUnit で取得した全OUの DistinguishedName 文字列を解析して階層の深さとソートキーを算出し、インデントを付与してツリーを再構築する。GUIでの俯瞰が難しいAD環境の全体像把握や、構成管理の証跡・引き継ぎ資料として活用できる。

詳細

  • 課題: GUIでは全体を俯瞰しにくく、Get-ADOrganizationalUnit のデフォルト出力はフラットなリストで階層が把握しにくい
  • スクリプトの処理フロー:
    1. Get-ADOrganizationalUnit -Filter * で全OU情報を一括取得
    2. DistinguishedName をカンマで分割(エスケープされた , は除外)して要素数から階層の深さを取得
    3. 分割した要素を逆順に並び替えてソートキーを生成し、Sort-Object SortKey で階層順に整列
    4. 階層の深さに比例したインデントと |– プレフィックスを付与してツリー文字列を生成
    5. Out-File -Encoding UTF8 でテキストファイルに出力
  • 出力例: 最上位OUからサブOUにかけて階層構造がインデントで表現される
  • 実行要件: RSATの Active Directory モジュール。読み取り権限のみで動作(管理者権限不要)
  • GPO情報も含めた拡張版は別記事(OU階層とGPO適用状況をツリー状テキストに出力)で紹介