Intuneの構成設定をMicrosoft Graphで確認する (original) (raw)

Intuneの構成設定をMicrosoft Graphで確認する記事を見たので自分でも試してみました。
また、運用での活用方法も(すごく簡単ですが)考えてみました。

Intuneの構成設定をMicrosoft Graphで取得する

Intuneの設定内容は、管理センターの他にMicrosoft Graph*1でも確認できます。
Microsoft GraphはSDKが公開されています。 今回はPowershell SDKを使用しました。

Powershell SDKの使用準備

Powershellを開いてSDKをインストールします。

Set-ExecutionPolicy -Scope CurrentUser RemoteSigned Install-Module Microsoft.Graph

Microsoft Graphに接続する

下記を実行してMicrosoft Graphに接続します。

Connect-MgGraph -Scopes "DeviceManagementConfiguration.Read.All"

なお、-Scopreではこのセッションで必要な権限範囲を設定しています。
今回はIntuneの構成設定の読み取りしかしないためDeviceManagementConfiguration.Read.Allを指定しています。

参考:実行スコープ

Intuneに関連する実行スコープは下記のとおりです。

スコープ名 範囲 操作
DeviceManagementApps.Read.All Microsoft Intune によって管理されているアプリのプロパティ、グループの割り当て、アプリの状態、アプリ構成、アプリ保護ポリシー 読み取り
DeviceManagementApps.ReadWrite.All Microsoft Intune によって管理されているアプリのプロパティ、グループの割り当て、アプリの状態、アプリ構成、アプリ保護ポリシー 読み書き
DeviceManagementConfiguration.Read.All Microsoft Intune で管理されるデバイス構成とデバイス コンプライアンス ポリシーのプロパティとグループへの割り当て 読み取り
DeviceManagementConfiguration.ReadWrite.All Microsoft Intune で管理されるデバイス構成とデバイス コンプライアンス ポリシーのプロパティとグループへの割り当て 読み書き
DeviceManagementManagedDevices.PrivilegedOperations.All デバイスのワイプや Microsoft Intune によって管理されているデバイスでのパスコードのリセットなどのリモートの影響の大きいアクションをアプリで実行できる 実行
DeviceManagementManagedDevices.Read.All Microsoft Intune によって管理されているデバイスのプロパティ 読み取り
DeviceManagementManagedDevices.ReadWrite.All Microsoft Intune によって管理されているデバイスのプロパティ 読み書き(デバイスの所有者でリモート ワイプやパスワード リセットなどの影響の大きい操作は不可)
DeviceManagementRBAC.Read.All Microsoft Intune Role-Based アクセス制御 (RBAC) 設定に関連するプロパティ 読み取り
DeviceManagementRBAC.ReadWrite.All Microsoft Intune Role-Based アクセス制御 (RBAC) 設定に関連するプロパティ 読み書き
DeviceManagementServiceConfig.Read.All デバイス登録やサード パーティのサービス接続構成など、Microsoft Intune サービスのプロパティ 読み取り
DeviceManagementServiceConfig.ReadWrite.All デバイス登録やサード パーティのサービス接続構成などの Microsoft Intune サービス プロパティ 読み書き

Intune以外の実行スコープは下記リンクから確認できます。

Microsoft Graph のアクセス許可のリファレンス - Microsoft Graph | Microsoft Learn

構成設定を確認するコマンドを実行する

構成設定を確認するコマンドは下記です。

Get-MgDeviceManagementDeviceConfiguration

[実行例] Id CreatedDateTime Description DisplayName LastModifiedDateTime Version


95a15d20-07f2-492d-bdfd-1edd64466992 2023/05/04 5:35:32 01_Windowsの各種制限 2024/03/08 22:02:00 4 527af074-e759-4ca2-9a21-68896c7d5acc 2024/03/08 13:12:19 06_MDEオンボード 2024/03/08 13:12:19 1 7387114e-7482-40bc-9731-e54bab2ba19f 2023/05/04 9:34:16 test 2023/05/04 9:34:16 1

なお、コマンドを実行したテナントの構成設定は下図のとおりです。

構成設定(Intune管理センター)

Win10更新リング(Intune管理センター)

コマンドを実行して下記のことがわかりました。

取得した構成設定の内容を確認する

「01_Windowsの各種制限」というポリシーの内容を確認して、出力形式を見てみます。

Get-MgDeviceManagementDeviceConfiguration -DeviceConfigurationId 95a15d20-07f2-492d-bdfd-1edd64466992 | ConvertTo-Json

実行結果は下記のとおりです。(※結果のインデントの幅が大きかったため調整しています。)

[ { "Assignments": null, "CreatedDateTime": "/Date(1683178532019)/", "Description": null, "DeviceSettingStateSummaries": null, "DeviceStatusOverview": { "ConfigurationVersion": null, "ErrorCount": null, "FailedCount": null, "Id": null, "LastUpdateDateTime": null, "NotApplicableCount": null, "PendingCount": null, "SuccessCount": null }, "DeviceStatuses": null, "DisplayName": "01_Windowsの各種制限", "Id": "95a15d20-07f2-492d-bdfd-1edd64466992", "LastModifiedDateTime": "/Date(1709935320808)/", "UserStatusOverview": { "ConfigurationVersion": null, "ErrorCount": null, "FailedCount": null, "Id": null, "LastUpdateDateTime": null, "NotApplicableCount": null, "PendingCount": null, "SuccessCount": null }, "UserStatuses": null, "Version": 4, "AdditionalProperties": { "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#deviceManagement/deviceConfigurations/$entity", "@odata.type": "#microsoft.graph.windows10GeneralConfiguration", "searchBlockDiacritics": false, "searchDisableAutoLanguageDetection": false, "searchDisableIndexingEncryptedItems": false, "searchEnableRemoteQueries": false, ... 以下省略 } ]

大まかに構造を捉えてみます。

項目名 内容
Assignments 割り当て設定
CreatedDateTime 作成日時
Description ポリシーの説明
DeviceSettingStateSummaries デバイスのポリシーの適用状態のサマリ(ポリシー中で設定した各項目ごとの適用状態が出てくる)Get-MgDeviceManagementDeviceConfiguration -DeviceConfigurationId [ポリシーID]とすると詳しい内容がわかる
DeviceStatusOverview デバイスのポリシー適用状態サマリGet-MgDeviceManagementDeviceConfigurationDeviceStatusOverview -DeviceConfigurationId [ポリシーID]とすると詳しい内容がわかる
DeviceStatuses デバイスごとのポリシー適用状態一覧Get-MgDeviceManagementDeviceConfigurationUserStatusOverview -DeviceConfigurationId [ポリシーID]とすると詳しい内容がわかる
DisplayName ポリシーの名前
Id ID
LastModifiedDateTime 最終更新日時
UserStatusOverview ユーザごとのポリシー適用状態Get-MgDeviceManagementDeviceConfigurationUserStatusOverview -DeviceConfigurationId [ポリシーID]とすると詳しい内容がわかる
UserStatuses ユーザのポリシー適用状態サマリGet-MgDeviceManagementDeviceConfigurationUserStatus -DeviceConfigurationId [ポリシーID]とすると詳しい内容がわかる
Version バージョン(設定を更新するたびにインクリメント?)
AdditionalProperties 付加情報 -ここにポリシーの詳しい設定内容が書かれている-

運用での活用を考える

Microsoft Graphを活用するとIntuneの構成設定を取得できることが分かりました。
もしこれを運用で活用するとすると下記のケースがあると思います。

今回は以上になります。ここまで見ていただきありがとうございました。

参考サイト

更新履歴