スクリプトを利用して、より快適にロールアップの配信を行う

Last Update:

みなさま、こんにちは。WSUS サポートチームです。

本記事では WSUS API を利用したスクリプトを用いて、ロールアップの更新プログラムをより快適に配信する方法について、ご案内いたします。
Windows 7 SP1 / 8.1、Windows Server 2008 R2 / 2012 / 2012 R2 において 2016 年 10 月以降ロールアップ モデルへの移行を行っております。
しかし、「セキュリティのみの品質更新プログラム」も「セキュリティ マンスリー品質ロールアップ」も、いずれも 「セキュリティ問題の修正プログラム」 としてリリースされるため、WSUS の自動承認規則では、片方だけを自動で承認するということは出来ません。

このような場合には、WSUS API を用いたスクリプトを作成すると、より細かな制御を行うことが可能です。本記事では、ロールアップの更新プログラムを「セキュリティのみの品質更新プログラム」に限定して配信するために有効な、下記の 2 種類のサンプル スクリプトについて紹介をいたします。

  • 「セキュリティ マンスリー品質ロールアップ」を拒否済みに設定するスクリプト
  • 自動承認規則の「規則の実行」を行うスクリプト

なお、いずれのスクリプトも弊社内の環境にて正常に動作することを確認しておりますが、ご利用の際には、念のため事前にご検証くださいますようお願いいたします。

「セキュリティ マンスリー品質ロールアップ」を拒否済みに設定するスクリプト

以下より「セキュリティ マンスリー品質ロールアップ」を拒否済みに設定するスクリプトを提供しております。

DeclineSecurityMonthlyQualityRollup.ps1
DeclineSecurityAndQualityRollup.ps1

本スクリプトを利用すると、各 OS 向けのセキュリティ マンスリー品質ロールアップおよび .Net Framework 向けのセキュリティおよび品質ロールアップを拒否済みに設定することが可能です。誤って「セキュリティのみの品質更新プログラム」以外を配信することを抑止したい場合には、本スクリプトをタスク スケジューラー等を用いて定期的に自動実行することで、「セキュリティ マンスリー品質ロールアップ」を自動で拒否に設定することが可能です。

実行例
下記のスクリプトを実行することで、各 OS 向けのセキュリティ マンスリー品質ロールアップを拒否に設定します。

DeclineSecurityMonthlyQualityRollup.ps1

下記のスクリプトを実行することで、.Net Framework 向けのセキュリティおよび品質ロールアップを拒否に設定します。

DeclineSecurityAndQualityRollup.ps1

補足情報 : 「セキュリティ マンスリー品質ロールアップ」を配信する場合

「セキュリティ マンスリー品質ロールアップ」を配信する場合には、以下より「セキュリティのみの品質更新プログラム」を拒否済みに設定するスクリプトを提供しております。

DeclineSecurityOnlyQualityUpdate.ps1
DeclineSecurityOnlyUpdate.ps1

実行例
下記のスクリプトを実行することで、各 OS 向けのセキュリティのみの品質更新プログラムを拒否に設定します。
こちらはタイトルに「Security Only Quality Update」を含む更新プログラムが拒否済みの対象です。

DeclineSecurityOnlyQualityUpdate.ps1

下記のスクリプトを実行することで、.Net Framework 向けのセキュリティのみの更新プログラムを拒否に設定します。
こちらはタイトルに「Security Only Update」を含む更新プログラムが拒否済みの対象です。

DeclineSecurityOnlyUpdate.ps1

自動承認規則の「規則の実行」を行うスクリプト

以下より自動承認規則の「規則の実行」を行うスクリプトを提供しております。

Apply-InstallApprovalRules.ps1

本スクリプトを用いますと自動承認規則の「規則の実行」をスクリプトから行うことが可能です。自動承認規則では拒否に設定されていない更新プログラムが自動承認の対象となります。このため、上述の「1」のスクリプトにて「セキュリティ マンスリー品質ロールアップ」を拒否済みに設定した後に、本スクリプトを実行することで、「セキュリティ マンスリー品質ロールアップ」以外の「セキュリティのみの品質更新プログラム」を含む更新を、全て自動で承認することが出来ます。

事前準備
本スクリプトを利用する場合には、対象の自動承認規則の下記のチェック ボックスを事前に外しておきます。チェック ボックスを外さないとスクリプトの実行のタイミングと関係なく、更新プログラムが同期されたタイミングで規則に合致する更新プログラムが承認されてしまいます。

実行例
下記のスクリプトを実行することで、対象の自動承認規則の「規則の実行」を行ないます。

Apply-InstallApprovalRules.ps1 -TargetApprovalRule <承認をスクリプトから実行する自動承認規則名 (例 : “既定の自動承認規則” )>

いかがでしたでしょうか。スクリプトを改修すると上記よりもさらに細かく制御を行うことも可能です。WSUS API の詳細については下記の公開情報に纏まっておりますので、興味のある方は是非ご参考にしてください。

Windows Server Update Services 3.0 Class Library