2017-04-24 11 views
1

私は以下のユーザーリストを持っており、Active Directoryユーザーをこの一覧のグループに追加したいと考えています。私はグループにメンバーを追加するのにDisplayNameを使用できないことを知っています。そのため、リストされたユーザーをグループに追加するにはどうすればいいですか?DisplayNameリストからセキュリティグループにユーザーを追加する

DisplayNameDNまたはSamAccountNameに変換してユーザーを追加するよい方法はありますか?どんなアドバイスや提案も高く評価されます。

<Userlist.csv> 
----------- 
AddtoGroupname,DisplayName (*) 
Group1,UserName1 
Group1,UserName2 
Group2,UserName3 
... 

(*)左側のグループ名を追加する必要があるメンバーユーザーのDisplayNamesです。

私たちの環境ではPowershell 2.0が動作しています。

答えて

0

Get-ADUserを使用して、DisplayNameのフィルタリングに基づいてADユーザーオブジェクトを取得し、次にAdd-ADGroupMemberを使用してグループに追加することでこれを行うことができます。

(重複表示名がある場合)には、Get-ADUserが、これは任意の重複をループへのForEachを使用して複数の結果を返す場合がありますので:

Import-CSV Userlist.csv | ForEach-Object { 
    $Users = (Get-ADUser -filter "displayname -eq $($_.DisplayName)") 
    ForEach ($User in $Users) { 
     Write-Host "Adding $User to $($_.AddtoGroupName)" 
     Add-ADGroupMember -Identity $_.AddtoGroupName -Members $User 
    } 
} 

あなたは置き換える/ Write-Hostを削除する場合がありますが、私はちょうど追加しますそれは何が起こっているか見ることができます。

+1

ありがとうございました!それは完璧だ!!私はあなたの助けを本当に助けます! – Muji090

+0

不幸にも、テストしてもうまくいきませんでした...理由はわかりませんが、$ユーザーがnullを返しました。 – Muji090

+0

フィルタを次のように変更してみてください: '' displayname -like $($ _。DisplayName) "' –

関連する問題