我正在尝试获取租户中所有O365用户的列表,以及分配给他们的各个许可证。输出需要采用以下格式(请注意,多次列出具有多个许可证的用户):
UPN |执照 user1 | standardpack user1 | plannerstandalone user2 | enterprisepack user2 | power_bi_standard user2 | EMS
我可以使用此信息获取信息:
$groupOfUsers = Get-MsolUser -all | where { $_.IsLicensed -eq $True }
$licenses = foreach ($individual in $groupOfUsers)
{
$allLicenses = $individual.licenses | Select -ExpandProperty AccountSkuId
foreach ($lic in $allLicenses)
{ write-host = $individual.UserPrincipalName $lic }
}
我想要做的是将这个输出以我最终可以导入SQL的格式输出 - 所以表格格式或者我可以导出到csv的东西将是一个很好的开始。
任何帮助都将不胜感激。
答案 0 :(得分:2)
试试这个
$groupOfUsers = Get-MsolUser -all | where { $_.IsLicensed -eq $True }
$results = foreach ($user in $groupOfUsers) {
$licenses = $user.licenses.accountskuid
foreach ($license in $licenses) {
[pscustomobject]@{
UPN = $user.userprincipalname
License = $license
}
}
}
$results
$results | Export-Csv c:\temp\o365licenses.csv -NoTypeInformation
start c:\temp\0365licenses.csv
答案 1 :(得分:0)
使用powershell获取许可证列表 得到-MsolAccountSku
和 Get-MsolUser | Where-Object {($ _。licenses).AccountSkuId -match“EnterprisePremium”}