Microsoft Intune で Linux および Windows デバイスのカスタム コンプライアンス ポリシーと設定を使用する

Intune の組み込みのデバイス コンプライアンス オプションを拡張するには、管理された Linux および Windows デバイスのカスタム コンプライアンス設定のポリシーを使用します。 カスタム設定を使用すると、Intune が組み込みのポリシー テンプレートにこれらの設定を追加するのを待たずに、デバイスで使用できる設定に基づいてコンプライアンスを柔軟に行うことができます。

この機能は、以下に適用されます。

  • Windows (Windows Home を除く)
  • Linux
    • Ubuntu Desktop バージョン 24.04 LTS または 26.04 LTS
    • RedHat Enterprise Linux 9
    • RedHat Enterprise Linux 10

ポリシーにカスタム設定を追加する前に、サポートされている各プラットフォームで使用する JSON ファイルと検出スクリプトを準備する必要があります。 スクリプトと JSON の両方がコンプライアンス ポリシーの一部になります。 各コンプライアンス ポリシーは 1 つのスクリプトをサポートし、各スクリプトは複数の設定を検出できます。

  • JSON ファイルは、カスタム設定と、準拠していると見なされる値を定義します。 また、設定ごとにコンプライアンスを復元する方法を示すユーザー向けメッセージを構成することもできます。 コンプライアンス ポリシーを作成する際、そのポリシーの検出スクリプトを選択した直後に、JSON ファイルを追加します。

  • 検出スクリプトは、さまざまなプラットフォームに固有であり、コンプライアンス ポリシーの一部としてデバイスに配信されます。 デバイスがそのポリシーを評価すると、スクリプトは JSON ファイルから設定を検出 (検出) し、結果を Intune に報告します。 Windows デバイスは PowerShell スクリプトを使用し、Linux デバイスは POSIX 準拠のシェル スクリプトを使用します。

    コンプライアンス ポリシーを作成する前に、スクリプトを Microsoft Intune 管理センターにアップロードする必要があります。 カスタム設定をサポートするようにポリシーを構成するときにスクリプトを選択します。

カスタム コンプライアンス設定を展開し、デバイスが報告すると、Microsoft Intune 管理センターで組み込みのコンプライアンス設定の詳細と結果を表示できます。 組み込みのコンプライアンス設定と同じ方法で、条件付きアクセスの決定にカスタム コンプライアンス設定を使用できます。 これらが組み合わせることで複合ルール セットが形成され、デバイスのコンプライアンス状態に等しく影響します。

要件

デバイス プラットフォームの要件

  • Windows (Windows Home を除く)
  • Linux
    • Ubuntu Desktop バージョン 24.04 LTS または 26.04 LTS
    • RedHat Enterprise Linux 9
    • RedHat Enterprise Linux 10

クラウドの要件

  • Microsoft Entra ハイブリッド参加済みデバイスを含む、Microsoft Entra 参加済みデバイス。

    Microsoft Entra ハイブリッド参加済みデバイスは、Microsoft Entra ID に参加しているデバイスであり、オンプレミスの Active Directory にも参加しているデバイスです。 詳細については、「Microsoft Entra ハイブリッド結合の実装を計画する」を参照してください。

  • Microsoft Entra 登録済み/社内参加済み (WPJ)

    Microsoft Entra ID に登録されているデバイスの詳細については、「シームレスな第 2 要素認証としてのワークプレース参加」を参照してください。 通常、これらのデバイスは、[設定]>[アカウント]>[職場または学校へのアクセス] を介して職場または学校アカウントが追加された個人所有の持ち込みデバイス (BYOD) です。

    WPJ デバイスでは、デバイス コンテキストの PowerShell スクリプトは機能しますが、ユーザー コンテキストの PowerShell スクリプトは無視されます。

