(57)【要約】      （修正有）【課題】管理対象サーバのファームウェアにアップデートプログラムを適用する際に、公開停止のアップデートプログラムの適用を防止することができるファームウェア管理システム、方法、及び、プログラムを提供する。【解決手段】ファームウェア管理装置１０は、ファームウェアが公開停止であることを示す第１のアップデート情報をアクセス可能にする配布サーバ３０から、前記第１のアップデート情報を取得する、第一制御手段１１と、第２のアップデート情報を格納する、第一格納手段１２と、を含み、前記第一制御手段が、前記第１のアップデート情報と、前記第一格納手段に格納されている前記第２のアップデート情報を基に、前記ファームウェアのアップデートプログラムの適用または削除の命令を送信する。【選択図】図１
2015153266.tif 000002
【特許請求の範囲】
【請求項１】
ファームウェアが公開停止であることを示す第１のアップデート情報をアクセス可能にする配布サーバから、前記第１のアップデート情報を取得する、第一制御手段と、
第２のアップデート情報を格納する、第一格納手段と、を含み、
前記第一制御手段が、前記第１のアップデート情報と、前記第一格納手段に格納されている前記第２のアップデート情報を基に、前記ファームウェアのアップデートプログラムの適用または削除の命令を送信する、ファームウェア管理装置。
【請求項２】
請求項１に記載のファームウェア管理装置と、
適用前のアップデートプログラムを格納する、第二格納手段と、
前記命令を受信し、前記適用前のアップデートプログラムに対して、前記命令に基づき、前記ファームウェアのアップデートプログラムを適用または削除する、第二制御手段と、を含む管理対象サーバと、
を包含する、ファームウェア管理システム。
【請求項３】
前記配布サーバが、前記第１のアップデート情報を送信する、第三制御手段を備え、
前記第一制御手段が、前記第一格納手段に格納されている前記第２のアップデート情報を、前記第三制御手段から受信した前記第１のアップデート情報に同期させる、
請求項２に記載のファームウェア管理システム。
【請求項４】
前記第三制御手段が、前記第１のアップデート情報をハッシュ化した第一ハッシュデータを作成して送信し、
前記第一制御手段が、前記第一格納手段に格納された前記第２のアップデート情報をハッシュ化した第二ハッシュデータを作成し、前記第一ハッシュデータと前記第二ハッシュデータが異なる場合には、前記第一格納手段に格納されている前記第２のアップデート情報を、前記第三制御手段から受信した前記第１のアップデート情報に同期させる、
請求項２または３に記載のファームウェア管理システム。
【請求項５】
前記第三制御手段が、前記第１のアップデート情報または前記第一ハッシュデータを含む電子メールを送信し、
前記ファームウェア管理装置が、前記電子メールを受信し、前記電子メールから、前記第１のアップデート情報または前記第一ハッシュデータを抽出し、前記第一格納手段に格納する、メール解析手段を更に備えた、
請求項２乃至４のいずれかに記載のファームウェア管理システム。
【請求項６】
ファームウェアが公開停止であることを示す第１のアップデート情報をアクセス可能にする配布サーバから、前記第１のアップデート情報を取得し、
第２のアップデート情報を格納し、
前記第１のアップデート情報と、前記第２のアップデート情報を基に、前記ファームウェアのアップデートプログラムの適用または削除の命令を送信する、方法
【請求項７】
適用前のアップデートプログラムを格納し、
前記命令を受信し、前記適用前のアップデートプログラムに対して、前記命令に基づき、前記ファームウェアのアップデートプログラムを適用または削除する、
請求項６に記載の方法。
【請求項８】
前記第２のアップデート情報を、前記第１のアップデート情報に同期させる、
請求項６または７に記載の方法。
【請求項９】
前記第１のアップデート情報をハッシュ化した第一ハッシュデータを作成し、
前記第２のアップデート情報をハッシュ化した第二ハッシュデータを作成し、前記第一ハッシュデータと前記第二ハッシュデータが異なる場合には、前記第２のアップデート情報を、前記第１のアップデート情報に同期させる、
請求項６乃至８のいずれかに記載の方法。
【請求項１０】
ファームウェアが公開停止であることを示す第１のアップデート情報をアクセス可能にする配布サーバから、前記第１のアップデート情報を取得する処理と、
第２のアップデート情報を格納する処理と、
前記第１のアップデート情報と、前記第２のアップデート情報を基に、前記ファームウェアのアップデートプログラムの適用または削除の命令を送信する処理と、をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファームウェア管理システム、方法、及び、プログラムに関する。
【背景技術】
【０００２】
特許文献１には、配信済みのファームウェアに問題が見つかった場合に、該当するファームウェアが配信先の画像形成装置に適用されることを防止する技術について記載されている。
【０００３】
特許文献２には、公開停止中のファームウェアが適用されたり、適用されたまま使用されたりすることを防止する技術について記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−２２１２６８号公報
【特許文献２】特許第５２６１１１３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記文献の技術を用いた場合、一旦ダウンロードされたアップデートプログラムが何らかの理由によって公開停止となった場合に、それを認識することができない。したがって、上記文献の技術には、問題のあるアップデートプログラムをそのまま適用してしまう可能性がある、という課題がある。
【０００６】
特許文献１では、ファームウェアを配信する配信サーバが、直接、管理対象の画像形成装置に、ファームウェアの適用と削除の指示を行う構成である。このため、特許文献１に記載された配信サーバは、ファームウェアの適用対象側の適用のタイミングに合わせて最新のアップデート情報か否かを確認できない。そのため、アップデートプログラムに問題が有る場合に、それを認識することができずに、そのまま適用してしまう可能性がある、という課題がある。
【０００７】
特許文献２では、画像形成装置（本発明の管理対象サーバに相当）が監視ホスト（本発明の管理装置に相当）に定期的にポーリングを行って、監視ホストが作成した指示（適用、削除など）を取得している。しかし、画像形成装置には、アップデートプログラムの適用の指示を受け取った時に公開停止されたかどうかを判定するアルゴリズムが存在しない。したがって、問題のあるアップデートプログラムが適用されてしまう可能性がある。
【０００８】
本発明の目的は、管理対象サーバのファームウェアにアップデートプログラムを適用する際に、公開停止のアップデートプログラムの適用を防止することである。
【課題を解決するための手段】
【０００９】
本発明のファームウェア管理装置は、ファームウェアが公開停止であることを示す第１のアップデート情報をアクセス可能にする配布サーバから、前記第１のアップデート情報を取得する、第一制御手段と、第２のアップデート情報を格納する、第一格納手段と、を含み、前記第一制御手段が、前記第１のアップデート情報と、前記第一格納手段に格納されている前記第２のアップデート情報を基に、前記ファームウェアのアップデートプログラムの適用または削除の命令を送信する。
【００１０】
本発明の方法は、ファームウェアが公開停止であることを示す第１のアップデート情報をアクセス可能にする配布サーバから、前記第１のアップデート情報を取得し、第２のアップデート情報を格納し、前記第１のアップデート情報と、前記第２のアップデート情報を基に、前記ファームウェアのアップデートプログラムの適用または削除の命令を送信する。
【００１１】
本発明のコンピュータプログラムは、ファームウェアが公開停止であることを示す第１のアップデート情報をアクセス可能にする配布サーバから、前記第１のアップデート情報を取得する処理と、第２のアップデート情報を格納する処理と、前記第１のアップデート情報と、前記第２のアップデート情報を基に、前記ファームウェアのアップデートプログラムの適用または削除の命令を送信する処理と、をコンピュータに実行させる。
【発明の効果】
【００１２】
本発明によれば、管理対象サーバのファームウェアにアップデートプログラムを適用する際に、公開停止のアップデートプログラムの適用を防止することができる。
【図面の簡単な説明】
【００１３】
【図１】図１は、本発明の第一の実施形態に係る、ファームウェア管理システムの構成の一例を示すブロック図である。
【図２】図２は、本発明の第一の形態におけるファームウェア管理装置を、コンピュータ装置である情報処理装置で実現したハードウェア回路を示すブロック図である。
【図３】図３は、配布サーバのデータ管理の第１の例を示す図で、（ａ）は公開中であるアップデートプログラムのＩＤのリスト、（ｂ）は公開停止されたアップデートプログラムのＩＤのリストを示す図である。
【図４】図４は、配布サーバのデータ管理の第２の例を示す図である。
【図５】図５は、管理装置のデータ管理の第１の例を示す図で、（ａ）は公開停止となったアップデートプログラムのリスト、（ｂ）はファームウェア管理装置自身が管理している管理対象サーバのリスト、（ｃ）はファームウェア管理装置１０自身が管理しているアップデートプログラムのリストを示す図ある。
【図６】図６は、管理装置のデータ管理の第２の例を示す図である。
【図７】図７は、管理システムの動作の一例を示すシーケンス図である。
【図８】図８は、管理装置の動作を示すフローチャートである。
【図９】図９は、本発明の第二の実施形態に係る、ファームウェア管理システムの構成の一例を示すブロック図である。
【図１０】図１０は、本発明の第三の実施形態に係る、ファームウェア管理装置の構成の一例を示すブロック図である。
【発明を実施するための形態】
【００１４】
発明を実施するための第一の形態について、図面を参照して詳細に説明する。
【００１５】
図１は、本発明の第一の実施形態に係る、ファームウェア管理システム４０の構成の一例を示すブロック図である。
【００１６】
ファームウェア管理システム４０は、ファームウェア管理装置１０、管理対象サーバ２０、及び、配布サーバ３０を包含する。
【００１７】
ファームウェア管理装置１０と管理対象サーバ２０は、同じネットワーク上に配置されていて、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等を介して、互いに通信できる環境にあるものとする。
【００１８】
また、ファームウェア管理装置１０と配布サーバ３０は、インターネットを介して互いに通信可能に接続しているものとする。
【００１９】
ファームウェア管理装置１０は、管理対象サーバ２０を管理する。またファームウェア管理装置１０は、ファームウェアのアップデートプログラム（以下、単にアップデートプログラムと記載）が公開中または公開停止であることを示すアップデート情報を、配布サーバ３０と常に同期させ、管理対象サーバ２０の対象のファームウェアを常に最新の情報にアップデート可能な状態にする。
【００２０】
なお、ファームウェア管理装置１０は、例えば、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）等で構成される。
【００２１】
ファームウェア管理装置１０は、第一制御部１１、第一格納部１２、及び、第一通信部１３を包含する。
【００２２】
第一制御部１１は、アップデートプログラムのアップデート情報の適用または削除の命令を、第一通信部１３を経由して管理対象サーバ２０に対して送信する。また、第一制御部１１には、例えば、管理対象サーバ２０を管理するための管理ソフトウェアがインストールされている、としてもよい。
【００２３】
第一格納部１２は、第一通信部１３及び第一制御部１１が配布サーバ３０から取得したアップデート情報を格納する。また、第一格納部１２は、管理対象サーバ２０の構成情報（サーバのモデル名、ＯＳ種別など）も格納する。第一格納部１２は、ディスク装置、半導体メモリ等の記憶装置である。
【００２４】
第一通信部１３は、通信機能を備え、例えば、ＬＡＮを介して、第二通信部２３との通信データの送受信を行う。また、第一通信部１３は、インターネットを介して、第三通信部３３との通信データの送受信を行う。
【００２５】
管理対象サーバ２０は、第二制御部２１、第二格納部２２、及び、第二通信部２３を包含する。
【００２６】
管理対象サーバ２０は、管理対象となるサーバであり、ファームウェアが搭載されている。なお、管理対象サーバ２０は、複数のサーバ装置で構成されてもよい。
【００２７】
第二制御部２１は、適用前のアップデートプログラムに対して、アップデート情報を基に、アップデートプログラムを適用または削除する。
【００２８】
第二格納部２２は、適用前のアップデートプログラムを格納する。
【００２９】
第二格納部２２は、ディスク装置、半導体メモリ等の記憶装置である。
【００３０】
なお、最終的なファームウェアの適用段階では、第二制御部２１が、第二格納部２２に格納されている適用前のアップデートプログラムを用いて、対象の各ファームウェアが格納されている場所（例えばフラッシュメモリ等）に対して、アップデートプログラムの適用、削除を行う。
【００３１】
第二通信部２３は、通信機能を備え、例えば、ＬＡＮを介して、第一通信部１３との通信データの送受信を行う。
【００３２】
配布サーバ３０は、第三制御部３１、第三格納部３２、及び、第三通信部３３を包含する。
【００３３】
配布サーバ３０は、公開中のアップデートプログラム、及び、公開停止したアップデートプログラムを管理する機能を備え、公開中または公開停止のアップデート情報をアクセス可能にする。また、配布サーバ３０は、インターネット上で一般公開されており、ファームウェア管理装置１０からアクセスできる環境であるものとする。
【００３４】
なお、配布サーバ３０は、アップデート情報をファームウェア管理装置１０に送信することも可能とする。
【００３５】
第三制御部３１は、第三通信部３３を介して、アップデート情報をファームウェア管理装置１０に送信する。
【００３６】
第三格納部３２は、アップデート情報を格納する。なお、第三格納部３２に格納されたアップデート情報は、配布サーバ３０に接続するインターネット上で閲覧可能とする。第三格納部３２は、ディスク装置、半導体メモリ等の記憶装置である。
【００３７】
第三通信部３３は、通信機能を備え、例えば、インターネットを介して、第一通信部１３との通信データの送受信を行う。
【００３８】
ここで、第一制御部１１、第一通信部１３、第二制御部２１、第二通信部２３、第三制御部３１、及び、第三通信部３３は、論理回路等のハードウェアで構成される。
【００３９】
また、第一制御部１１、第一通信部１３、第二制御部２１、第二通信部２３、第三制御部３１、及び、第三通信部３３は、各々、対応するコンピュータである、ファームウェア管理装置１０、管理対象サーバ２０、及び、配布サーバ３０のそれぞれのプロセッサが、図示されないメモリ上のプログラムを実行することで実現されても良い。
【００４０】
なお、ファームウェアの適用の対象は、例えば、ＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ／Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）、ＢＭＣ（Ｂａｓｅ  Ｍａｎａｇｅｍｅｎｔ  Ｃｏｎｔｒｏｌｌｅｒ）、及び、ＲＡＩＤ（Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙ  ｏｆ  Ｉｎｅｘｐｅｎｓｉｖｅ  Ｄｉｓｋｓ）カード等とするが、管理対象サーバ２０内のファームウェア上で動作する全てのモジュールを対象としてよい。
【００４１】
図２は、本発明の第一の形態におけるファームウェア管理装置１０を、コンピュータ装置である情報処理装置７０で実現したハードウェア回路を示すブロック図である。なお、管理対象サーバ２０および配布サーバ３０も、それぞれファームウェア管理装置１０と同様の構成とする。
【００４２】
図２に示されるように、情報処理装置７０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｏｒ  Ｕｎｉｔ）７１、メモリ７２、プログラムを格納するハードディスク等の記憶装置７３、およびネットワーク接続用のＩ／Ｆ（Ｉｎｔｅｒｆａｃｅ）７４（インターフェース７４）を含む。また、情報処理装置７０は、バス７５を介して入力装置７６および出力装置７７に接続されている。Ｉ／Ｆ７４は、図１の第一通信部１３、第二通信部２３、または、第三通信部３３に対応する。
【００４３】
ＣＰＵ７１は、オペレーティングシステムを動作させて情報処理装置７０の全体を制御する。また、ＣＰＵ７１は、例えばドライブ装置などに装着された記録媒体７８からメモリ７２にプログラムやデータを読み出す。また、ＣＰＵ７１は、第一の実施の形態における第一制御部１１、第二制御部２１、または、第三制御部３１の一部として機能し、プログラムに基づいて各種の処理を実行する。ファームウェア管理装置１０、管理対象サーバ２０、及び、配布サーバ３０のそれぞれにおけるＣＰＵ７１は、複数のＣＰＵによって構成されていてもよい。
【００４４】
記憶装置７３は、例えば、光ディスク、フレキシブルディスク、磁気光ディスク、外付けハードディスク、または半導体メモリ等である。記憶媒体７８は、不揮発性記憶装置であり、そこにＣＰＵ７１が実行するプログラムを記録する。記憶媒体７８は、記憶装置７３の一部であってもよい。また、プログラムは、通信網に接続されている図示しない外部コンピュータからＩ／Ｆ７４を介してダウンロードされてもよい。
【００４５】
入力装置７６は、例えばマウスやキーボード、内蔵のキーボタンなどで実現され、入力操作に用いられる。入力装置７６は、マウスやキーボード、内蔵のキーボタンに限らず、例えばタッチパネルでもよい。出力装置７７は、例えばディスプレイで実現され、出力を確認するために用いられる。
【００４６】
以上のように、図１に示す第一の実施の形態におけるファームウェア管理装置１０、管理対象サーバ２０、および、配布サーバ３０のそれぞれは、図２に示されるハードウェア構成によって実現される。ただし、図２の情報処理装置７０は、図２の構成に限定されない。例えば、入力装置７６、出力装置７７は、インターフェース７４を介して外付けされるものでもよい。
【００４７】
また、情報処理装置７０は、物理的に結合した一つの装置により実現されてもよいし、物理的に分離した二つ以上の装置を有線または無線で接続し、これら複数の装置により実現されてもよい。
【００４８】
図３、及び、図４は、配布サーバ３０のデータ管理の一例を示す図であり、それぞれ第１のアップデート情報である。図３、及び、図４の第１のアップデート情報は、配布サーバ３０の第三格納部３２に格納されている。
【００４９】
図３は、第三格納部３２に格納されている第１のアップデート情報のうち、現在、公開中であるアップデートプログラムのＩＤのリスト（図３（ａ））、及び、公開停止されたアップデートプログラムのＩＤのリスト（図３（ｂ））を示している。
【００５０】
図４は、アップデートプログラムに関する詳細な情報の一例を示している。また図４は、各アップデートプログラム（アップデートプログラムＩＤ）に対応する、アップデート対象（モジュールのタイプ）、アップデートプログラムのバージョン、アップデート対象のサーバのモデル情報、及び、アップデート対象となっているＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）の情報の一例を示している。
【００５１】
なお、対象ＯＳの例では、Ｗｉｎｄｏｗｓ（登録商標）、Ｌｉｎｕｘ（登録商標）で大まかに区切っているが、もう少し細かく、Ｗｉｎｄｏｗｓ２０１２、Ｗｉｎｄｏｗｓ２００８など、さらに、「Ｅｄｉｔｉｏｎ」などにより、細かい精度で区切ってもよい。
【００５２】
図４の例では、アップデートプログラムＩＤ「００００３」が、図３の公開停止リストに存在するため、公開停止の対象のアップデートプログラムとなる。
【００５３】
図５、及び、図６は、ファームウェア管理装置１０のデータ管理の一例を示す図であり、第２のアップデート情報である。図５、及び、図６に示す第２のアップデート情報は、ファームウェア管理装置１０の第一格納部１２に格納されている。
【００５４】
ファームウェア管理装置１０は、図３及び図４に示す第１のアップデート情報、ならびに、管理対象サーバ２０の状態に基づいて、常に、図５及び図６に示す第２のアップデート情報を最新の状態に更新する。
【００５５】
図５は、第一格納部１２に格納されている第２のアップデート情報のうち、公開停止となったアップデートプログラムのリスト（図５（ａ））、ファームウェア管理装置１０自身が管理している管理対象サーバ２０のリスト（図５（ｂ））、及び、ファームウェア管理装置１０自身が管理しているアップデートプログラムのリスト（図５（ｃ））を示している。
【００５６】
なお、初期状態では、これらの各リストは空欄である。運用中に、適宜、第一制御部１１が、配布サーバ３０からの情報に基づき、これらの情報を追加、更新する。
【００５７】
図５の例では、公開停止リストは空欄、管理対象サーバ２０のリストは具体的なサーバの名称である「Ｓｅｒｖｅｒ１」、また、アップデートプログラムのリストは、図４に対応するアップデートプログラムＩＤを格納している。
【００５８】
図６は、管理対象サーバ２０に関する詳細な情報の一例を示している。
【００５９】
管理対象サーバ２０のリストは、図６に示すように、例えば、ファームウェア管理装置１０でサーバを管理するために割り振ったサーバＩＤ、管理対象サーバ３０のモデル情報、及び、管理対象サーバのＯＳ情報で構成される。
【００６０】
図７は、ファームウェア管理システム４０の動作の一例を示すシーケンス図である。
【００６１】
図７を用いて、ファームウェア管理システム４０の動作を説明する。
【００６２】
まず、ファームウェア管理装置１０は、ユーザから、管理対象サーバ２０に対するアップデートの指示、すなわち該当するモジュールのファームウェアのアップデートの指示１００を受ける。
【００６３】
なお、ユーザからの指示の他に、例えば、アップデート情報の更新の際に、配布サーバ３０からファームウェア管理装置１０にアップデートの指示を出す、等としてもよい。
【００６４】
そして、ファームウェア管理装置１０は、配信サーバ３０に第１のデータ要求（または同期要求）１０１を送信し、配布サーバ３０から、第１のアップデート情報のうちの公開停止のアップデートプログラムの一覧（図３（ｂ）の公開停止リスト）を、ハッシュ関数を用いてハッシュ化したハッシュデータ１０２として取得（ダウンロード）する。
【００６５】
ところで、上記のハッシュ関数とは、例えば、あるデータが与えられた場合に、そのデータを代表する数値を得る操作、または、その様な数値を得るための関数のことである。また、ハッシュ関数は、主に、検索の高速化やデータ比較の処理の高速化、さらにはデータの改竄の検出に使われる。
【００６６】
ハッシュ関数を用いて対象となるデータをハッシュ化することにより、公開停止となったアップデートプログラムの数が増えた場合でも、ファームウェア管理装置１０と配布サーバ３０間の通信は、少量の通信量で済むことになる。
【００６７】
また、ファームウェア管理装置１０から配信サーバ３０への確認時に、まずハッシュ化したデータを最初にやり取りすることで、最小限のデータのやり取りで公開停止アップデートプログラムリストを配信サーバ３０側とファームウェア管理装置１０側で同期させることができ、ネットワークへの負荷が少ない。
【００６８】
次に、ファームウェア管理装置１０は、前述と同じハッシュ化のアルゴリズムを用いて、自身のデータベース（第一格納部１２）に格納されている第２のアップデート情報のうちの公開停止アップデートプログラムの一覧（図５（ａ）の公開停止リスト）を、まとめてハッシュ化し、配布サーバ３０から取得したハッシュデータ（アップデート情報）と比較する。
【００６９】
その結果、差分があれば、最新のデータがファームウェア管理装置１０に存在しない可能性があるので、ファームウェア管理装置１０は、配布サーバ３０から、ハッシュ化していない形態で公開停止アップデートプログラムの一覧（図３（ｂ）、及び、図４で該当するアップデートプログラムＩＤに関する情報）を取得し、ファームウェア管理装置１０（第一格納部１２）の図５（ａ）の情報を配布サーバ３０の図３（ｂ）の情報で同期化する。具体的に、ファームウェア管理装置１０は、配布サーバ３０に第２のデータ要求１０３を送信し、ハッシュ化していない形態で公開停止アップデートプログラムの一覧（図３（ｂ））１０４を受信する。
【００７０】
そして、ファームウェア管理装置１０は、ファームウェア管理装置１０が保持する最新の公開停止アップデートプログラムの一覧（図５（ｃ））を検索し、適用しようとしているアップデートプログラムが一覧１０４の中の公開停止アップデートプログラムに該当するか否かを判断する。該当する場合は、適用中止１０５を管理対象サーバ１０に送信し、適用を中止する。
【００７１】
この時、既に、公開停止のアップデートプログラムが管理対象サーバ２０に送信されていた場合は、ファームウェア管理装置１０は、それを削除するように管理対象サーバ２０側に指示を出す。
【００７２】
なお、上記の管理対象サーバ２０以外に、本アップデートプログラムが適用可能な状態にある管理対象サーバ２０が他にもある場合には、ファームウェア管理装置１０は、それらの管理対象サーバ２０に対しても、本アップデートプログラムの削除指示を出しても良い。
【００７３】
その後、ファームウェア管理装置１０は、該当するアップデートプログラムをファームウェア管理装置１０のリスト（図５（ａ））から削除する。
【００７４】
図８は、ファームウェア管理装置１０の動作を示すフローチャートである。
【００７５】
まず、第一制御部１１は、ユーザからアップデートプログラムの適用の指示１００（図７）を受ける（ステップＳ０１）。その指示には、アップデートプログラムのＩＤが含まれる。
【００７６】
なお、ここで、第２のアップデート情報の更新の際に、配布サーバ３０から第一制御部１１にアップデートの指示を出す、等としてもよい。
【００７７】
次に、第一制御部１１は、ファームウェア管理装置１０自身の第一格納部１２に格納された、第２のアップデート情報のうちの公開停止リスト（図５（ａ））から、適用指示のあったアップデートプログラムを検索し（ステップＳ０２）、適用指示のあったアップデートプログラムが公開停止リストにあるか確認する（ステップＳ０３）。
【００７８】
そして、ステップＳ０３で「該当あり」の場合、第一制御部１１は、該当するアップデートプログラムの適用を中止する判断を行う（ステップＳ１０）。
【００７９】
そして、第一制御部１１は、管理対象サーバ２０（の第二制御部２１）に対して、該当するアップデートプラグラムの削除を指示する（ステップＳ１１）。
【００８０】
また、第一制御部１１は、ファームウェア管理装置１０が管理している（第一格納部１２に格納されている）該当するアップデートプラグラムを削除する（ステップＳ１２）。
【００８１】
一方、ステップＳ０３で「該当なし」の場合、図７で説明したように、最新のデータ（例えば、作業の効率化のため、ハッシュ化したデータ）を用いて、第一制御部１１は、再度チェックを行う（Ｓ０４〜Ｓ０９）。
【００８２】
具体的には、まず、第一制御部１１は、第三格納部３２から（実際には、該当するデータに対応する表示からダウンロードする、などにより）、第１のアップデート情報のうちの公開停止リスト（図３（ｂ））のハッシュデータ（第一ハッシュデータ）１０２を取得する（ステップＳ０４）。
【００８３】
次に、第一制御部１１は、管理装置１０自身の第一格納部１２に格納している公開停止リスト（図５（ａ））をハッシュ化した第二ハッシュデータと第一ハッシュデータを比較する（ステップＳ０５）。
【００８４】
ステップＳ０５で「一致」の場合、第一制御部１１は、該当するアップデートプログラムの適用を実行する（命令を第二制御部２１に送信し、第二制御部２１が管理対象サーバ２０において実行する）（ステップＳ０６）。
【００８５】
一方、ステップＳ０５で「不一致」の場合、第一制御部１１は、配布サーバ３０の公開停止リスト（図３（ｂ））に、ファームウェア管理装置１０の公開停止リストを同期させる（ステップＳ０７）。具体的に、ファームウェア管理装置１０は、配布サーバ３０から、ハッシュ化していない形態で公開停止アップデートプログラムの一覧（図３（ｂ）、及び、図４で該当するアップデートプログラムＩＤに関する情報）を取得し、ファームウェア管理装置１０（第一格納部１２）の図５（ａ）の情報を配布サーバ３０の図３（ｂ）の情報で同期化（同じ情報になるように書き換え）する。
【００８６】
そして、第一制御部１１は、ファームウェア管理装置１０自身が持つ（第一格納部１２に格納された）公開停止リストから、適用指示のあったアップデートプログラムの検索を行い、適用指示のあったアップデートプログラムに該当するか確認する（ステップＳ０８、Ｓ０９）。
【００８７】
ステップＳ０９で「該当あり」の場合、第一制御部１１は、アップデートプログラムの適用を中止する（ステップＳ１０）。
【００８８】
なお、ステップＳ０９で「該当なし」の場合、第一制御部１１は、該当するアップデートプログラムの適用を実行する（命令を第二制御部２１に送信し、第二制御部２１が管理対象サーバ２０において実行する）（ステップＳ０６）。
【００８９】
本実施形態に係るファームウェア管理システム４０は、以下に記載するような効果を奏する。
【００９０】
管理対象サーバ２０のファームウェアにアップデートプログラムを適用する際に、公開停止のアップデートプログラムの適用を防止することができる。
【００９１】
その理由は、アップデートプログラムの適用時に、配布サーバ３０からアップデート情報を取得し、公開停止に該当する場合は、適用を中止してアップデートプログラムを削除するからである。
＜第二の実施形態＞
次に、本発明の第二の実施形態について図面を参照して詳細に説明する。
【００９２】
図９は、本発明の第二の実施形態に係る、ファームウェア管理システム５０の構成の一例を示すブロック図である。
【００９３】
図９に示すように、本実施形態では、第一の実施形態のファームウェア管理装置１０の代わりにファームウェア管理装置１０Ａが使用される。ファームウェア管理装置１０Ａは、ファームウェア管理装置１０の構成に、更に、メール解析部１４を追加する。メール解析部１４は、第一制御部１１、第一格納部１２、第一通信部１３に接続される。
【００９４】
本実施形態において、配信サーバ３０の第三制御部３１は、ファームウェアのアップデート情報を含む電子メールを送信する。
【００９５】
第三通信部３３は、第三制御部３１の指示に従い、電子メールを送信する機能を備える。
【００９６】
また、第一通信部１３は、電子メールを受信し、第一制御部１１に伝達する機能を備える。
【００９７】
また、第三格納部３２は、更に、ファームウェア管理装置１０のメールアドレスを格納する。
【００９８】
第三制御部３１は、アップデートプログラムの公開停止リストが更新されたタイミングで、第三格納部３２が格納しているメールアドレスに対して、アップデート情報を含む電子メールを送信する。
【００９９】
なお、アップデート情報は、アップデートプログラムの公開停止リストをハッシュ関数によりハッシュ化したハッシュデータ（第一ハッシュデータ）としてもよい。
【０１００】
一方、ファームウェア管理装置１０のメール解析部１４は、第一通信部１３を介して電子メールを受信した後、電子メールに含まれるアップデート情報（第一ハッシュデータ）を抽出し、第一格納部１２に格納する。
【０１０１】
そして、第一制御部１１は、電子メールから取得したアップデート情報（第一ハッシュデータ）と、第一格納部１３に保持したアップデート情報（公開停止リストをハッシュ化した第二ハッシュデータ）との比較を行う。
【０１０２】
なお、上記以降の手順は、第一の実施形態の場合（図８のステップＳ０５以降の処理）と同様であるため、説明は省略する。
【０１０３】
ここで、メール解析部１４は、論理回路等のハードウェアで構成される。また、メール解析部１４は、コンピュータであるファームウェア管理装置１０のプロセッサが、図示されないメモリ上のプログラムを実行することで実現されても良い。
【０１０４】
本実施形態に係るファームウェア管理システム５０は、以下に記載するような効果を奏する。
【０１０５】
アップデートプログラムの公開が停止されたタイミングで、公開停止のアップデートプログラムを削除することができる。
【０１０６】
その理由は、公開停止リストが更新されたタイミングで、公開停止の情報を含んだ電子メールを送信するからである。
＜第三の実施形態＞
次に、本発明の第三の実施形態について図面を参照して詳細に説明する。
【０１０７】
図１０は、本発明の第三の実施形態に係る、ファームウェア管理装置１０Ｂの構成の一例を示すブロック図である。
【０１０８】
ファームウェア管理装置１０Ｂは、第一制御部１１、及び、第一格納部１２を含む。
【０１０９】
第一制御部１１は、ファームウェアが公開停止であることを示す第１のアップデート情報をアクセス可能にする図示しない配布サーバから、その第１のアップデート情報を取得する。
【０１１０】
第一格納部１２は、第２のアップデート情報を格納する。
【０１１１】
第一制御部１１は、配信サーバから取得した第１のアップデート情報と、第一格納部１２に格納されている第２のアップデート情報を基に、ファームウェアのアップデートプログラムの適用または削除の命令を送信する。
【０１１２】
本実施形態に係るファームウェア管理装置１０Ｂは、以下に記載するような効果を奏する。
【０１１３】
管理対象サーバ２０のファームウェアにアップデートプログラムを適用する際に、公開停止のアップデートプログラムの適用を防止することができる。
【０１１４】
その理由は、アップデートプログラムの適用時に、配布サーバ３０からアップデート情報を取得し、公開停止に該当する場合は、適用を中止してアップデートプログラムを削除するからである。
【０１１５】
以上、図面を参照して本発明の実施形態を説明したが、本発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【符号の説明】
【０１１６】
１０    ファームウェア管理装置
１０Ａ    ファームウェア管理装置
１０Ｂ    ファームウェア管理装置
１１    第一制御部
１２    第一格納部
１３    第一通信部
１４    メール解析部
２０    管理対象サーバ
２１    第二制御部
２２    第二格納部
２３    第二通信部
３０    配布サーバ
３１    第三制御部
３２    第三格納部
３３    第三通信部
４０    ファームウェア管理システム
５０    ファームウェア管理システム
７０    情報処理装置
７１    ＣＰＵ
７２    メモリ
７３    記憶装置
７４    Ｉ／Ｆ
７５    バス
７６    入力装置
７７    出力装置
７８    記録媒体
【図１】
2015153266.tif 000003
【図２】
2015153266.tif 000004
【図３】
2015153266.tif 000005
【図４】
2015153266.tif 000006
【図５】
2015153266.tif 000007
【図６】
2015153266.tif 000008
【図７】
2015153266.tif 000009
【図８】
2015153266.tif 000010
【図９】
2015153266.tif 000011
【図１０】
2015153266.tif 000012