通过Powershell导出Azure广告组成员身份

时间:2019-01-15 04:57:10

标签: powershell azure-active-directory azure-powershell

我需要Powershell脚本中的帮助。我正在寻找Azure AD,CSV文件中多个组的组成员身份详细信息。

我希望获得的格式是:

组名:SG-Test-Users
成员:xyz,abc等

Output needed in this format

请帮助

我在下面的脚本下尝试过,但是它没有提供我想要的格式的输出。

导入Csv-路径“ C:\ temp \ testgroup.csv” | ForEach对象{Get-AzureADGroupMember -ObjectId $ _。name |选择显示名称,用户主要名称 } | Export-Csv-路径“ c:\ temp \ outputfile1.csv” -NoTypeInformation

谢谢

3 个答案:

答案 0 :(得分:0)

请尝试以下命令,它对我而言效果很好。 注意,它将数据添加到文件中而不是覆盖。

$csv = Import-Csv "C:\Users\joyw\Desktop\testgroup.csv"
foreach ($line in $csv){
    $groupname = $line.GroupName
    $objectid = (Get-AzureADGroup | Where-Object {$_.DisplayName -eq $groupname}).ObjectId
    Get-AzureADGroupMember -ObjectId $objectid | select DisplayName,UserPrincipalName | Export-Csv -Path "C:\Users\joyw\Desktop\outputfile1.csv" -NoTypeInformation -Append
}

我的测试文件

testgroup.csv

enter image description here

outputfile1.csv

enter image description here

答案 1 :(得分:0)

我对此很陌生,但这是我的看法

尝试以下操作(根据需要修改输出),然后将控制台输出保存到文件中,并根据excel中的要求进行按摩

欢呼

    $gg=Get-AzureADGroup -top 200
    ForEach ($g in $gg){
        $a = Get-AzureADGroup -ObjectId $g.ObjectId  
        $b = Get-AzureADGroupMember -ObjectId $g.ObjectId -All $true 
        ForEach ($c in $b){ 
            Write-host  $a.DisplayName ";" $c.ObjectId ";" $c.ObjectType $c.UserType ";" $c.UserPrincipalName 
        }
    } 

答案 2 :(得分:0)

$ResourceAuditArray = @()
ForEach ($g in Get-AzureADGroup -SearchString "<first word of groups e.g. DFC, ADF, DAS>"){ 
    $ResourceAuditArray += Get-AzureADGroupMember -ObjectId $g.ObjectId -All $true  | Select-Object ObjectId, ObjectType, UserType, UserPrincipalName, @{n="DisplayName"; e={$g.DisplayName}}
} 

$ResourceAuditArray | Export-Csv  "<AAD Users list>.Csv"