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

Intuneの組み込みのデバイス コンプライアンス オプションを拡張するには、マネージド Linux と Windows デバイスのカスタム コンプライアンス設定のポリシーを使用します。 カスタム設定を使用すると、これらの設定を組み込みのポリシー テンプレートに追加するIntuneを待たずに、デバイスで使用できる設定に柔軟に準拠できます。

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

  • Windows (Windows ホームを除く)
  • 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 ホームを除く)
  • 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登録済み/Workplace 参加済み (WPJ)

    Microsoft Entra IDに登録されているデバイスの詳細については、「シームレスな第 2 要素認証としての Workplace Join」を参照してください。 通常、これらのデバイスは、 設定>Accounts>Access 職場または学校を介して追加された職場または学校アカウントを持つ Bring-your-own-devices (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のポリシーに対するデバイスのコンプライアンスを評価しています。
    • 準拠していない – デバイスがorganizationのデバイスとセキュリティの要件を満たしていないため、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 デバイスで変更を加えた後にコンプライアンスの状態を更新するには、「コンプライアンスの状態を更新する」を参照してください。

次の手順