Microsoft Intune 中的自訂合規性設定

若要展開 Intune 的內建裝置合規性選項,您可以在受管理的裝置上使用自訂合規性設定的原則。 自訂設定可讓您彈性地根據裝置上可用的設定來建立合規性,而不需要等候 Intune 將這些設定新增至內建原則範本。

您必須先準備 JSON 檔案和探索指令碼,以用於每個支援的平台,才能將自訂設定新增至原則。 指令碼和 JSON 都會成為合規性原則的一部分。 每個合規性原則支援單一指令碼,且每個指令碼可以探索多個設定:

  • JSON 檔案會定義自訂設定,以及您認為符合規範的值。 您也可以設定訊息給使用者,告訴他們如何還原每個設定的合規性。 在建立合規性原則時,只要選取該原則的探索指令碼之後,就新增 JSON 檔案。

  • 探索指令碼專屬於不同的平台,並作為合規性原則的一部分傳遞到裝置。 當裝置評估其原則時,指令碼會偵測 (探索 JSON 檔案中的) 設定,然後將結果回報給 Intune。 Windows 裝置使用 PowerShell 指令碼。 Linux 和 macOS 裝置使用符合 POSIX 規範的殼層指令碼。

    您必須先將指令碼上傳至 Microsoft Intune 系統管理中心,再建立合規性原則。 設定原則以支援自訂設定時,請選取指令碼。

部署自訂合規性設定和裝置報告之後,您可以在 Microsoft Intune 系統管理中心檢視結果以及內建合規性設定詳細資料。 您可以透過與內建合規性設定相同的方式,針對條件式存取決策使用自訂合規性設定。 它們一起形成一個複合規則集,同樣影響裝置合規性狀態。

需求

裝置平台需求

  • Windows (,不含 Windows 家用)
  • macOS
  • Linux
    • Ubuntu 桌面版 24.04 LTS 或 26.04 LTS
    • RedHat Enterprise Linux 9
    • RedHat Enterprise Linux 10

雲端需求

注意事項

即將推出適用於特殊雲端的 macOS 自訂合規性。

  • 探索指令碼 - 您建立的適用於 Windows 的 PowerShell 或適用於 Linux 或 macOS 的符合 POSIX 規範的殼層指令碼。 指令碼會在裝置上執行,以探索 JSON 檔案中定義的自訂設定。 指令碼會將那些設定的設定值傳回至 Intune。 您必須在建立合規性原則之前,先將指令碼上傳至 Microsoft Intune 系統管理中心,然後在建立原則時選取您想要使用的指令碼。

若要建立自訂合規性指令碼,請參閱 Microsoft Intune 的自訂合規性探索指令碼。

  • JSON 檔案 - JSON 檔案會定義自訂設定,以及視為符合規範的值。 它也可以包含使用者如何將裝置還原為符合設定的訊息。 如需建立自訂合規性 JSON 的指導方針,請參閱 自訂合規性 JSON 檔案。

使用自訂合規性設定建立原則

在開始建立包含自訂設定的原則之前,請檢閱 需求。

首先,將適用的探索指令碼上傳到 Intune,並在建立原則時準備好 JSON 以新增。

準備就緒時,請使用一般程序 建立合規性原則,其中包含將自訂設定新增至原則的平台特定指示。 在 [組態設定] 頁面上,透過設定 自訂合規性的選項來新增自訂設定。

注意事項

當 Windows 裝置收到具有自訂設定的合規性原則時,會檢查 Intune 管理擴充功能。 如果找不到擴充功能,裝置會執行 MSI 來安裝。 安裝之後,擴充功能會下載並執行 PowerShell 指令碼,並將合規性結果上傳至 Intune。 擴充功能使用 Intune 執行的動作包括:

  • 每八小時檢查一次新的或更新的 PowerShell 指令碼。
  • 每八小時執行一次探索指令碼。
  • 當使用者在裝置上選取 [ 檢查合規性 ] 時執行指令碼,但當時不會檢查新的或更新的指令碼。

推播通知無法觸發自訂合規性以隨選執行。

監視自訂合規性原則

使用下列方法來檢視裝置合規性狀態的詳細資料。

  • 針對 Linux、macOS 和 Windows 裝置,您可以在 Microsoft Intune 系統管理中心檢視自訂合規性設定的每個設定裝置合規性詳細資料。

在系統管理中心,移至 [報告>裝置合規性],然後選取 [ 報告 ] 索引標籤。選取 [ 不符合規範的裝置和設定] 的磚,然後使用下拉式功能表來設定報告。 請務必為作業系統選取平台,然後選取 [產生 報表]。

