検出用のカスタム PowerShell スクリプト
Intune への準拠 にカスタム 設定を使用する前に、デバイス上のカスタム コンプライアンス設定を検出する PowerShell スクリプトを定義する必要があります。
検出スクリプト:
- コンプライアンス ポリシーを作成する前に Intune に追加されます。 追加後、カスタム設定を使用してコンプライアンス ポリシーを作成するときに選択できます。
- コンプライアンス ポリシーを受け取るデバイスで実行されます。 スクリプトは、同じポリシーにアップロードする JSON ファイルの条件を評価します。
- JSON で定義されている 1 つ以上の設定を識別し、それらの設定で検出された値の一覧を返します。 1 つのスクリプトを各ポリシーに割り当て、複数の設定の検出をサポートします。
- 結果を 1 行で出力するには、圧縮する必要があります。 例:
$hash = @{ ModelName = "Dell"; BiosVersion = "1.24"; TPMChipPresent = $true}
- スクリプトの最後に次の行を含める必要があります。
return $hash | ConvertTo-Json -Compress
検出スクリプトのサンプル
PowerShell スクリプトのサンプルを次に示します。
$hash = @{ ModelName = "Dell"; BiosVersion = "1.24"; TPMChipPresent = $true}
return $hash | ConvertTo-Json -Compress
サンプル スクリプトの出力を次に示します。
PS C:\Users\apervaiz\Documents> .\sample.ps1
{"ModelName": "Dell","BiosVersion": 1.24,"TPMChipPresent": true}
Intune に探索スクリプトを追加する
管理センター Microsoft エンドポイント マネージャーサインインし、[エンドポイント セキュリティ デバイスコンプライアンススクリプト] [セキュリティとWindows 10 > > > > を追加する] に移動します。
[ 基本] で、名前を 指定します。
[設定 に、スクリプトを検出スクリプト に追加します。 スクリプトを慎重に確認します。 Intune では、構文やプログラムによるエラーについてスクリプトを検証しません。
この 設定、 スクリプトに対して次の動作を構成します。
- ログオンした資格情報を使用してこのスクリプトを実行します 。既定では、スクリプトはデバイスの System コンテキストで実行されます。 ログオンしているユーザーのコンテキストで実行するには、これを [はい] に設定します。 ユーザーがログインしていない場合、スクリプトは既定で System コンテキストに戻されます。
- スクリプト署名チェックの適用 – 詳細については、「PowerShell about_Signing」を 参照してください。
- 64 ビット PowerShell ホスト でスクリプトを実行する – 既定では、スクリプトは 32 ビット PowerShell ホストを使用して実行されます。 代わりに 64 ビット ホストを使用してスクリプトを強制的に実行するには、これを [はい] に設定します。
スクリプトの作成プロセスを完了します。 このスクリプトは、管理者センターの [スクリプト] ウィンドウMicrosoft エンドポイント マネージャー表示され、コンプライアンス ポリシーを構成するときに選択できます。