本文說明查看裝置控制項運作方式的不同方式。 從預設設定開始,每個部分都說明如何設定裝置控制以達成特定目標。
探索裝置控制的預設狀態
預設情況下, 裝置控制 處於停用狀態,並且對可以新增的裝置沒有任何限制。 基本裝置控制事件的稽核會針對上線至適用於端點的 Defender 的裝置啟用。 您可以在 裝置控制報告中看到此活動。 對內建 PnP 稽核原則 進行篩選會顯示連線到環境中端點的裝置。
適用於端點的 Defender 中的裝置控制會根據裝置的屬性來識別裝置。 選取報告中的項目即可看到裝置屬性。
裝置 ID、廠商 ID (VID) 、序號和匯流排類型都可用於識別裝置 (查看適用於端點的 Microsoft Defender) 中的裝置控制原則。 資料也可以在進階搜捕中使用,方法是搜尋 [隨插即用裝置連線] 動作 (PnPDeviceConnected) ,如下列範例查詢所示:
DeviceEvents
| where ActionType == "PnpDeviceConnected"
| extend parsed=parse_json(AdditionalFields)
| extend MediaClass = tostring(parsed.ClassName)
| extend MediaDeviceId = tostring(parsed.DeviceId)
| extend MediaDescription = tostring(parsed.DeviceDescription)
| extend MediaSerialNumber = tostring(parsed.SerialNumber)
| project Timestamp, DeviceId, DeviceName, AccountName, AccountDomain, MediaClass, MediaDeviceId, MediaDescription, MediaSerialNumber, parsed
| order by Timestamp desc
裝置控制 (狀態已啟用/停用、預設強制執行,以及上次原則更新) 可透過 Get-MpComputerStatus 在裝置上取得,如下列程式碼片段所示:
DeviceControlDefaultEnforcement :
DeviceControlPoliciesLastUpdated : 1/3/2024 12:51:56 PM
DeviceControlState : Disabled
變更要在測試裝置上啟用的裝置控制狀態。 請確定已檢查 Get-MpComputerStatus 來套用原則,如下列程式碼片段所示:
DeviceControlDefaultEnforcement : DefaultAllow
DeviceControlPoliciesLastUpdated : 1/4/2024 10:27:06 AM
DeviceControlState : Enabled
在測試裝置中,插入 USB 隨身碟。 沒有任何限制;允許讀取、寫入、執行和列印) (所有類型的存取。 會建立記錄以顯示已連接 USB 裝置。 您可以使用下列範例進階搜捕查詢來查看它:
DeviceEvents
| where ActionType == "PnpDeviceConnected"
| extend parsed=parse_json(AdditionalFields)
| extend MediaClass = tostring(parsed.ClassName)
| extend MediaDeviceId = tostring(parsed.DeviceId)
| extend MediaDescription = tostring(parsed.DeviceDescription)
| extend MediaSerialNumber = tostring(parsed.SerialNumber)
| where MediaClass == "USB"
| project Timestamp, DeviceId, DeviceName, AccountName, AccountDomain, MediaClass, MediaDeviceId, MediaDescription, MediaSerialNumber, parsed
| order by Timestamp desc
此範例查詢會依 篩選 MediaClass事件。 您可以變更預設行為,以拒絕所有裝置,或從裝置控制中排除裝置系列。 將預設行為變更為拒絕,然後將裝置控制設定為僅套用至抽取式儲存體。
針對 Intune,請使用自定義配置檔來設定裝置控制項設定,如下所示:
- 設定
./Vendor/MSFT/Defender/Configuration/DeviceControlEnabled為1 - 設定
./Vendor/MSFT/Defender/Configuration/DefaultEnforcement為2 - 設定
./Vendor/MSFT/Defender/Configuration/SecuredDevicesConfiguration為RemovableMediaDevices
將您的原則部署至測試裝置。 使用 Get-MpComputerStatus 來確認預設強制執行設定為 [拒絕],如下列程式碼片段所示:
DeviceControlDefaultEnforcement : DefaultDeny
DeviceControlPoliciesLastUpdated : 1/4/2024 10:27:06 AM
DeviceControlState : Enabled
取出 USB 裝置,然後重新插入測試機器。 嘗試打開驅動器。 無法存取磁碟機,並顯示一則訊息,指出存取遭到拒絕。
注意事項
此處 提供範例、說明和範例。
步驟 1:拒絕所有可攜式媒體
為了自訂行為,裝置控制會使用群組和規則組合的原則。 首先部署原則,以拒絕所有抽取式儲存裝置的所有存取權,並傳送通知給入口網站和使用者來稽核事件。 下圖摘要說明這些設定:
為了控制存取,裝置會組織成群組。 此原則使用名為 All removable media devices的群組。 將此原則部署至測試裝置之後,請重新插入 USB。 將出現一條通知,指出裝置存取受到限制。
該事件也會在高級狩獵中出現在 15 分鐘內。 您可以使用下列範例查詢來檢視結果:
DeviceEvents
| where ActionType == "RemovableStoragePolicyTriggered"
| extend parsed=parse_json(AdditionalFields)
| extend RemovableStorageAccess = tostring(parsed.RemovableStorageAccess)
| extend RemovableStoragePolicyVerdict = tostring(parsed.RemovableStoragePolicyVerdict)
| extend MediaBusType = tostring(parsed.BusType)
| extend MediaClassGuid = tostring(parsed.ClassGuid)
| extend MediaClassName = tostring(parsed.ClassName)
| extend MediaDeviceId = tostring(parsed.DeviceId)
| extend MediaInstanceId = tostring(parsed.DeviceInstanceId)
| extend MediaName = tostring(parsed.MediaName)
| extend RemovableStoragePolicy = tostring(parsed.RemovableStoragePolicy)
| extend MediaProductId = tostring(parsed.ProductId)
| extend MediaVendorId = tostring(parsed.VendorId)
| extend MediaSerialNumber = tostring(parsed.SerialNumber)
|project Timestamp, DeviceId, DeviceName, InitiatingProcessAccountName, ActionType, RemovableStorageAccess, RemovableStoragePolicyVerdict, MediaBusType, MediaClassGuid, MediaClassName, MediaDeviceId, MediaInstanceId, MediaName, RemovableStoragePolicy, MediaProductId, MediaVendorId, MediaSerialNumber, FolderPath, FileSize
| order by Timestamp desc
注意事項
透過進階搜捕,您每天最多可以檢視每台裝置 300 個事件。
選取事件以檢視原則和裝置的相關資訊。
步驟 2:允許存取授權的 USB 裝置
若要授與一組授權 USB 裝置的存取權,請設定群組來識別這些裝置。 我們呼叫我們的群組 Authorized USBs,並使用下圖所示的設定:
在我們的範例中,授權的 USB 群組包含由其 InstancePathId識別的單一裝置。 在部署範例之前,您可以將測試裝置的值變更為 。InstancePathId 如需如何尋找正確值的詳細資訊,請參閱使用 Windows 裝置管理員來判斷裝置屬性和使用報表和進階搜捕來判斷裝置屬性。
請注意,授權的USB組已從全部拒絕策略中排除。 這可確保針對其他原則評估這些裝置。 原則不會依序評估,因此如果獨立評估,每個原則都應該正確。 部署原則之後,請重新插入核准的 USB 裝置。 您應該會看到裝置有完整存取權。 插入另一個 USB,並確認該裝置已封鎖存取。
裝置控制有很多方法可以根據屬性對裝置進行分組。 如需詳細資訊,請參閱 適用於端點的 Microsoft Defender 中的裝置控制原則適用於端點的 Microsoft Defender。
步驟 3:允許不同類型裝置的不同存取層級
若要為不同的裝置建立不同的行為,請將它們放入不同的群組中。 在我們的範例中,我們使用名為 的群組 Read Only USBs。 下圖顯示我們使用的設定:
在我們的範例中,唯讀 USB 群組包含由其 VID_PID所識別的單一裝置。 在部署範例之前,您可以將 的 VID_PID 值變更為第二個測試裝置的值。
部署原則之後,請插入授權的 USB。 您應該會看到允許完整存取。 現在插入第二個測試裝置 (唯讀 USB) 。 您可以使用唯讀權限存取裝置。 嘗試建立新檔案,或變更檔案,您應該會看到裝置控制項會封鎖它。
如果您插入任何其他 USB 裝置,則應因為「拒絕所有其他 USB」原則而封鎖它。
步驟 4:允許特定使用者或群組對裝置進行不同層級的存取
裝置控制可讓您使用條件進一步限制存取。 最簡單的條件是使用者條件。 在裝置控制中,使用者和群組會由其安全性識別 (SID) 來識別。
下列螢幕擷取畫面顯示我們用於範例的設定:
依預設,範例會使用 的全域 SID S-1-1-0。 在部署原則之前,您可以變更與授權 USB (可寫入 USB) User1 相關聯的 SID,並將與唯讀 USB 相關聯的 SID 變更為 User2。
部署原則之後,只有使用者 1 具有授權 USB 的寫入存取權,而只有使用者 2 具有唯讀 USB 的讀取存取權。
裝置控制也支援群組 SID。 將唯讀原則中的 SID 變更為包含 User2的群組。 重新部署原則之後,使用者 2 或該群組中任何其他使用者的規則會相同。
注意事項
針對儲存在 Microsoft Entra 中的群組,請使用物件識別碼而不是 SID 來識別使用者群組。