また、次のものを作成する必要があります。

  • 検出スクリプト - ユーザーが作成する Windows 用の PowerShell スクリプトまたは Linux 用の POSIX 準拠のシェル スクリプト。 スクリプトはデバイスで実行され、JSON ファイルで定義されたカスタム設定を検出します。 スクリプトは、これらの設定の構成値を Intune に返します。 コンプライアンス ポリシーを作成する前にスクリプトを Microsoft Intune 管理センターにアップロードし、ポリシーの作成時に使用するスクリプトを選択する必要があります。

    カスタム コンプライアンス スクリプトを作成するには、「Microsoft Intune のカスタム コンプライアンス検出スクリプト」を参照してください。

  • JSON ファイル - JSON ファイルは、カスタム設定と、準拠していると見なされる値を定義します。 また、デバイスを設定に準拠するように復元する方法に関するユーザーへのメッセージを含めることもできます。 カスタム コンプライアンス用の JSON を作成するガイダンスについては、「 カスタム コンプライアンス JSON ファイル」を参照してください。

カスタム コンプライアンス設定を使用してポリシーを作成する

カスタム設定を含むポリシーの作成を開始する前に、 要件を確認してください。

まず、適用可能な検出スクリプトを Intune にアップロードし、ポリシーの作成中に追加する JSON を準備します。

準備ができたら、通常の手順を使用して コンプライアンス ポリシーを作成します。これには、ポリシーにカスタム設定を追加するためのプラットフォーム固有の手順が含まれます。 カスタム コンプライアンスのオプションを構成して、[構成設定] ページでカスタム設定を追加します。

注:

Windows デバイスは、カスタム設定を含むコンプライアンス ポリシーを受信すると、Intune 管理拡張機能を確認します。 拡張機能が見つからない場合、デバイスは MSI を実行してインストールします。 インストールされると、拡張機能は PowerShell スクリプトをダウンロードして実行し、コンプライアンスの結果を Intune にアップロードします。 拡張機能が Intune で実行するアクションには、次のものがあります。

  • 新規または更新された PowerShell スクリプトを 8 時間ごとにチェックします。
  • 検出スクリプトを 8 時間ごとに実行します。
  • ユーザーがデバイスで [コンプライアンスの確認] を選択した場合はスクリプトが実行されますが、その時点では新規または更新されたスクリプトはチェックされません。

プッシュ通知は、オンデマンドで実行するためにカスタム コンプライアンスをトリガーできません。

カスタム コンプライアンス ポリシーの監視

デバイスのコンプライアンス状態に関する詳細を表示するには、次の方法を使用します。

  • Linux デバイスと Windows デバイスの両方について、Microsoft Intune 管理センターでカスタム コンプライアンス設定の設定ごとのデバイス コンプライアンスの詳細を表示できます。

    管理センターで、[ レポート>デバイスのコンプライアンス] に移動し、[ レポート] タブを選択します。[ 非準拠のデバイスと設定] のタイルを選択し、ドロップダウン メニューを使用してレポートを構成します。 必ず OS のプラットフォームを選択してから、[レポート の生成] を選択してください。

    詳細については、「Intune デバイス コンプライアンス ポリシーの監視」を参照してください。

  • Linux デバイスで、Intune アプリを開いてデバイスのコンプライアンス状態をチェックします。 アプリには、次のいずれかの状態が表示されます。

    • 準拠 – デバイスは organization のポリシーに準拠しており、組織のリソースにアクセスできる必要があります。
    • 状態の確認 – Intune は現在、デバイスの organization's ポリシーへの準拠を評価しています。
    • 非準拠 – デバイスは organization's のデバイスとセキュリティの要件を満たしておらず、organizationのリソースにアクセスできない可能性があります。

    デバイスの状態が [ 非準拠] の場合は、[ 問題の表示 ] を選択して、修正する必要がある内容を確認します。 一般的な問題の解決については、この記事の「Linux デバイスのその他のトラブルシューティング」を参照してください。

デバイスのカスタム コンプライアンスのトラブルシューティング

次のトラブルシューティングのヒントを使用して、Windows および Linux デバイスのカスタム コンプライアンス設定に関する一般的な問題を解決します。

カスタム設定は評価されません