如需詳細資訊,請參閱監視 Intune 裝置合規性原則。

  • 在 Linux 裝置上,開啟 Intune 應用程式以檢查裝置的合規性狀態。 應用程式會顯示下列其中一種狀態:

  • 合規 – 您的裝置符合組織的原則,且應該能夠存取組織資源。

  • 檢查狀態 – Intune 目前正在評估裝置是否符合貴組織的原則。

  • 不相容 — 裝置不符合貴組織的裝置和安全性需求,而且可能無法存取貴組織的資源。

如果裝置狀態為 [不符合規範],請選取 [檢視問題 ] 以查看需要修正的問題。 如需解決常見問題的相關資訊,請參閱本文中的 Linux 裝置的其他疑難排解。

針對裝置的自訂合規性進行疑難排解

使用下列疑難排解提示,解決 Windows 和 Linux 裝置上自訂合規性設定的常見問題。

自訂設定不會評估

檢查裝置合規性報告是否有下列錯誤碼,並深入了解問題:

  • 65007..指令碼傳回失敗
  • 65008.指令碼結果中缺少設定
  • 65009: 探索到的設定的 json 無效
  • 65010: 發現之設定的資料類型無效

在 Windows 上,在 PowerShell 指令碼結尾新增下列行,以傳回與 PowerShell 指令碼相關的錯誤。

return $hash | ConvertTo-Json -Compress

確定該行位於 PowerShell 指令檔的結尾。

PowerShell 或 POSIX 相容的殼層指令碼無法選取,或在刪除後仍然可見

重新整理目前的檢視。 如果問題仍然存在,請取消原則建立流程,然後重新開始。

修正裝置上的問題之後,後續同步處理不會將問題識別為已解決且符合規範

變更裝置之後,最多可能需要八小時,才會顯示為不符合規範狀態。

使用者可以在修正裝置上的問題後手動檢查合規性,以確定問題是否已解決且符合規範?

  • 在 Windows 上,使用者可以移至公司入口網站,並在修正不相容的自訂合規性設定之後觸發同步以更新裝置狀態。

  • 在 Linux 上,使用者可以開啟 Microsoft Intune 應用程式,然後在裝置詳細資料頁面或合規性問題頁面上選取重新整理,以開始使用 Intune 進行新的簽入。

  • 在 macOS 上,使用者可以開啟公司入口網站應用程式,選取 [裝置],選取其裝置,然後選取 [檢查狀態]。

為什麼不支援更多運算子和運算元?

請連絡您的帳戶管理員,要求新增特定運算子和運算元。 然後可以考慮將它們用於未來的更新。

為什麼我無法將多個探索指令碼套用至一個自訂合規性原則?

原則支援使用單一指令碼。 不過,每個指令碼都可以檢查多個合規性值。

適用於 Linux 裝置的其他疑難排解

若要識別裝置不相容的設定:

  • 在 Microsoft Intune 系統管理中心,您可以識別不符合原則的裝置。 移至 [報告]> [裝置合規性],選取 [報告] 索引標籤,然後選取 [不符合規範裝置和設定] 的磚。 使用下拉式清單來設定您想要的報表,然後選取 [ 產生 報表]。

系統管理中心會針對裝置上不符合規範的每個設定顯示單獨一行。

  • 在 Linux 裝置上,開啟 Microsoft Intune 應用程式並檢視 [更新裝置設定] 頁面。

下列各節討論 Linux 裝置使用者可能遇到的常見問題及問題解決方法。

作業系統發行版和版本

如果裝置不符合 Linux 發佈或作業系統版本的合規性需求,使用者可能會看到升級或降級作業系統的訊息。

若要符合允許的發行版設定,裝置的 Linux 發行版和版本必須符合最低、最大及類型需求。 如有必要,請安裝受支援的 Linux 版本或發行版本,以使裝置符合規範。

密碼複雜性

如果裝置不符合密碼複雜性需求,使用者可能會看到要求他們使用更強密碼的訊息。

若要符合密碼原則設定,請將 Linux 系統設定為使用符合這些需求的密碼。 常見的組織需求包括:

  • 包含最少字母、數字或特殊字元數目的密碼
  • 密碼長度下限

裝置加密

如需為 Linux 合規性設定裝置加密的指導方針,請參閱 Linux 合規性設定。

重新整理 Linux 裝置上的合規性狀態

若要在 Linux 裝置上進行變更後重新整理合規性狀態,請參閱重新整理合規性狀態。

後續步驟