Microsoft Entra PowerShell 提供強大的指令檔來管理裝置身份及監控相關事件。 有效的裝置管理對於維護安全、確保合規,以及支持組織內順暢運作至關重要。
使用 Microsoft Entra PowerShell,您可以依需求新增、更新及移除裝置,並取得裝置資訊、查看詳細裝置資料及管理裝置設定。 本文提供使用 Microsoft Entra PowerShell 管理裝置的完整指南。
在本文中,您將學習如何有效使用 Microsoft Entra PowerShell 管理裝置識別碼與設定。 它涵蓋了檢視、過濾、啟用、停用及刪除裝置,以及匯出裝置資料等任務。
先決條件
要用 Microsoft Entra PowerShell 管理裝置,你需要:
- Microsoft Entra 用戶帳戶。 如果您沒有帳戶,可以免費建立帳戶。
- 下列其中一個角色:
- 雲端裝置管理員(讀取和修改)
- Intune 管理員(唯讀)
- Windows 365 系統管理員(唯讀)
- Microsoft Entra PowerShell 模組已安裝。 請依照安裝 Microsoft Entra PowerShell 模組指南安裝模組。
檢視和篩選裝置
使用 Microsoft Entra PowerShell 以以下屬性篩選裝置清單:
裝置 ID、顯示名稱、啟用狀態、合規狀態、加入類型、活動時間戳記、作業系統類型、作業系統版本、裝置類型、MDM、自動駕駛、擴充屬性、管理單元、擁有者、製造商、型號及序號。
查看所有裝置
要查看所有裝置,請使用以下 cmdlet:
Connect-Entra -Scopes 'Device.Read.All'
Get-EntraDevice -All | Select-Object AccountEnabled, DeviceId, OperatingSystem, ApproximateLastSignInDateTime, DisplayName | ft
AccountEnabled DeviceId OperatingSystem ApproximateLastSignInDateTime DisplayName
-------------- -------- --------------- ----------------------------- -----------
True aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb Windows 10/16/2024 4:53:46 PM devicesTest2
True bbbbbbbb-1111-2222-3333-cccccccccccc Windows 10/15/2024 4:11:33 PM LAPTOP-2222
True cccccccc-4444-5555-6666-dddddddddddd Windows 9/13/2024 5:46:08 PM AdminTest
True dddddddd-5555-6666-7777-eeeeeeeeeeee Windows 10/15/2024 8:28:18 PM DESKTOP-1111
依 ID 取得裝置
若要依照裝置的 ID 檢索特定裝置,請使用:
Connect-Entra -Scopes 'Device.Read.All'
Get-EntraDevice -ObjectId 'bbbbbbbb-1111-2222-3333-cccccccccccc'
DeletedDateTime Id AccountEnabled ApproximateLastSignInDateTime ComplianceExpirationDateTime DeviceCategory DeviceId DeviceMetadata DeviceOwnership
--------------- -- -------------- ----------------------------- ---------------------------- -------------- -------- -------------- --------------
aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb False 10/2/2024 10:26:38 AM eeeeeeee-5555-6666-7777-ffffffffffff
用顯示名稱取得裝置
要依顯示名稱查找裝置,請使用:
Connect-Entra -Scopes 'Device.Read.All'
Get-EntraDevice -Filter "startsWith(DisplayName,'Woodgrove')"
DeletedDateTime Id AccountEnabled ApproximateLastSignInDateTime ComplianceExpirationDateTime DeviceCategory DeviceId DeviceMetadata DeviceOwnershi
p
--------------- -- -------------- ----------------------------- ---------------------------- -------------- -------- -------------- --------------
aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb True 10/1/2024 4:11:35 PM gggggggg-6666-7777-8888-hhhhhhhhhhhh
bbbbbbbb-1111-2222-3333-cccccccccccc False 10/2/2024 10:26:38 AM hhhhhhhh-7777-8888-9999-iiiiiiiiiiii
此範例示範如何檢索所有顯示名稱以「Woodgrove」開頭的裝置。
取得按加入類型分組的裝置數量
要查詢使用 Microsoft Entra PowerShell 加入你目錄的所有裝置類型,你可以使用 Get-EntraDevice cmdlet 並將結果依屬性TrustType分組。
Connect-Entra -Scopes 'Device.Read.All'
Get-EntraDevice -All | Group-Object -Property TrustType | Select-Object Name, Count
-
Get-EntraDevice -All: 會取回你目錄中的所有裝置。 -
Group-Object -Property TrustType:根據TrustType屬性將裝置分組,此屬性表示加入類型,例如 Microsoft Entra 已加入 和 混合式 Microsoft Entra 已加入。 -
Select-Object Name, Count: 選擇每個群組名稱(連接類型)及群組中裝置數量。 -
Join type指的是裝置的連接方式,例如 Microsoft Entra joined、Hybrid Microsoft Entra joined 以及其他類型。
此範例示範如何取得每種裝置類型的裝置數量。
Name Count
---- -----
14
EntraID 66
ServerAd 18
Workplace 393
列出重複裝置
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
搜尋裝置
使用特定裝置擷取
DeviceIdConnect-Entra -Scopes 'Device.Read.All' Get-EntraDevice -Filter "DeviceId eq 'dddddddd-5555-6666-7777-eeeeeeeeeeee'" | Select-Object Id, AccountEnabled,DeviceId, DisplayName輸出會根據
DeviceId搜尋顯示裝置詳細資料。Id AccountEnabled DeviceId DisplayName -- -------------- -------- ----------- aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb True dddddddd-5555-6666-7777-eeeeeeeeeeee ADFS Device列出不合規設備
Connect-Entra -Scopes 'Device.Read.All' Get-EntraDevice -Filter "isCompliant eq false" | Select-Object Id, isCompliant,DeviceId, DisplayName輸出會列出不符合規範的裝置。
Id IsCompliant DeviceId DisplayName -- ----------- -------- ----------- aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb False gggggggg-6666-7777-8888-hhhhhhhhhhhh ADFS Device bbbbbbbb-1111-2222-3333-cccccccccccc False hhhhhhhh-7777-8888-9999-iiiiiiiiiiii Woodgrove Device列出已越獄的裝置
Connect-Entra -Scopes 'Device.Read.All' Get-EntraDevice -All | Where-Object { $_.isRooted -eq $true } | Select-Object Id, IsRooted,DeviceId, DisplayName輸出會列出已越獄的裝置。
Id IsRooted DeviceId DisplayName -- -------- -------- ----------- aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb True gggggggg-6666-7777-8888-hhhhhhhhhhhh ADFS Device列出受管理裝置
Connect-Entra -Scopes 'Device.Read.All' Get-EntraDevice -Filter "isManaged eq true" | Select-Object Id, isManaged,DeviceId, DisplayName輸出會列出受管理裝置。
Id IsManaged DeviceId DisplayName -- --------- -------- ----------- aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb True gggggggg-6666-7777-8888-hhhhhhhhhhhh ADFS Device bbbbbbbb-1111-2222-3333-cccccccccccc True hhhhhhhh-7777-8888-9999-iiiiiiiiiiii Woodgrove Device已啟用的裝置清單
Connect-Entra -Scopes 'Device.Read.All' Get-EntraDevice -Filter "accountEnabled eq true" -All | Select-Object Id, AccountEnabled,DeviceId, DisplayName輸出結果會列出已啟用的裝置。
Id AccountEnabled DeviceId DisplayName -- -------------- -------- ----------- aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb True gggggggg-6666-7777-8888-hhhhhhhhhhhh ADFS Device bbbbbbbb-1111-2222-3333-cccccccccccc True hhhhhhhh-7777-8888-9999-iiiiiiiiiiii Woodgrove Device列出特定作業系統與版本的裝置
Connect-Entra -Scopes 'Device.Read.All' Get-EntraDevice -Filter "operatingSystem eq 'Windows Server' and operatingSystemVersion eq '10.0.20348.3091'" | Select-Object Id, AccountEnabled,DeviceId, DisplayName, operatingSystem, operatingSystemVersion | Format-Table -AutoSize輸出會根據
operatingSystem和operatingSystemVersion搜尋顯示使用者詳細資料。Id AccountEnabled DeviceId DisplayName OperatingSystem OperatingSystemVersion -- -------------- -------- ----------- --------------- ---------------------- aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb True gggggggg-6666-7777-8888-hhhhhhhhhhhh ADFS Device Windows Server 10.0.20348.3091 bbbbbbbb-1111-2222-3333-cccccccccccc True hhhhhhhh-7777-8888-9999-iiiiiiiiiiii Woodgrove Device Windows Server 10.0.20348.3091
啟用或停用 Microsoft Entra 裝置
要啟用或停用裝置,請使用 Set-EntraDevice 指令長並將屬性設定 -AccountEnabled 為 true (啟用)或 false (停用)。
Important
- 要啟用或停用裝置,您必須是 "Intune 管理員" 或 "雲端裝置管理員"。
- 停用裝置會阻止其透過 Microsoft Entra ID 進行驗證、存取由裝置基礎條件存取保護的資源,以及使用 Windows Hello 企業版 的憑證。
- 停用裝置會撤銷主要重新整理權杖(PRT)及裝置上的任何重新整理權杖。
- 印表機無法在 Microsoft Entra ID 中啟用或停用。
要啟用裝置,請執行以下指令碼:
Connect-Entra -Scopes 'Device.ReadWrite.All'
Set-EntraDevice -ObjectId 'aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb' -AccountEnabled $true
刪除 Microsoft Entra 裝置
為了維持乾淨且安全的環境,請刪除不再使用的裝置。 如果裝置由其他系統管理,例如 Microsoft Intune,請務必先將其抹除或淘汰,再刪除。 在刪除裝置之前,請參閱如何管理過時裝置。
Important
- 您必須是雲端裝置管理員、Intune 管理員或 Windows 365 管理員才能刪除裝置。
- 印表機在從 通用列印 刪除前無法被刪除。
- 在從 Intune 被刪除之前,Windows Autopilot 裝置無法被刪除。
- 刪除裝置:
- 防止其存取您的 Microsoft Entra 資源。
- 移除所有附加於裝置上的細節,例如 Windows 裝置的 BitLocker 金鑰。
- 這是一項無法恢復的活動。 除非必要,否則不建議使用。
Connect-Entra -Scopes 'Device.ReadWrite.All'
$Device = Get-EntraDevice -Filter "DisplayName eq 'Woodgrove Desktop'"
Remove-EntraDevice -ObjectId $Device.ObjectId
匯出裝置
雲端裝置管理員和 Intune 管理員可以匯出 CSV 檔案,列出裝置。 你可以套用篩選器來精細裝置清單。 若未使用濾波器,所有裝置皆包含在內。 匯出任務可能需要長達一小時才能完成,視你的選擇而定。 如果匯出任務超過 1 小時,就會失敗,且沒有檔案輸出。
匯出的清單包含這些裝置身分識別屬性:
displayName,accountEnabled,operatingSystem,operatingSystemVersion,joinType (trustType),registeredOwners,userNames,mdmDisplayName,isCompliant,registrationTime,approximateLastSignInDateTime,deviceId,isManaged,objectId,profileType,systemLabels,model
下列篩選條件可套用到匯出工作:
- 已啟用狀態
- 符合規範的狀態
- 聯結類型
- 活動時間戳記
- OS 類型
- 裝置類型
匯出所有裝置
要取得所有裝置並將資料儲存為 CSV 檔案,請使用以下 cmdlet:
Get-EntraDevice -All `
| Select-Object -Property AccountEnabled, DeviceId, OperatingSystem, OperatingSystemVersion, DisplayName, TrustType, ApproximateLastSignInDateTime `
| Export-Csv "$env:UserProfile\Downloads\deviceList.csv" -NoTypeInformation
請根據您的環境,將 $env:UserProfile 替換為您想要儲存檔案的路徑。 這個範例會直接將 CSV 檔案儲存到你的 Downloads 資料夾。
相關內容
[管理過時裝置][陳舊裝置]