迅速な Windows 品質更新プログラムのプログラムによる制御
この記事では、次の操作を行います。
前提条件
Update Health Tools がクライアントにインストールされていることを確認するなど、すべての Windows Autopatch の前提条件を満たす必要があります。
-
Update Health Tools は、KB4023057以降にインストールされます。 デバイスに Update Health Tools が存在することを確認するには、次のいずれかの方法を使用します。
- 迅速な 更新プログラムの準備テストを実行する
- フォルダー C:\Program Files\Microsoft Update Health Tools を探すか、「Microsoft Update Health Tools のプログラムの削除」を確認します。
- ツールのインストールを確認するための PowerShell スクリプトの例:
Get-CimInstance -ClassName Win32_Product \| Where-Object {$_.Name -match "Microsoft Update Health Tools"}
アクセス許可
この記事に記載されているクエリには、次のアクセス許可が必要です。
- Windows Autopatch 操作の WindowsUpdates.ReadWrite.All。
- デバイス情報を表示するための Device.Read.All 以上のアクセス許可。
Windows Update展開管理者などの一部のロールには、既にこれらのアクセス許可があります。
必要なエンドポイント
次のエンドポイントにアクセスできる必要があります。
- *.prod.do.dsp.mp.microsoft.com
- *.windowsupdate.com
- *.dl.delivery.mp.microsoft.com
- *.update.microsoft.com
- *.delivery.mp.microsoft.com
- tsfe.trafficshaping.dsp.mp.microsoft.com
Graph API エンドポイント:
- devicelistenerprod.microsoft.com
- login.windows.net
- payloadprod*.blob.core.windows.net
Graph エクスプローラーを開く
この記事では、Graph エクスプローラー を使用して、Microsoft Graph API に対してデータの取得、追加、削除、更新を要求します。 Graph エクスプローラー は、Microsoft Graph API について学習できる開発者ツールです。 Graph エクスプローラーの使用方法の詳細については、「Graph エクスプローラーの概要」を参照してください。
Warning
- この記事に記載されている要求では、Microsoft 365 アカウントでサインインする必要があります。 必要に応じて、Microsoft 365 Business Premiumで無料の 1 か月間試用版を利用できます。
- テスト テナントを使用してデプロイ プロセスを学習して確認することを強くお勧めします。 グラフ エクスプローラーは、学習ツールを目的としています。 続行する前に、Graph エクスプローラーの同意の付与と同意の種類を理解していることを確認してください。
ブラウザーから [Graph エクスプローラー] に移動し、Microsoft Entra ユーザー アカウントを使用してサインインします。
この記事のクエリを使用するには、
WindowsUpdates.ReadWrite.All
アクセス許可 を有効にする必要がある場合があります。 アクセス許可を有効にするには:要求を行うには:
- HTTP メソッドのドロップダウン リストから GET、POST、PUT、PATCH、または DELETE のいずれかを選択します。
- URL フィールドに要求を入力します。 バージョンは、URL に基づいて自動的に設定されます。
- 要求本文を変更する必要がある場合は、[ 要求 本文] タブを編集します。
- [ クエリの実行 ] ボタンを選択します。 結果が [応答 ] ウィンドウに表示されます。
ヒント
Microsoft Graph ドキュメントを確認すると、通常、要求の例に
content-type: application/json
が一覧表示される場合があります。 通常、Graph エクスプローラーにはcontent-type
を指定する必要はありませんが、[ヘッダー] タブを選択し、[要求ヘッダー] フィールドに [キー] としてcontent-type
を追加し、[値] としてapplication/json
を追加することで、要求に追加できます。
クエリを実行してデバイスを識別する
デバイス リソースの種類を使用して、Windows Autopatch に登録するクライアントを検索します。 特定のニーズに合わせてクエリ パラメーターを変更します。 詳細については、「 クエリ パラメーターを使用する」を参照してください。
すべてのデバイスの AzureAD デバイス ID と名前を表示します。
GET https://graph.microsoft.com/v1.0/devices?$select=deviceid,displayName
Test
で始まる名前を持つデバイスの AzureAD デバイス ID と名前を表示します。GET https://graph.microsoft.com/v1.0/devices?$filter=startswith(displayName,'Test')&$select=deviceid,displayName
高度なクエリの要求ヘッダーを追加する
次の要求の場合は、 ConsistencyLevel ヘッダーを eventual
に設定します。 高度なクエリ パラメーターの詳細については、「Microsoft Entra ディレクトリ オブジェクトの高度なクエリ機能」を参照してください。
[Graph エクスプローラー] で、[要求ヘッダー] タブを選択します。
[
ConsistencyLevel
のキーの種類] と [値] に「eventual
」と入力します。[ 追加 ] ボタンを選択します。 完了したら、ごみ箱のアイコンを選択して要求ヘッダーを削除します。
AzureAD デバイス ID として
01234567-89ab-cdef-0123-456789abcdef
されているデバイスの名前とオペレーティング システムのバージョンを表示します。GET https://graph.microsoft.com/v1.0/devices?$search="deviceid:01234567-89ab-cdef-0123-456789abcdef"&$select=displayName,operatingSystemVersion
仮想マシンではない可能性があるデバイスを見つけるには、モデルとして仮想マシンが一覧表示されていないが製造元が一覧表示されているデバイスをフィルター処理します。 各 デバイスの AzureAD デバイス ID、 名前、 オペレーティング システムのバージョン を表示します。
GET https://graph.microsoft.com/v1.0/devices?$filter=model ne 'virtual machine' and NOT(manufacturer eq null)&$count=true&$select=deviceid,displayName,operatingSystemVersion
ヒント
通常、デバイス リソースの種類を使用する要求には、id
とdeviceid
の両方があります。
-
deviceid
はMicrosoft Entraデバイス ID であり、この記事で使用します。- この記事の後半では、この
deviceid
は、展開対象ユーザーにデバイスを追加するなど、特定の要求を行うときにid
として使用されます。
- この記事の後半では、この
-
デバイス リソースの種類の
id
は、通常、Microsoft Entra オブジェクト ID であり、この記事では使用しません。
迅速な更新のカタログ エントリを一覧表示する
各更新プログラムは、一意の カタログ エントリに関連付けられます。 カタログにクエリを実行して、迅速に実行できる更新プログラムを見つけることができます。 返される id
は カタログ ID であり、デプロイの作成に使用されます。 次のクエリでは、Windows Autopatch によって迅速な更新プログラムとして展開できる、セキュリティとセキュリティ以外の 品質のすべての更新プログラムの一覧を示します。
$top=2
を使用して並べ替えReleaseDateTimeshows
すると、迅速に展開できる最新の更新プログラムが表示されます。
GET https://graph.microsoft.com/beta/admin/windows/updates/catalog/entries?$filter=isof('microsoft.graph.windowsUpdates.qualityUpdateCatalogEntry') and microsoft.graph.windowsUpdates.qualityUpdateCatalogEntry/isExpeditable eq true&$orderby=releaseDateTime desc&$top=2
次の切り捨てられた応答には、08/08/2023 - 2023.08 B SecurityUpdate for Windows 10 and later
セキュリティ更新プログラムのe317aa8a0455ca604de95329b524ec921ca57f2e6ed3ff88aac757a7468998a5
のカタログ ID が表示されます。
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#admin/windows/updates/catalog/entries",
"value": [
{
"@odata.type": "#microsoft.graph.windowsUpdates.qualityUpdateCatalogEntry",
"id": "e317aa8a0455ca604de95329b524ec921ca57f2e6ed3ff88aac757a7468998a5",
"displayName": "08/08/2023 - 2023.08 B SecurityUpdate for Windows 10 and later",
"deployableUntilDateTime": null,
"releaseDateTime": "2023-08-08T00:00:00Z",
"isExpeditable": true,
"qualityUpdateClassification": "security",
"catalogName": "2023-08 Cumulative Update for Windows 10 and later",
"shortName": "2023.08 B",
"qualityUpdateCadence": "monthly",
"cveSeverityInformation": {
"maxSeverity": "critical",
"maxBaseScore": 9.8,
"exploitedCves@odata.context": "https://graph.microsoft.com/$metadata#admin/windows/updates/catalog/entries('e317aa8a0455ca604de95329b524ec921ca57f2e6ed3ff88aac757a7468998a5')/microsoft.graph.windowsUpdates.qualityUpdateCatalogEntry/cveSeverityInformation/exploitedCves",
"exploitedCves": [
{
"number": "ADV230003",
"url": "https://msrc.microsoft.com/update-guide/vulnerability/ADV230003"
},
{
"number": "CVE-2023-38180",
"url": "https://msrc.microsoft.com/update-guide/vulnerability/CVE-2023-38180"
}
]
}
}
]
}
Windows Autopatch では、2023 年 1 月以降にリリースされた更新プログラムに関する詳細情報を表示できます。
製品リビジョンを使用すると、KB 番号やMajorVersion.MinorVersion.BuildNumber.UpdateBuildRevision
など、更新プログラムに関する追加情報が提供されます。 Windows 10と 11 は、同じメジャー バージョンとマイナー バージョンを共有しますが、ビルド番号は異なります。
最新の品質更新プログラムの製品リビジョン情報を表示するには、次を使用します。
GET https://graph.microsoft.com/beta/admin/windows/updates/catalog/entries?$expand=microsoft.graph.windowsUpdates.qualityUpdateCatalogEntry/productRevisions&$orderby=releaseDateTime desc&$top=1
次の切り捨てられた応答は、Windows 10、バージョン 22H2、バージョン 22H2 のKB5029244に関する情報を表示し、Windows 11 バージョン 22H2 のKB5029263を表示します。
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#admin/windows/updates/catalog/entries(microsoft.graph.windowsUpdates.qualityUpdateCatalogEntry/productRevisions())",
"value": [
{
"@odata.type": "#microsoft.graph.windowsUpdates.qualityUpdateCatalogEntry",
"id": "e317aa8a0455ca604de95329b524ec921ca57f2e6ed3ff88aac757a7468998a5",
"displayName": "08/08/2023 - 2023.08 B SecurityUpdate for Windows 10 and later",
"deployableUntilDateTime": null,
"releaseDateTime": "2023-08-08T00:00:00Z",
"isExpeditable": true,
"qualityUpdateClassification": "security",
"catalogName": "2023-08 Cumulative Update for Windows 10 and later",
"shortName": "2023.08 B",
"qualityUpdateCadence": "monthly",
"cveSeverityInformation": {
"maxSeverity": "critical",
"maxBaseScore": 9.8,
"exploitedCves@odata.context": "https://graph.microsoft.com/beta/$metadata#admin/windows/updates/catalog/entries('e317aa8a0455ca604de95329b524ec921ca57f2e6ed3ff88aac757a7468998a5')/microsoft.graph.windowsUpdates.qualityUpdateCatalogEntry/cveSeverityInformation/exploitedCves",
"exploitedCves": [
{
"number": "ADV230003",
"url": "https://msrc.microsoft.com/update-guide/vulnerability/ADV230003"
},
{
"number": "CVE-2023-38180",
"url": "https://msrc.microsoft.com/update-guide/vulnerability/CVE-2023-38180"
}
]
},
"productRevisions@odata.context": "https://graph.microsoft.com/beta/$metadata#admin/windows/updates/catalog/entries('e317aa8a0455ca604de95329b524ec921ca57f2e6ed3ff88aac757a7468998a5')/microsoft.graph.windowsUpdates.qualityUpdateCatalogEntry/microsoft.graph.windowsUpdates.qualityUpdateCatalogEntry/productRevisions",
"productRevisions": [
{
"id": "10.0.19045.3324",
"displayName": "Windows 10, version 22H2, build 19045.3324",
"releaseDateTime": "2023-08-08T00:00:00Z",
"version": "22H2",
"product": "Windows 10",
"osBuild": {
"majorVersion": 10,
"minorVersion": 0,
"buildNumber": 19045,
"updateBuildRevision": 3324
},
"knowledgeBaseArticle@odata.context": "https://graph.microsoft.com/beta/$metadata#admin/windows/updates/catalog/entries('e317aa8a0455ca604de95329b524ec921ca57f2e6ed3ff88aac757a7468998a5')/microsoft.graph.windowsUpdates.qualityUpdateCatalogEntry/microsoft.graph.windowsUpdates.qualityUpdateCatalogEntry/productRevisions('10.0.19045.3324')/knowledgeBaseArticle/$entity",
"knowledgeBaseArticle": {
"id": "KB5029244",
"url": "https://support.microsoft.com/help/5029244"
}
},
{
"id": "10.0.22621.2134",
"displayName": "Windows 11, version 22H2, build 22621.2134",
"releaseDateTime": "2023-08-08T00:00:00Z",
"version": "22H2",
"product": "Windows 11",
"osBuild": {
"majorVersion": 10,
"minorVersion": 0,
"buildNumber": 22621,
"updateBuildRevision": 2134
},
"knowledgeBaseArticle@odata.context": "https://graph.microsoft.com/beta/$metadata#admin/windows/updates/catalog/entries('e317aa8a0455ca604de95329b524ec921ca57f2e6ed3ff88aac757a7468998a5')/microsoft.graph.windowsUpdates.qualityUpdateCatalogEntry/microsoft.graph.windowsUpdates.qualityUpdateCatalogEntry/productRevisions('10.0.22621.2134')/knowledgeBaseArticle/$entity",
"knowledgeBaseArticle": {
"id": "KB5029263",
"url": "https://support.microsoft.com/help/5029263"
}
},
デプロイを作成する
デプロイを作成するときは、デプロイの動作を定義するために複数の オプション を使用できます。 次の例では、カタログ エントリ ID e317aa8a0455ca604de95329b524ec921ca57f2e6ed3ff88aac757a7468998a5
を使用して08/08/2023 - 2023.08 B SecurityUpdate for Windows 10 and later
セキュリティ更新プログラムの展開を作成し、要求本文でexpedite
とuserExperience
展開オプションを定義します。
POST https://graph.microsoft.com/beta/admin/windows/updates/deployments
content-type: application/json
{
"@odata.type": "#microsoft.graph.windowsUpdates.deployment",
"content": {
"@odata.type": "#microsoft.graph.windowsUpdates.catalogContent",
"catalogEntry": {
"@odata.type": "#microsoft.graph.windowsUpdates.qualityUpdateCatalogEntry",
"id": "e317aa8a0455ca604de95329b524ec921ca57f2e6ed3ff88aac757a7468998a5"
}
},
"settings": {
"@odata.type": "microsoft.graph.windowsUpdates.deploymentSettings",
"expedite": {
"isExpedited": true
},
"userExperience": {
"daysUntilForcedReboot": 2
}
}
}
要求は、新しく作成されたデプロイの応答本文に 201 Created 応答コードと デプロイ オブジェクトを返します。これには、次のものが含まれます。
- 新しく作成されたデプロイのデプロイ ID
de910e12-3456-7890-abcd-ef1234567890
。 - 新しく作成されたデプロイ対象ユーザーの対象ユーザー ID
d39ad1ce-0123-4567-89ab-cdef01234567
。
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#admin/windows/updates/deployments/$entity",
"id": "de910e12-3456-7890-abcd-ef1234567890",
"createdDateTime": "2024-01-30T19:43:37.1672634Z",
"lastModifiedDateTime": "2024-01-30T19:43:37.1672644Z",
"state": {
"effectiveValue": "offering",
"requestedValue": "none",
"reasons": []
},
"content": {
"@odata.type": "#microsoft.graph.windowsUpdates.catalogContent",
"catalogEntry@odata.context": "https://graph.microsoft.com/beta/$metadata#admin/windows/updates/deployments('073fb534-5cdd-4326-8aa2-a4d29037b60f')/content/microsoft.graph.windowsUpdates.catalogContent/catalogEntry/$entity",
"catalogEntry": {
"@odata.type": "#microsoft.graph.windowsUpdates.qualityUpdateCatalogEntry",
"id": "e317aa8a0455ca604de95329b524ec921ca57f2e6ed3ff88aac757a7468998a5",
"displayName": null,
"deployableUntilDateTime": null,
"releaseDateTime": "2023-08-08T00:00:00Z",
"isExpeditable": false,
"qualityUpdateClassification": "security",
"catalogName": null,
"shortName": null,
"qualityUpdateCadence": "monthly",
"cveSeverityInformation": null
}
},
"settings": {
"schedule": null,
"monitoring": null,
"contentApplicability": null,
"userExperience": {
"daysUntilForcedReboot": 2,
"offerAsOptional": null
},
"expedite": {
"isExpedited": true,
"isReadinessTest": false
}
},
"audience@odata.context": "https://graph.microsoft.com/beta/$metadata#admin/windows/updates/deployments('de910e12-3456-7890-abcd-ef1234567890')/audience/$entity",
"audience": {
"id": "d39ad1ce-0123-4567-89ab-cdef01234567",
"applicableContent": []
}
}
デプロイ対象ユーザーにメンバーを追加する
対象ユーザー ID (d39ad1ce-0123-4567-89ab-cdef01234567
) は、デプロイの作成時に作成されました。
対象ユーザー ID は、デプロイ対象ユーザーにメンバーを追加するために使用されます。 展開対象ユーザーが更新されると、Windows Update展開設定に従ってデバイスへの更新プログラムの提供が開始されます。 展開が存在し、デバイスが対象ユーザーに存在する限り、更新が迅速に行われます。
次の例では、各デバイスのMicrosoft Entra IDを使用して、展開対象ユーザーに 2 つのデバイスを追加します。
POST https://graph.microsoft.com/beta/admin/windows/updates/deploymentAudiences/d39ad1ce-0123-4567-89ab-cdef01234567/updateAudience
content-type: application/json
{
"addMembers": [
{
"@odata.type": "#microsoft.graph.windowsUpdates.azureADDevice",
"id": "01234567-89ab-cdef-0123-456789abcdef"
},
{
"@odata.type": "#microsoft.graph.windowsUpdates.azureADDevice",
"id": "01234567-89ab-cdef-0123-456789abcde0"
}
]
}
対象ユーザーにデバイスが追加されたことを確認するには、d39ad1ce-0123-4567-89ab-cdef01234567
の対象ユーザー ID を使用して次のクエリを実行します。
GET https://graph.microsoft.com/beta/admin/windows/updates/deploymentAudiences/d39ad1ce-0123-4567-89ab-cdef01234567/members
デプロイを削除する
迅速なデプロイを停止するには、デプロイを削除します。 展開を削除すると、コンテンツがまだ受信していない場合は、デバイスにコンテンツが提供されなくなります。 コンテンツの提供を再開するには、新しい承認を作成する必要があります。
次の例では、 デプロイ ID がde910e12-3456-7890-abcd-ef1234567890
のデプロイを削除します。
DELETE https://graph.microsoft.com/beta/admin/windows/updates/deployments/de910e12-3456-7890-abcd-ef1234567890
更新プログラムを迅速化するための準備テスト
isReadinessTest を使用して、クライアントが迅速な更新プログラムを受け取る準備ができているかどうかを確認できます。 迅速な準備テストであることを指定するデプロイを作成し、デプロイ対象ユーザーにメンバーを追加します。 サービスは、クライアントが更新プログラムを迅速化するための前提条件を満たしているかどうかを確認チェック。 テストの結果は、ビジネス レポートのWindows Update ブックに表示されます。 [ 品質の更新 ] タブで 、[ 迅速な状態 ] タイルを選択します。これにより、準備テスト結果が表示された [ 準備 ] タブが表示されたポップアップが開きます。
POST https://graph.microsoft.com/beta/admin/windows/updates/deployments
content-type: application/json
{
"@odata.type": "#microsoft.graph.windowsUpdates.deployment",
"content": {
"@odata.type": "#microsoft.graph.windowsUpdates.catalogContent",
"catalogEntry": {
"@odata.type": "#microsoft.graph.windowsUpdates.qualityUpdateCatalogEntry",
"id": "317aa8a0455ca604de95329b524ec921ca57f2e6ed3ff88aac757a7468998a5"
}
},
"settings": {
"@odata.type": "microsoft.graph.windowsUpdates.deploymentSettings",
"expedite": {
"isExpedited": true,
"isReadinessTest": true
}
}
}
切り捨てられた応答には 、isReadinessTest が true
に設定され、 DeploymentID に de910e12-3456-7890-abcd-ef1234567890
が表示されます。 その後、展開対象ユーザーにメンバーを追加して、デバイスがプレリリースを満たしていることをサービスにチェックし、結果を [ビジネス レポートのWindows Update] ブックで確認できます。
"expedite": {
"isExpedited": true,
"isReadinessTest": true
}
},
"audience@odata.context": "https://graph.microsoft.com/beta/$metadata#admin/windows/updates/deployments('6a6c03b5-008e-4b4d-8acd-48144208f179_Readiness')/audience/$entity",
"audience": {
"id": "de910e12-3456-7890-abcd-ef1234567890",
"applicableContent": []
}
Update Health Tools のログの場所
Update Health Tools は、迅速な更新プログラムを展開するときに使用されます。 場合によっては、Update Health Tools のログを確認することもできます。
ログの場所: %ProgramFiles%\Microsoft Update Health Tools\Logs
- ログは
.etl
形式です。- Microsoft では、
.etl
ファイルを表示する GitHub のダウンロードとして PerfView を提供しています。
- Microsoft では、
詳細については、「 迅速な更新プログラムのトラブルシューティング」を参照してください。