Get-EntraDevice
从Microsoft Entra ID获取设备。
语法
GetQuery (默认值)
Get-EntraDevice
[-Top <Int32>]
[-All]
[-Filter <String>]
[-Property <String[]>]
[-LogonTimeBefore <DateTime>]
[-Stale]
[-NonCompliant]
[-IsManaged <Boolean>]
[-JoinType <String>]
[<CommonParameters>]
GetByValue
Get-EntraDevice
[-SearchString <String>]
[-All]
[-Property <String[]>]
[-LogonTimeBefore <DateTime>]
[-Stale]
[-NonCompliant]
[-IsManaged <Boolean>]
[-JoinType <String>]
[<CommonParameters>]
GetById
Get-EntraDevice
-DeviceId <String>
[-All]
[-Property <String[]>]
[<CommonParameters>]
说明
该 Get-EntraDevice cmdlet 从Microsoft Entra ID获取设备。 指定 DeviceId 用于获取特定设备的参数。
在工作或学校帐户的委托方案中,登录用户必须具有受支持的Microsoft Entra角色或具有所需权限的自定义角色。 支持以下最低特权角色:
- 云设备管理员
- Intune 管理员
- Windows 365 管理员
- 合规性管理员
- 设备管理器
示例
示例 1:按 ID 获取设备
Connect-Entra -Scopes 'Device.Read.All'
$device = Get-EntraDevice -SearchString '<device-display-name>'
Get-EntraDevice -ObjectId $device.ObjectId
DeletedDateTime Id AccountEnabled ApproximateLastSignInDateTime ComplianceExpirationDateTime DeviceCategory DeviceId DeviceMetadata DeviceOwnership
--------------- -- -------------- ----------------------------- ---------------------------- -------------- -------- -------------- ---------------
bbbbbbbb-1111-2222-3333-cccccccccccc True eeeeeeee-4444-5555-6666-ffffffffffff MetaData
此示例演示如何使用设备 ID 检索设备。
示例 2:按 DeviceID 获取设备
Connect-Entra -Scopes 'Device.Read.All'
Get-EntraDevice -Filter "DeviceId eq 'eeeeeeee-4444-5555-6666-ffffffffffff'"
DeletedDateTime Id AccountEnabled ApproximateLastSignInDateTime ComplianceExpirationDateTime DeviceCategory DeviceId DeviceMetadata DeviceOwnership
--------------- -- -------------- ----------------------------- ---------------------------- -------------- -------- -------------- ---------------
bbbbbbbb-1111-2222-3333-cccccccccccc True eeeeeeee-4444-5555-6666-ffffffffffff MetaData
此示例演示如何使用 DeviceID 检索设备。
示例 3:获取所有设备
Connect-Entra -Scopes 'Device.Read.All'
Get-EntraDevice
DeletedDateTime Id AccountEnabled ApproximateLastSignInDateTime ComplianceExpirationDateTime DeviceCategory DeviceId DeviceMetadata DeviceOwnership
--------------- -- -------------- ----------------------------- ---------------------------- -------------- -------- -------------- ---------------
bbbbbbbb-1111-2222-3333-cccccccccccc True eeeeeeee-4444-5555-6666-ffffffffffff MetaData
cccccccc-2222-3333-4444-dddddddddddd True eeeeeeee-4444-5555-6666-ffffffffffff MetaData
此示例演示如何从Microsoft Entra ID检索所有设备。
示例 4:获取前两台设备
Connect-Entra -Scopes 'Device.Read.All'
Get-EntraDevice -Top 2
DeletedDateTime Id AccountEnabled ApproximateLastSignInDateTime ComplianceExpirationDateTime DeviceCategory DeviceId DeviceMetadata DeviceOwnership
--------------- -- -------------- ----------------------------- ---------------------------- -------------- -------- -------------- ---------------
bbbbbbbb-1111-2222-3333-cccccccccccc True eeeeeeee-4444-5555-6666-ffffffffffff MetaData
cccccccc-2222-3333-4444-dddddddddddd True eeeeeeee-4444-5555-6666-ffffffffffff MetaData
此示例演示如何从Microsoft Entra ID检索前两台设备。 您可以将 -Limit 用作 -Top 的别名。
示例 5:按显示名称获取设备
Connect-Entra -Scopes 'Device.Read.All'
Get-EntraDevice -Filter "DisplayName eq 'Woodgrove Desktop'"
DeletedDateTime Id AccountEnabled ApproximateLastSignInDateTime ComplianceExpirationDateTime DeviceCategory DeviceId DeviceMetadata DeviceOwnership
--------------- -- -------------- ----------------------------- ---------------------------- -------------- -------- -------------- ---------------
bbbbbbbb-1111-2222-3333-cccccccccccc True eeeeeeee-4444-5555-6666-ffffffffffff MetaData
此示例演示如何使用显示名称检索设备。
示例 6:使用显示名称获取设备
Connect-Entra -Scopes 'Device.Read.All'
Get-EntraDevice -Filter "startsWith(DisplayName,'Woodgrove')"
DeletedDateTime Id AccountEnabled ApproximateLastSignInDateTime ComplianceExpirationDateTime DeviceCategory DeviceId DeviceMetadata DeviceOwnership
--------------- -- -------------- ----------------------------- ---------------------------- -------------- -------- -------------- ---------------
bbbbbbbb-1111-2222-3333-cccccccccccc True eeeeeeee-4444-5555-6666-ffffffffffff MetaData
此示例演示如何检索显示名称以单词 Woodgrove开头的所有设备。
示例 7:在检索到的设备之间进行搜索
Connect-Entra -Scopes 'Device.Read.All'
Get-EntraDevice -SearchString 'DESKTOP'
DeletedDateTime Id AccountEnabled ApproximateLastSignInDateTime ComplianceExpirationDateTime DeviceCategory DeviceId DeviceMetadata DeviceOwnership
--------------- -- -------------- ----------------------------- ---------------------------- -------------- -------- -------------- ---------------
bbbbbbbb-1111-2222-3333-cccccccccccc True eeeeeeee-4444-5555-6666-ffffffffffff MetaData
此示例演示如何检索包含“DESKTOP”一词的设备。
示例 8:列出重复设备
Connect-Entra -Scopes 'Device.Read.All'
Get-EntraDevice -All -Select DisplayName, OperatingSystem |
Group-Object DisplayName |
Where-Object { $_.Count -gt 1 } |
Select-Object Name, @{Name = "OperatingSystem"; Expression = { ($_.Group | Select-Object -First 1).OperatingSystem } }, Count | Sort-Object Count -Descending |
Format-Table Name, OperatingSystem, Count -AutoSize
Name OperatingSystem Count
---- --------------- -----
iPhone iOS 175
samsungSM-S928B Android 15
woodgrove-win11-client Windows 2
输出按显示名称、操作系统和计数列出重复设备。
示例 9:列出不符合的设备
Connect-Entra -Scopes 'Device.Read.All'
Get-EntraDevice -Filter "isCompliant eq false"
示例 10:列出已越狱的设备
Connect-Entra -Scopes 'Device.Read.All'
Get-EntraDevice -All | Where-Object { $_.isRooted -eq $true }
示例 11:列出托管设备
Connect-Entra -Scopes 'Device.Read.All'
Get-EntraDevice -Filter "isManaged eq true"
示例 12:列出已启用的设备
Connect-Entra -Scopes 'Device.Read.All'
Get-EntraDevice -Filter "accountEnabled eq true" -All
示例 13:列出具有特定操作系统和版本的设备
Connect-Entra -Scopes 'Device.Read.All'
Get-EntraDevice -Filter "operatingSystem eq 'Windows Server' and operatingSystemVersion eq '10.0.20348.3091'"
示例 14:获取过时的设备(2 个以上月处于非活动状态)
Connect-Entra -Scopes 'Device.Read.All'
Get-EntraDevice -Stale
DeletedDateTime Id AccountEnabled ApproximateLastSignInDateTime ComplianceExpirationDateTime DeviceCategory DeviceId DeviceMetadata DeviceOwnership
--------------- -- -------------- ----------------------------- ---------------------------- -------------- -------- -------------- ---------------
bbbbbbbb-1111-2222-3333-cccccccccccc True 2024-08-15T10:30:00Z eeeeeeee-4444-5555-6666-ffffffffffff MetaData
此示例演示如何检索尚未登录 2 个月或以上的设备。
示例 15:获取在特定日期之前登录的设备
Connect-Entra -Scopes 'Device.Read.All'
$date = Get-Date "2024-09-01"
Get-EntraDevice -LogonTimeBefore $date
DeletedDateTime Id AccountEnabled ApproximateLastSignInDateTime ComplianceExpirationDateTime DeviceCategory DeviceId DeviceMetadata DeviceOwnership
--------------- -- -------------- ----------------------------- ---------------------------- -------------- -------- -------------- ---------------
bbbbbbbb-1111-2222-3333-cccccccccccc True 2024-08-15T10:30:00Z eeeeeeee-4444-5555-6666-ffffffffffff MetaData
此示例演示如何在 2024 年 9 月 1 日之前检索上次登录的设备。
示例 16:使用 NonCompliant 参数获取不符合的设备
Connect-Entra -Scopes 'Device.Read.All'
Get-EntraDevice -NonCompliant
DeletedDateTime Id AccountEnabled ApproximateLastSignInDateTime ComplianceExpirationDateTime DeviceCategory DeviceId DeviceMetadata DeviceOwnership
--------------- -- -------------- ----------------------------- ---------------------------- -------------- -------- -------------- ---------------
bbbbbbbb-1111-2222-3333-cccccccccccc True eeeeeeee-4444-5555-6666-ffffffffffff MetaData
此示例演示如何检索不符合组织策略的设备。
示例 17:获取托管设备
Connect-Entra -Scopes 'Device.Read.All'
Get-EntraDevice -IsManaged $true
DeletedDateTime Id AccountEnabled ApproximateLastSignInDateTime ComplianceExpirationDateTime DeviceCategory DeviceId DeviceMetadata DeviceOwnership
--------------- -- -------------- ----------------------------- ---------------------------- -------------- -------- -------------- ---------------
bbbbbbbb-1111-2222-3333-cccccccccccc True eeeeeeee-4444-5555-6666-ffffffffffff MetaData
此示例演示如何检索由移动设备管理(MDM)解决方案管理的设备。
示例 18:获取已加入Microsoft Entra设备
Connect-Entra -Scopes 'Device.Read.All'
Get-EntraDevice -JoinType "MicrosoftEntraJoined"
DeletedDateTime Id AccountEnabled ApproximateLastSignInDateTime ComplianceExpirationDateTime DeviceCategory DeviceId DeviceMetadata DeviceOwnership
--------------- -- -------------- ----------------------------- ---------------------------- -------------- -------- -------------- ---------------
bbbbbbbb-1111-2222-3333-cccccccccccc True eeeeeeee-4444-5555-6666-ffffffffffff MetaData
此示例演示如何检索Microsoft Entra联接的设备。
示例 19:获取已加入混合设备的Microsoft Entra
Connect-Entra -Scopes 'Device.Read.All'
Get-EntraDevice -JoinType "MicrosoftEntraHybridJoined"
此示例演示如何检索Microsoft Entra混合联接的设备。
示例 20:合并多个筛选器参数
Connect-Entra -Scopes 'Device.Read.All'
Get-EntraDevice -Stale -NonCompliant -IsManaged $true
DeletedDateTime Id AccountEnabled ApproximateLastSignInDateTime ComplianceExpirationDateTime DeviceCategory DeviceId DeviceMetadata DeviceOwnership
--------------- -- -------------- ----------------------------- ---------------------------- -------------- -------- -------------- ---------------
bbbbbbbb-1111-2222-3333-cccccccccccc True 2024-08-15T10:30:00Z eeeeeeee-4444-5555-6666-ffffffffffff MetaData
此示例演示如何合并多个筛选器参数,以查找过时、不符合和管理的设备。
参数
-All
列出所有页面。
参数属性
| 类型: | System.Management.Automation.SwitchParameter |
| 默认值: | False |
| 支持通配符: | False |
| 不显示: | False |
参数集
(All)
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | False |
| 来自剩余参数的值: | False |
-DeviceId
指定Microsoft Entra ID中的设备的 ID。
参数属性
| 类型: | System.String |
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
| 别名: | 对象标识符 (ObjectId) |
参数集
GetById
| Position: | Named |
| 必需: | True |
| 来自管道的值: | True |
| 来自管道的值(按属性名称): | True |
| 来自剩余参数的值: | False |
-Filter
指定 OData v4.0 筛选器语句。 此参数控制返回的对象。
参数属性
| 类型: | System.String |
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
GetQuery
| Position: | Named |
| 必需: | False |
| 来自管道的值: | True |
| 来自管道的值(按属性名称): | True |
| 来自剩余参数的值: | False |
-IsManaged
根据移动设备设备管理(MDM)解决方案是否管理设备进行筛选。 用于 $true 托管设备或 $false 非托管设备。
参数属性
| 类型: | System.Nullable`1[System.Boolean] |
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
GetQuery
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | True |
| 来自剩余参数的值: | False |
GetVague
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | True |
| 来自剩余参数的值: | False |
-JoinType
按联接类型筛选设备:MicrosoftEntraJoined、MicrosoftEntraHybridJoined 或 MicrosoftEntraRegistered。
参数属性
| 类型: | System.String |
| 默认值: | None |
| 接受的值: | MicrosoftEntraJoined, MicrosoftEntraHybridJoined, MicrosoftEntraRegistered |
| 支持通配符: | False |
| 不显示: | False |
参数集
GetQuery
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | True |
| 来自剩余参数的值: | False |
GetVague
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | True |
| 来自剩余参数的值: | False |
-LogonTimeBefore
使用指定日期之前的最后一次登录筛选设备。
参数属性
| 类型: | System.DateTime |
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
GetQuery
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | True |
| 来自剩余参数的值: | False |
GetVague
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | True |
| 来自剩余参数的值: | False |
-NonCompliant
筛选不符合组织策略的设备。
参数属性
| 类型: | System.Management.Automation.SwitchParameter |
| 默认值: | False |
| 支持通配符: | False |
| 不显示: | False |
参数集
GetQuery
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | True |
| 来自剩余参数的值: | False |
GetVague
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | True |
| 来自剩余参数的值: | False |
-Property
指定要返回的属性
参数属性
| 类型: | System.String[] |
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
| 别名: | Select |
参数集
(All)
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | False |
| 来自剩余参数的值: | False |
-SearchString
指定搜索字符串。
参数属性
| 类型: | System.String |
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
参数集
GetValue
| Position: | Named |
| 必需: | False |
| 来自管道的值: | True |
| 来自管道的值(按属性名称): | True |
| 来自剩余参数的值: | False |
-Stale
筛选尚未登录 2 个月或更多设备的筛选器。
参数属性
| 类型: | System.Management.Automation.SwitchParameter |
| 默认值: | False |
| 支持通配符: | False |
| 不显示: | False |
参数集
GetQuery
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | True |
| 来自剩余参数的值: | False |
GetVague
| Position: | Named |
| 必需: | False |
| 来自管道的值: | False |
| 来自管道的值(按属性名称): | True |
| 来自剩余参数的值: | False |
-Top
指定要返回的最大记录数。
参数属性
| 类型: | System.Int32 |
| 默认值: | None |
| 支持通配符: | False |
| 不显示: | False |
| 别名: | Limit |
参数集
GetQuery
| Position: | Named |
| 必需: | False |
| 来自管道的值: | True |
| 来自管道的值(按属性名称): | True |
| 来自剩余参数的值: | False |
CommonParameters
此 cmdlet 支持通用参数:-Debug、-ErrorAction、-ErrorVariable、-InformationAction、-InformationVariable、-OutBuffer、-OutVariable、-PipelineVariable、-ProgressAction、-Verbose、-WarningAction 和 -WarningVariable。 有关详细信息,请参阅 about_CommonParameters。