SHARE
TWEET

Get AD Group Membership

auone May 31st, 2020 (edited) 1,171 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. $Now = Get-Date -Format 'yyyyMMdd_hhmmss'
  2. $logPath = Join-Path -Path ([Environment]::GetFolderPath("Desktop")) -ChildPath ('{0}.csv' -f $Now )
  3. $users = Get-ADUser -Filter * -SearchBase "OU=Newusers,DC=example,DC=local"
  4. foreach ($user in $users) {
  5.   if($user -eq ''){
  6.     break
  7.   }
  8.   Write-Host ('{0} : ' -f $user.SamAccountName) -NoNewline
  9.   $grps = (Get-ADPrincipalGroupMembership -identity $user).name
  10.   $line = '"{0}",' -f $user.SamAccountName
  11.   foreach ($grp in $grps){
  12.     $line += '"{0}",' -f $grp
  13.   }
  14.   echo $line
  15.   Out-File -InputObject $line -Encoding 'utf8' -Append -FilePath $logPath
  16. }
  17. <#
  18. ◆ 処理内容
  19. 3 行目で指定された DN から User object を全て取得。
  20. 取得した User object の SAM 名と所属グループ名を CSV に出力する。
  21.  
  22. ◆ CSV 仕様
  23. CSV は 1 カラム目が SAM 名、2 カラム目以降が所属グループ。
  24. CSV ファイルは実行したユーザのデスクトップ上に「yyyyMMdd_hhmmss.csv」という書式のファイル名で作成される。
  25.  
  26. ◆ 実行環境
  27. 実行にあたり、Domain Users 権限が必要となる。
  28. 実行に際しては PowerShell モジュール「ActiveDirectory」が必要。
  29. モジュール「ActiveDirectory」は、Domain Controller であれば (通常は) インストール済み。
  30. Win 10 なら RSAT (Remote Server Administration Tools) をインストールを行うことで追加される。
  31. Domain Controller 以外の Windows Server (いわゆるメンバサーバ) の場合は PowerShell 上で
  32. Install-WindowsFeature RSAT-ADDS-Tools
  33. でインストールが可能となる。
  34. #>
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Top