適用於端點的 Microsoft Defender 中的裝置控制原則
適用於:
本文說明裝置控制原則、規則、專案、群組和進階條件。 基本上,裝置控制原則會定義一組裝置的存取權。 範圍內的裝置取決於包含的裝置群組清單和排除的裝置群組清單。 如果裝置位於所有包含的裝置群組中,而且沒有任何排除的裝置群組,則會套用原則。 如果未套用任何原則,則會套用默認強制執行。
默認會停用裝置控制件,因此允許存取所有類型的裝置。 若要深入瞭解裝置控制,請參閱 適用於端點的 Microsoft Defender 中的裝置控件。
控制預設行為
啟用裝置控制項時,預設會針對所有裝置類型啟用它。 默認強制執行也可以從 [允許 ] 變更為 [ 拒絕]。 您的安全性小組也可以設定裝置控制所保護的裝置類型。 下表說明各種設定組合如何變更訪問控制決策。
裝置控制項是否已啟用? | 預設行為 | 裝置類型 |
---|---|---|
否 | 允許存取 | - CD/DVD 磁碟驅動器 -印表機 - 卸載式媒體裝置 - Windows 可攜式裝置 |
是 | (未指定) 允許存取 |
- CD/DVD 磁碟驅動器 -印表機 - 卸載式媒體裝置 - Windows 可攜式裝置 |
是 | Deny | - CD/DVD 磁碟驅動器 -印表機 - 卸載式媒體裝置 - Windows 可攜式裝置 |
是 | 拒絕卸除式媒體裝置和印表機 | - 印表機和卸除式媒體裝置 (封鎖) - 允許的CD/DVD 磁碟驅動器和 Windows 可攜式裝置 () |
設定裝置類型時,適用於端點的 Defender 中的裝置控制會忽略對其他裝置系列的要求。
如需詳細資訊,請參閱下列文章:
原則
為了進一步精簡對裝置的存取,裝置控制會使用原則。 原則是一組規則和群組。 規則和群組的定義方式在管理體驗和操作系統之間稍有不同,如下表所述。
管理工具 | 作業系統 | 規則和群組的管理方式 |
---|---|---|
Intune – 裝置控制原則 | Windows | 裝置和印表機群組可以作為可重複使用的設定來管理,並包含在規則中。 並非所有功能都可在裝置控制原則中使用 (請參閱使用 Microsoft Intune) 部署和管理裝置控制件 |
Intune – 自定義 | Windows | 每個群組/規則都會儲存為自定義設定原則中的 XML 字串。 OMA-URI 包含群組/規則的 GUID。 必須產生 GUID。 |
群組原則 | Windows | 群組和規則會在 群組原則 物件中的個別 XML 設定中定義 (請參閱使用 群組原則) 部署和管理裝置控制項。 |
Intune | Mac | 規則和原則會合併成單一 JSON,並包含在mobileconfig 使用 Intune |
JAMF | Mac | 規則和原則會合併成單一 JSON,並使用 JAMF 做為裝置控制原則進行設定 (請參閱 macOS 裝置控制) |
規則和群組是由全域唯一標識碼 (GUID) 識別。 如果裝置控制原則是使用 Intune 以外的管理工具來部署,則必須產生 GUID。 您可以使用 PowerShell 來產生 GUID。
如需架構詳細數據,請參閱 Mac 的 JSON 架構。
使用者
裝置控制原則可以套用至使用者和/或使用者群組。
注意事項
在裝置控制件的相關文章中,使用者群組稱為 使用者群組。 「 群組」 一詞指的是裝置控制原則中定義的 群組 。
使用 Intune,在 Mac 和 Windows 上,裝置控制原則可以以 Entra Id 中定義的使用者群組為目標。
在 Windows 上,使用者或使用者群組可以是原則中 項目 的條件。
具有使用者或使用者群組的專案可以參考來自 Entra Id 或本機 Active Directory 的物件。
搭配使用者和使用者群組使用裝置控制的最佳做法
若要在 Windows 上建立個別使用者的規則,請在規則中建立具有
Sid
foreach 使用者條件的專案若要在 Windows 和 Intune 上建立使用者群組的規則,請為 [rule] 中的每個使用者群組建立具有條件的專案
Sid
,並將原則目標設為 Intune 中的計算機群組,或建立沒有條件的規則,並以 Intune 為使用者群組的原則為目標。在 Mac 上,使用 Intune,並將原則的目標設為 Entra Id 中的使用者群組。
警告
請勿在規則中同時使用使用者/使用者群組條件,以及在 Intune 中使用使用者群組目標。
注意事項
如果網路連線是問題,請使用 Intune 使用者群組目標或本機 Active Directory 群組。 參考 Entra Id 的使用者/使用者群組條件 應該只 用於與 Entra Id 有可靠連線的環境中。
規則
規則會定義包含的群組清單和排除群組的清單。 若要套用規則,裝置必須位於所有包含的群組中,且沒有任何排除的群組。 如果裝置符合規則,則會評估該規則的專案。 如果要求符合條件,則專案會定義套用的動作和通知選項。 如果未套用任何規則或沒有符合要求的專案,則會套用預設強制執行。
例如,若要允許某些 USB 裝置的寫入存取權,以及所有其他 USB 裝置的讀取存取權,請使用下列原則、群組和預設強制設定為拒絕的專案。
群組 | 描述 |
---|---|
所有卸除式存儲設備 | 抽取式存放設備 |
可寫入的USB | 允許寫入存取權的USB清單 |
規則 | 包含的裝置 群組 | 排除的裝置 群組 | 項目 |
---|---|---|---|
USB 的唯讀存取權 | 所有卸除式存儲設備 | 可寫入的USB | 唯讀存取 |
USB 的寫入許可權 | 可寫入的USB | 寫入存取 |
規則的名稱會出現在入口網站中,以便向用戶報告和快顯通知,因此請務必提供規則描述性名稱。
您可以在 Intune 中編輯原則、在 Windows 中使用 XML 檔案,或在 Mac 上使用 JSON 檔案來設定規則。 選取每個索引標籤以取得詳細數據。
下圖描述 Intune 中裝置控制原則的組態設定:
在螢幕快照中,[包含的標識符] 和 [排除的標識符] 是包含和排除的可重複使用設定群組的參考。 原則可以有多個規則。
Intune 不接受規則的順序。 規則可以依任何順序評估,因此請務必明確排除不在規則範圍內的裝置群組。
Entries
裝置控制原則會定義存取 (稱為一組裝置的專案) 。 專案會定義符合專案中所定義原則和條件之裝置的動作和通知選項。
項目設定 | 選項 |
---|---|
AccessMask | 只有在存取作業符合存取掩碼時,才套用動作 - 存取遮罩是存取值的位 OR: 1 - 裝置讀取 2 - 裝置寫入 4 - 裝置執行 8 - 檔案讀取 16 - 檔案寫入 32 - 檔案執行 64 - 列印 例如: 裝置讀取、寫入和執行 = 7 (1+2+4) 裝置讀取、磁碟讀取 = 9 (1+8) |
動作 | 允許 Deny AuditAllow AuditDeny |
通知 | 無 (預設) 產生事件 使用者收到通知 |
項目評估
有兩種類型的專案: (允許/拒絕) 的強制專案,以及 AuditAllow/AuditDeny) (稽核專案。
規則的強制執行專案會依序評估,直到符合所有要求的許可權為止。 如果沒有任何專案符合規則,則會評估下一個規則。 如果沒有相符的規則,則會套用預設值。
稽核專案
稽核事件可控制裝置控制控制裝置控制裝置控制規則 (允許/拒絕) 時的行為。 裝置控制件可以向用戶顯示通知。 使用者會收到包含裝置控制原則名稱和裝置名稱的通知。 在拒絕初始存取之後,每小時會出現一次通知。
裝置控制項也可以建立進階搜捕中可用的事件。
重要事項
每個裝置每天有300個事件的限制。 執行強制決策之後,系統會處理稽核專案。 系統會評估所有對應的稽核專案。
條件
項目支援下列選擇性條件:
- 使用者/使用者群組條件:僅將動作套用至 SID 所識別的使用者/使用者群組
注意事項
對於儲存在 Microsoft Entra 識別碼中的使用者群組和使用者,請在條件中使用對象識別碼。 針對儲存在本機的使用者群組和使用者,請使用安全標識碼 (SID)
注意事項
在 Windows 上,您可以執行 PowerShell 命令 whoami /user
來擷取已登入使用者的 SID。
- 機器條件:僅將動作套用至 SID 所識別的裝置/群組
- 參數條件:只有在參數符合時才套用動作 (請參閱進階條件)
專案可以進一步限定於特定用戶和裝置。 例如,只允許此裝置上的使用者讀取這些USB。
原則 | 包含的裝置 群組 | 排除的裝置 群組 | 專案 (ies) |
---|---|---|---|
USB 的唯讀存取權 | 所有卸除式存儲設備 | 可寫入的USB | 唯讀存取 |
USB 的寫入許可權 | 可寫入的USB | 使用者 1 的寫入存取權 裝置群組 A 上使用者 2 的寫入存取權 |
專案中的所有條件都必須為 true,才能套用動作。
您可以使用 Intune、Windows 中的 XML 檔案或 Mac 上的 JSON 檔案來設定專案。 選取每個索引標籤以取得詳細數據。
在 Intune 中,[存取遮罩] 欄位有選項,例如:
- 讀 (磁碟層級讀取 = 1)
- 寫 (磁碟層級寫入 = 2)
- 執行 (磁碟層級執行 = 4)
- 列印 (列印 = 64) 。
並非所有功能都會顯示在 Intune 用戶介面中。 如需詳細資訊,請參閱使用 Intune 部署和管理裝置控制。
群組
群組 定義依物件屬性篩選物件的準則。 如果對象的屬性符合為群組定義的屬性,則會將物件指派給群組。
注意事項
本節中的 群組 不參考使用者群組。
例如:
- 允許的 USB 是符合上述任一製造商的所有裝置
- 遺失的 USB 是符合任何這些序號的所有裝置
- 允許的印表機是符合任何這些 VID/PID 的所有裝置
屬性可以透過四種方式進行比對: MatchAll
、 MatchAny
、 MatchExcludeAll
和 MatchExcludeAny
-
MatchAll
:屬性是 “And” 關聯性;例如,如果系統管理員針對每個已連線的USB放置DeviceID
和InstancePathID
,系統就會檢查USB是否符合這兩個值。 -
MatchAny
:屬性為 “Or” 關聯性;例如,如果系統管理員針對每個連線的USB放置DeviceID和InstancePathID
,只要USB具有相同的DeviceID
或InstanceID
值,系統就會強制執行。 -
MatchExcludeAll
:屬性是 “And” 關聯性,涵蓋任何不符合的專案。 例如,如果系統管理員放置DeviceID
和並InstancePathID
使用MatchExcludeAll
,則只要USB沒有相同的DeviceID
和InstanceID
值,系統就會強制執行每個連線的USB。 -
MatchExcludeAny
:屬性是 “Or” 關聯性,涵蓋任何不符合的專案。 例如,如果系統管理員放置DeviceID
和InstancePathID
並使用MatchExcludeAny
,則只要USB沒有相同的DeviceID
或InstanceID
值,系統就會強制執行每個連線的USB。
群組 使用兩種方式:在規則中選取要包含/排除的裝置,以及篩選進階條件的存取權。 下表摘要說明群組類型及其使用方式。
類型 | 描述 | O/S | 包含/排除規則 | 進階條件 |
---|---|---|---|---|
裝置 (預設) | 篩選裝置和印表機 | Windows/Mac | X | |
網路 | 篩選網路條件 | Windows | X | |
VPN 連線 | 篩選 VPN 條件 | Windows | X | |
檔案 | 篩選文件屬性 | Windows | X | |
列印作業 | 篩選要列印之檔案的屬性 | Windows | X |
包含的群組清單和排除群組清單所決定之原則範圍內的裝置。 如果裝置位於所有包含的群組中,且沒有任何排除的群組,則適用規則。 群組 可以從裝置的屬性組成。 您可以使用下列屬性:
屬性 | 描述 | Windows 裝置 | Mac 裝置 | 印表機 |
---|---|---|---|---|
FriendlyNameId |
Windows 裝置管理員 中的易記名稱 | Y | N | Y |
PrimaryId |
裝置的類型 | Y | Y | Y |
VID_PID |
廠商標識碼是 USB 委員會指派給廠商的四位數廠商代碼。 產品標識碼是廠商指派給裝置的四位數產品代碼。 支援通配符。 例如,0751_55E0 |
Y | N | Y |
PrinterConnectionId |
印表機連線的類型: - USB :透過電腦的 USB 埠連線的印表機。 - Network :網路印表機是可透過網路連線存取的印表機,可讓連線到網路的其他電腦使用。- Corporate :公司印表機是透過內部部署 Windows 印表伺服器共用的列印佇列。- Universal :通用列印是一種現代化的列印解決方案,組織可用來透過雲端服務從 Microsoft 管理其列印基礎結構。 什麼是通用列印? - 通用列印 |Microsoft Docs - File :'Microsoft列印到 PDF' 和 'Microsoft XPS 檔寫入器' 或其他使用 FILE: 或 PORTPROMPT: 連接埠的印表機- Custom :未透過印表圊Microsoft連線的印表機- Local :印表機不是上述任何類型,例如透過 RDP 印印或重新導向印表機 |
N | N | Y |
BusId |
如需裝置 (的詳細資訊,請參閱下表後面的章節) | Y | N | N |
DeviceId |
如需裝置 (的詳細資訊,請參閱下表後面的章節) | Y | N | N |
HardwareId |
如需裝置 (的詳細資訊,請參閱下表後面的章節) | Y | N | N |
InstancePathId |
如需裝置 (的詳細資訊,請參閱下表後面的章節) | Y | N | N |
SerialNumberId |
如需裝置 (的詳細資訊,請參閱下表後面的章節) | Y | Y | N |
PID |
產品標識碼是廠商指派給裝置的四位數產品代碼 | Y | Y | N |
VID |
廠商標識碼是 USB 委員會指派給廠商的四位數廠商代碼。 | Y | Y | N |
DeviceEncryptionStateId |
(預覽) 裝置的 BitLocker 加密狀態。 有效值為 BitlockerEncrypted 或 Plain |
Y | N | N |
APFS Encrypted |
如果裝置已加密APFS | N | Y | N |
使用 Windows 裝置管理員 來判斷裝置屬性
針對 Windows 裝置,您可以使用 裝置管理員 來瞭解裝置的屬性。
開啟 裝置管理員,找出裝置,以滑鼠右鍵按兩下 [屬性],然後選取 [詳細數據] 索引標籤。
在 [屬性] 清單中,選取 [裝置實例路徑]。
針對裝置實例路徑所顯示的
InstancePathId
值是 ,但也包含其他屬性:USB\VID_090C&PID_1000\FBH1111183300721
{BusId}\{DeviceId}\{SerialNumberId}
設備管理器中的屬性會對應至裝置控制項,如下表所示:
裝置管理員 裝置控制件 硬體標識碼 HardwareId
易記名稱 FriendlyNameId
Parent VID_PID
DeviceInstancePath InstancePathId
使用報表和進階搜捕來判斷裝置的屬性
裝置屬性在進階搜捕中具有稍微不同的標籤。 下表將入口網站中的標籤對應至 propertyId
裝置控制原則中的 。
Microsoft Defender 入口網站屬性 | 裝置控制件屬性識別碼 |
---|---|
媒體名稱 | FriendlyNameId |
廠商標識碼 | HardwareId |
DeviceId | InstancePathId |
序號 | SerialNumberId |
注意事項
請確定選取的物件具有正確的原則媒體類別。 一般而言,針對卸除式記憶體,請使用 Class Name == USB
。
在 Intune 中設定群組、在 Windows 中設定 XML,或在 Mac 上設定 JSON
您可以使用適用於 Windows 的 XML 檔案,或在 Mac 上使用 JSON 檔案,在 Intune 中設定群組。 選取每個索引標籤以取得詳細數據。
注意事項
XML Group Id
和 id
JSON 中的會用來識別裝置控制元件內的群組。 它不是任何其他的參考,例如 Entra Id 中的 使用者群組 。
Intune中的可重複使用設定會對應至裝置群組。 您可以在 Intune 中設定可重複使用的設定。
群組有兩種類型:印表機裝置和卸除式記憶體。 下表列出這些群組的屬性。
群組類型 | 屬性 |
---|---|
印表機裝置 | - FriendlyNameId - PrimaryId - PrinterConnectionId - VID_PID |
卸除式儲存裝置 | - BusId - DeviceId - FriendlyNameId - HardwareId - InstancePathId - PID - PrimaryId - SerialNumberId - VID - VID_PID |
進階條件
您可以根據參數進一步限制專案。 參數會套用超過裝置的進階條件。 進階條件允許根據所評估的網路、VPN 連線、檔案或列印作業進行細部控制。
注意事項
只有 XML 格式才支援進階條件。
網路條件
下表描述網路群組屬性:
屬性 | 描述 |
---|---|
NameId |
網路的名稱。 支援通配符。 |
NetworkCategoryId |
有效的選項為 Public 、 Private 或 DomainAuthenticated 。 |
NetworkDomainId |
有效的選項為 NonDomain 、 Domain 、 DomainAuthenticated 。 |
這些屬性會新增至 Network 類型群組的 DescriptorIdList。 以下是範例代碼段:
<Group Id="{e5f619a7-5c58-4927-90cd-75da2348a30a}" Type="Network" MatchType="MatchAll">
<DescriptorIdList>
<NetworkCategoryId>Public</PathId>
<NetworkDomainId>NonDomain</PathId>
</DescriptorIdList>
</Group>
群組接著會在項目中參考為參數,如下列代碼段所示:
<Entry Id="{1ecfdafb-9b7f-4b66-b3c5-f1d872b0961d}">
<Type>Deny</Type>
<Options>0</Options>
<AccessMask>40</AccessMask>
<Parameters MatchType="MatchAll">
<Network MatchType="MatchAny">
<GroupId>{ e5f619a7-5c58-4927-90cd-75da2348a30a }</GroupId>
</Network>
</Parameters>
</Entry>
VPN 連線條件
下表描述 VPN 連線條件:
名稱 | 描述 |
---|---|
NameId |
VPN 連線的名稱。 支援通配符。 |
VPNConnectionStatusId |
有效的值為 Connected 或 Disconnected 。 |
VPNServerAddressId |
的 VPNServerAddress 字串值。 支援通配符。 |
VPNDnsSuffixId |
的 VPNDnsSuffix 字串值。 支援通配符。 |
這些屬性會新增至 VPNConnection 類型群組的 DescriptorIdList,如下列代碼段所示:
<Group Id="{d633d17d-d1d1-4c73-aa27-c545c343b6d7}" Type="VPNConnection">
<Name>Corporate VPN</Name>
<MatchType>MatchAll</MatchType>
<DescriptorIdList>
<NameId>ContosoVPN</NameId>
<VPNServerAddressId>contosovpn.*.contoso.com</VPNServerAddressId>
<VPNDnsSuffixId>corp.contoso.com</VPNDnsSuffixId>
<VPNConnectionStatusId>Connected</VPNConnectionStatusId>
</DescriptorIdList>
</Group>
然後將群組參考為專案中的參數,如下列代碼段所示:
<Entry Id="{27c79875-25d2-4765-aec2-cb2d1000613f}">
<Type>Allow</Type>
<Options>0</Options>
<AccessMask>64</AccessMask>
<Parameters MatchType="MatchAny">
<VPNConnection>
<GroupId>{d633d17d-d1d1-4c73-aa27-c545c343b6d7}</GroupId>
</VPNConnection>
</Parameters>
</Entry>
群組接著會在項目中參考為參數,如下列代碼段所示:
<Entry Id="{1ecfdafb-9b7f-4b66-b3c5-f1d872b0961d}">
<Type>Deny</Type>
<Options>0</Options>
<AccessMask>40</AccessMask>
<Parameters MatchType="MatchAll">
<File MatchType="MatchAny">
<GroupId>{ e5f619a7-5c58-4927-90cd-75da2348a30f }</GroupId>
</File>
</Parameters>
</Entry>
列印作業條件
下表描述 PrintJob
群組屬性:
名稱 | 描述 |
---|---|
PrintOutputFileNameId |
列印到檔案的輸出目的地檔案路徑。 支援通配符。 例如,C:\*\Test.pdf |
PrintDocumentNameId |
來源檔案路徑。 支援通配符。 此路徑可能不存在。 例如,將文字新增至記事本中的新檔案,然後列印而不儲存盤案。 |
這些屬性會新增至 DescriptorIdList
類型 PrintJob
群組的 ,如下列代碼段所示:
<Group Id="{e5f619a7-5c58-4927-90cd-75da2348a30b}" Type="PrintJob" MatchType="MatchAny">
<DescriptorIdList>
<PrintOutputFileNameId>C:\Documents\*.pdf</PrintOutputFileNameId >
<PrintDocumentNameId>*.xlsx</PrintDocumentNameId>
<PrintDocumentNameId>*.docx</PrintDocumentNameId>
</DescriptorIdList>
</Group>
群組接著會在項目中參考為參數,如下列代碼段所示:
<Entry Id="{1ecfdafb-9b7f-4b66-b3c5-f1d872b0961d}">
<Type>Deny</Type>
<Options>0</Options>
<AccessMask>40</AccessMask>
<Parameters MatchType="MatchAll">
<PrintJob MatchType="MatchAny">
<GroupId>{e5f619a7-5c58-4927-90cd-75da2348a30b}</GroupId>
</PrintJob>
</Parameters>
</Entry>