使用PowerShell获取用户注册设备时设备名称为空的问题排查
解决AzureAD脚本中Device Name为空的问题
问题出在你调用的属性名称不对,Get-AzureADUserRegisteredDevice返回的设备对象里,设备名称对应的属性是DisplayName,而非DeviceName,所以你用$device.DeviceName会返回空值。
修正后的脚本如下:
Connect-AzureAD $user = Get-AzureADUser -Filter "userPrincipalName eq 'myuser@mydomain.com'" $userObjectId = $user.ObjectId $assignedDevices = Get-AzureADUserRegisteredDevice -ObjectId $userObjectId foreach ($device in $assignedDevices) { Write-Host "Device Name: $($device.DisplayName)" Write-Host "Device ID: $($device.DeviceId)" Write-Host "-----------------------" } Disconnect-AzureAD
如果想确认设备对象的所有可用属性,可以在循环里加一行输出:
$device | Select-Object *
这样就能看到该对象包含的所有属性和对应值,避免再用错属性名称。
内容的提问来源于stack exchange,提问作者PCMedicJAX
相关产品推荐
相关产品推荐