デバイス コンプライアンス レポートで次のエラー コードを確認し、問題を詳しく調べます。

  • 65007: スクリプトがエラーを返しました
  • 65008: スクリプトの結果に設定がありません
  • 65009: 検出された設定の json が無効です
  • 65010: 検出された設定のデータ型が無効です

Windows では、PowerShell スクリプトの最後に次の行を追加して、PowerShell スクリプトに関連するエラーを返します。

return $hash | ConvertTo-Json -Compress

行が PowerShell スクリプト ファイルの最後にあることを確認します。

PowerShell または POSIX 準拠のシェル スクリプトが選択できない、または削除された後も表示されたままになる

現在のビューを更新します。 問題が解決しない場合は、ポリシー作成フローを取り消して、最初からやり直してください。

デバイス上の問題が修正された後、それ以降の同期では、問題が解決済みで準拠していると識別されません

デバイスを変更した後、非準拠の状態が準拠していると表示されるまでに最大 8 時間かかる場合があります。

デバイスの問題を解決した後、問題が解決され、準拠しているかどうかを特定するために、ユーザーはコンプライアンスを手動でチェックできますか?

  • Windows では、ユーザーはポータル サイト Web サイトにアクセスして同期をトリガーし、非準拠のカスタム コンプライアンス設定を修正した後、デバイスの状態を更新できます。

  • Linux では、ユーザーは Microsoft Intune アプリを開き、[デバイスの詳細] ページまたは [コンプライアンスの問題] ページで [更新] を選択して、Intune での新しいチェックインを開始できます。

より多くの演算子とオペランドがサポートされないのはなぜですか?

担当のアカウント マネージャーに連絡して、特定の演算子とオペランドの追加を依頼してください。 その後、将来の更新を検討できます。

複数の検出スクリプトを 1 つのカスタム コンプライアンス ポリシーに適用できないのはなぜですか?

ポリシーでは、1 つのスクリプトの使用がサポートされます。 ただし、各スクリプトは複数のコンプライアンス値をチェックできます。

Linux デバイスのその他のトラブルシューティング

デバイスに準拠していない設定を特定するには:

  • Microsoft Intune 管理センターでは、ポリシーに準拠していないデバイスを特定できます。 [ レポート>デバイス コンプライアンス] に移動し、[ レポート] タブを選択してから、[ 非準拠デバイスと設定] のタイルを選択します。 ドロップダウンを使用して必要なレポートを構成し、[レポート の生成] を選択します。

管理センターには、デバイスに準拠していない設定ごとに個別の行が表示されます。

  • Linux デバイスで、Microsoft Intune アプリを開き、[デバイス設定の更新] ページを表示します。

次のセクションでは、Linux デバイスのユーザーが遭遇する可能性のある一般的な問題と問題の解決策について説明します。

オペレーティング システムのディストリビューションとバージョン

デバイスが Linux ディストリビューションまたは OS バージョンのコンプライアンス要件を満たしていない場合、オペレーティング システムをアップグレードまたはダウングレードするためのメッセージが表示されることがあります。

許可されるディストリビューション設定に準拠するには、デバイスの Linux ディストリビューションとバージョンが最小、最大、および種類の要件を満たしている必要があります。 必要に応じて、サポートされているバージョンまたはディストリビューションの Linux をインストールして、デバイスを準拠させます。

パスワードの複雑さ

デバイスがパスワードの複雑さの要件を満たしていない場合、より強力なパスワードを使用するように求めるメッセージが表示されることがあります。

パスワード ポリシー設定に準拠するには、それらの要件を満たすパスワードを使用するように Linux システムを構成します。 一般的な organization 要件は次のとおりです。

  • 最小限の文字、数字、または特殊文字を含むパスワード
  • 最小桁のパスワード

デバイスの暗号化

Linux コンプライアンスのためのデバイス暗号化の構成に関するガイダンスについては、「Linux コンプライアンス設定」を参照してください。

Linux デバイスのコンプライアンス状態を最新の情報に更新する

Linux デバイスで変更を加えた後にコンプライアンス状態を更新するには、「コンプライアンス状態の更新」を参照してください。

次の手順