Configuration Manager を用いて、Surface Pro 7+ のドライバーを更新する

皆さん、こんにちは。

今回は、久しぶりの Microsoft Surface ネタです。

組織にて、Microsoft Surface Pro 7+ を管理されている方向けの記事として、Microsoft Endpoint Configuration Manager (MECM, SCCM, Configuration Manager) を用いて、Surface Pro 7+ のドライバーとファームウェアを更新する方法を紹介したいと思います。

<前提のお話>

まず、組織において、エンドポイント デバイスを管理する上でつきまとう、ソフトウェアの更新。。。

OS である Windows に限らず、最近ではドライバーやファームウェアに対する脆弱性が明らかになるケースが多く、今までのエンドポイント デバイスの管理では置き去りになっていたドライバーとファームウェアの更新を行う事はセキュリティ対策上も重要になってきています。

また、Surface に限らず、ドライバーやファームウェアにて機能エンハンスメントが行われる事は多くなっているため、機能改善やバグフィックス等の観点でもドライバーやファームウェアを最新にする事は重要な対応となります。

しかしながら、特にファームウェアをリモートで更新する事は、ファームウェアの更新に失敗した際に、最悪デバイスが起動しなくなるというリスクも含んでいます。

そのため、組織の管理者はドライバーやファームウェアの適用に尻込みしてしまう場合もあります。

Surface の場合、ファームウェア (UEFI) の更新の際に、もしファームウェアの更新が失敗した場合、既存のファームウェアを再度呼び出し、ロールバックを行うため、もし更新が失敗した場合でも、デバイスが起動しない事は防げると以前伺った事があります。このような機構を採用している場合は安心してリモートでもドライバーとファームウェアを更新出来ますね。

<本題>

では、本題の Microsoft Endpoint Configuration Manager を用いた、Surface Pro 7+ のドライバーとファームウェアの更新について見ていきましょう。

Microsoft Endpoint Configuration Manager を用いて、ドライバーとファームウェアを更新する方法には主に 2 つあります。

上記の 2 つの方法があるのですが、ソフトウェア更新プログラムとして展開する方法はマイクロソフトから提供されるドライバーのカタログ情報が更新されていない場合もあり、あまりお勧めできません。

そのため、今回は msi ファイルをダウンロードして Configuration Manager のアプリケーションとして展開する方法を紹介します。

<msi ファイルをダウンロードして Configuration Manager のアプリケーションとして、ドライバーとファームウェアを展開する方法>

※ 今回は Surface Pro 7+ をベースにお伝えしますが、別の Surface モデルでも同様の方法が利用できます。

  1. まずは、マイクロソフトのサイトから、最新のドライバーとファームウェアをダウンロードします。
    https://www.microsoft.com/en-us/download/details.aspx?id=102633
  2. msi をダウンロードしたら、いつもの通り Zone ID を削除します。ファイルの [プロパティ] を選択します。
  3. 画面下部の [許可する] を選択し、[OK] で閉じます。
  4. 次に、ダウンロードした msi ファイルを Configuration Manager で利用しているコンテンツ ソース フォルダーに移動します。
  5. Configuration Manager コンソールを開き、[ソフトウェア ライブラリ] > [概要] > [アプリケーション管理] > [アプリケーション] を開きます。
  6. [アプリケーションの作成] を選択します。
  7. [アプリケーションの作成ウィザード] が起動します。
  8. 先ほど、移動したコンテンツ ソース内にある msi を選択します。選択後、[次へ] を選択します。
  9. 設定内容が正しい事を確認し、[次へ] を選択します。
  10. [一般情報] にて、必要事項 (発行元やソフトウェア バージョン等) を入力し、インストールの権限が [システム用にインストールする] になっている事を確認し、[次へ] を選択します。
  11. [概要] にて、設定内容に問題ない事を確認し、[次へ] を選択します。
  12. 完了すると、下記のような画面が表示されますので、[閉じる] を選択します。
  13. 再度、Configuration Manager コンソールに戻り、作成したアプリケーションの [展開の種類] を修正します。
  14. 作成したアプリケーションを選択し、下部のタブから [展開の種類] を選択し、表示された展開の種類を選択し、右クリックにて、[プロパティ] を選択します。
  15. [検出方法] のタブを選択し、[句の編集] を選択します。
  16. [検出規則] の画面が表示されますので、[参照] を選択し、msi ファイルを選択します。
  17. msi ファイルを選択すると、下部の [値] のところにバージョンが表示されますので、演算子を [次の値より大きいか等しい] に設定し、[OK] を選択します。
    ※ これは、同じ製品コードで次のバージョンの msi がリリースされ、新たにアプリケーションを作って展開した際に、バッティングしないようにするためです。 (新しいアプリケーションがインストールされた後にこのアプリケーションの検出規則がミートしなくなり、再度インストールされるのを防ぐため)
    もちろん、新しいバージョンがリリースされたら、古いアプリケーションの展開をストップすれば問題ないです。
  18. [ユーザー側の表示と操作] を選択します。
  19. [許容最長実行時間] を 120 から適切な値へ変更します。この例では、30 にしています。
  20. 最後に重要な設定を行います。[プログラム] タブにて、[インストール プログラム] の欄に [/norestart] を追加します。これを追加しておかないと、msi インストール後に即時 OS 再起動が発生します。ご注意ください。
    最初、アプリケーションを作成する際に追加するのを忘れていました。

  21. これで、アプリケーションの作成は完了なので、後はターゲットのコレクションに展開をして、配布していきます。
  22. Configuration Manager コンソールに戻り、作成したアプリケーションを選択し、右クリックにて、[展開] を選択します。
  23. 展開対象のコレクションを選択し、[次へ] を選択します。
  24. [コンテンツ] にて、展開対象のマシンが利用する配布ポイントを選択し、[次へ] を選択します。
  25. 今回はテスト目的でもあるので、目的は [利用可能] を選択しますが、実際の環境下では、強制的に適用したいと思いますので、[必須] を選択ください。
  26. 今回はスケジュール配信はしないので、そのまま [次へ] を選択します。
  27. [ユーザー側の表示と操作] では、既定のまま、[次へ] を選択します。
  28. [アラート] も特に変更することなく、[次へ] を選択します。
  29. [概要] にて展開内容が正しいことを確認して、[次へ] を選択します。
  30. 展開の手続きが終わると、下記のような画面が表示されるので、サーバー側での対応は終わりです。

<クライアント側の動作>

今回は、[利用可能] で展開しているので、ソフトウェア センターから手動でアプリケーションを実行する必要があります。

インストールが終わると、[再起動] が必要であることをソフトウェア センターが知らせてくれます。

<まとめ>

今回は、Surface のドライバーとファームウェア管理について話題に取り上げました。組織では、Surface 以外にもデバイスはあると思いますので、ドライバーやファームウェアの運用を再度見直してみるのも良い機会だと思います。