(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024175918
(43)【公開日】2024-12-19
(54)【発明の名称】情報処理システム及びプログラム
(51)【国際特許分類】
G06F 11/20 20060101AFI20241212BHJP
【FI】
G06F11/20 669
G06F11/20 682
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2023094017
(22)【出願日】2023-06-07
(71)【出願人】
【識別番号】000005496
【氏名又は名称】富士フイルムビジネスイノベーション株式会社
(74)【代理人】
【識別番号】110001210
【氏名又は名称】弁理士法人YKI国際特許事務所
(72)【発明者】
【氏名】木下 陽介
【テーマコード(参考)】
5B034
【Fターム(参考)】
5B034BB02
5B034CC02
5B034DD02
5B034DD06
(57)【要約】
【課題】 第1の情報処理装置が保持するデータの同期相手となる第2の情報処理装置を管理する場合において、第2の情報処理装置との組が解消された第1の情報処理装置からの再組形成要求に応じて、複数の第2の情報処理装置の中から当該第1の情報処理装置と組を成していた第2の情報処理装置を特定する。
【解決手段】実デバイス10と仮想デバイス20は、鍵ペアの一方を保持することでデータの同期の組を形成している。サーバ30は、保守等により鍵ペアを消失した実デバイス10からの再組形成要求に応じて組を成す実デバイス10の生存確認を各仮想デバイス20に指示すると共に各仮想デバイス20から生存確認結果を取得し、生存確認結果を参照した結果、生存を確認できなかった仮想デバイス20を、再組形成要求をした実デバイス10と特定する。
【選択図】
図2
【特許請求の範囲】
【請求項1】
データを保持する第1の情報処理装置と組を成し、前記データの同期相手となる第2の情報処理装置を管理するプロセッサを備え、
前記プロセッサは、
前記第2の情報処理装置との組が解消された前記第1の情報処理装置からの再組形成要求に応じて、複数の前記第2の情報処理装置に対して、当該第2の情報処理装置と組を成す前記第1の情報処理装置の生存確認を要求し、
前記生存確認の要求に応じて前記第2の情報処理装置それぞれから返信されてくる生存確認結果を受信し、
前記再組形成要求をした前記第1の情報処理装置を要求元装置と、当該要求元装置と組を成していた前記第2の情報処理装置を直前組相手装置とする場合、受信した前記生存確認結果を参照し、生存が確認できなかった前記第2の情報処理装置を前記直前組相手装置と特定する、
ことを特徴とする情報処理システム。
【請求項2】
前記プロセッサは、所定の条件に応じて前記要求元装置と新たに組を成す前記第2の情報処理装置を新組相手装置として選定することを特徴とする請求項1に記載の情報処理システム。
【請求項3】
前記プロセッサは、前記直前組相手装置以外の前記第2の情報処理装置を、前記新組相手装置として選定する場合、前記直前組相手装置が保持していた前記データを当該新組相手装置に移行させることを特徴とする請求項2に記載の情報処理システム。
【請求項4】
前記プロセッサは、前記直前組相手装置を、前記新組相手装置として選定することを特徴とする請求項2に記載の情報処理システム。
【請求項5】
前記プロセッサは、生存が確認できなかった旨の前記生存確認結果を複数受信した場合、前記要求元装置の特徴を示す特徴情報を参照して、又は前記要求元装置の管理者に問い合わせることによって、生存が確認できなかった旨の前記生存確認結果を送信した複数の前記第2の情報処理装置の中から前記直前組相手装置を選定することを特徴とする請求項1に記載の情報処理システム。
【請求項6】
前記プロセッサは、
前記特徴情報を参照する場合、前記要求元装置に要求することにより前記特徴情報を取得し、
取得した前記特徴情報を、生存が確認できなかった旨の前記生存確認結果を送信した複数の前記第2の情報処理装置がそれぞれ保持する組相手特徴情報であって当該第2の情報処理装置と組を成す前記第1の情報処理装置の特徴を示す組相手特徴情報と照合した結果に応じて前記直前組相手装置を選定する、
ことを特徴とする請求項5に記載の情報処理システム。
【請求項7】
前記プロセッサは、
前記管理者に問い合わせる場合、生存が確認できなかった旨の前記生存確認結果を送信した複数の前記第2の情報処理装置それぞれから、当該第2の情報処理装置と組を成す前記第1の情報処理装置の特徴を示す組相手特徴情報を取得し、
取得した複数の前記組相手特徴情報を前記要求元装置の管理者に提示する、
ことを特徴とする請求項5に記載の情報処理システム。
【請求項8】
前記第2の情報処理装置は、クラウド上に形成されることを特徴とする請求項1に記載の情報処理システム。
【請求項9】
前記第1の情報処理装置と前記第2の情報処理装置はそれぞれ、組を形成していることを証明しうる一対の情報の一方を保持することを特徴とする請求項1に記載の情報処理システム。
【請求項10】
データを保持する第1の情報処理装置と組を成し、前記データの同期相手となる第2の情報処理装置を管理するコンピュータに、
前記第2の情報処理装置との組が解消された前記第1の情報処理装置からの再組形成要求に応じて、複数の前記第2の情報処理装置に対して、当該第2の情報処理装置と組を成す前記第1の情報処理装置の生存確認を要求する機能、
前記生存確認の要求に応じて前記第2の情報処理装置それぞれから返信されてくる生存確認結果を受信する機能、
前記再組形成要求をした前記第1の情報処理装置を要求元装置と、当該要求元装置と組を成していた前記第2の情報処理装置を直前組相手装置とする場合、受信した前記生存確認結果を参照し、生存が確認できなかった前記第2の情報処理装置を前記直前組相手装置と特定する機能、
を実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理システム及びプログラムに関する。
【背景技術】
【0002】
昨今、実機である複合機と複合機に対応するクラウド上のデジタル複製(以下、「仮想デバイス」という)を連携させて、クラウドサービスを提供する技術が知られている。ユーザは、複合機に直接アクセスしなくても、クラウド上の仮想デバイスにアクセスすれば、複合機が提供する画像処理等のサービスを利用することが可能となる。
【0003】
仮想デバイスが複合機と同じサービスを提供するために、複合機と仮想デバイスは、逐次同期を取り、同じデータ若しくはデータが対応付けられた状態を維持する。同期は、複合機から仮想デバイスに更新を問い合わせることに応じて開始される。
【0004】
このようなサービスシステムでは、偽のデバイスによる「なりすまし」を防ぐために、そのデバイスの真正性を公開鍵及び秘密鍵を用いて確認する技術が知られている。より具体的には、複合機(以下、「実デバイス」ともいう)は、自身の秘密鍵を保持し、自身の公開鍵を仮想デバイスに保持させ、これらの公開鍵及び秘密鍵(以下、「鍵ペア」という)を紐づけておく。通常、鍵ペアは、漏洩時の影響範囲を極小化するためにデバイス毎に生成した異なるものを用いることが多い。
【0005】
ところで、複合機は、安価な小型デバイスとは異なり、動作不良や故障が発生した場合でも工場出荷状態への初期化や基板交換、同一機種への交換といった保守作業により同等のデバイスを長く継続して使用することが多い。この際、例えば、秘密鍵が保存されている基板が交換されると、鍵ペアによる実デバイスと仮想デバイスとの組が解消されることになる。このため、保守作業後の実デバイスは、仮想デバイスを管理するクラウド上のサーバに対して、新しい鍵ペアの公開鍵を送信して鍵ペアによる組の再形成を要求する。そして、実デバイスは、新しい鍵ペアの公開鍵を保持する仮想デバイスと組を再形成した後、組を再形成する仮想デバイスとの間でデータの同期を取ることになる。
【先行技術文献】
【特許文献】
【0006】
【発明の概要】
【発明が解決しようとする課題】
【0007】
第1の情報処理装置が保持するデータの同期相手となる第2の情報処理装置が複数存在する場合において、その複数の第2の情報処理装置のうちいずれかが第1の情報処理装置との組が解消された場合、その第1の情報処理装置と組を成していた第2の情報処理装置が特定できると都合がよい場合がある。例えば、組を解消した第1の情報処理装置が、第2の情報処理装置と組を再形成する際に、再形成の対象となる第2の情報処理装置に対して同期対象となる全てのデータや環境設定内容を提供するより、直前まで組を成していた第2の情報処理装置が保持している同期済みのデータ等を、再形成の対象となる第2の情報処理装置に移行して引き継がせるのが効率的であるとも考えられるからである。
【0008】
本発明は、第1の情報処理装置が保持するデータの同期相手となる第2の情報処理装置を管理する場合において、第2の情報処理装置との組が解消された第1の情報処理装置からの再組形成要求に応じて、複数の第2の情報処理装置の中から当該第1の情報処理装置と組を成していた第2の情報処理装置を特定することを目的とする。
【課題を解決するための手段】
【0009】
本発明に係る情報処理システムは、データを保持する第1の情報処理装置と組を成し、前記データの同期相手となる第2の情報処理装置を管理するプロセッサを備え、前記プロセッサは、前記第2の情報処理装置との組が解消された前記第1の情報処理装置からの再組形成要求に応じて、複数の前記第2の情報処理装置に対して、当該第2の情報処理装置と組を成す前記第1の情報処理装置の生存確認を要求し、前記生存確認の要求に応じて前記第2の情報処理装置それぞれから返信されてくる生存確認結果を受信し、前記再組形成要求をした前記第1の情報処理装置を要求元装置と、当該要求元装置と組を成していた前記第2の情報処理装置を直前組相手装置とする場合、受信した前記生存確認結果を参照し、生存が確認できなかった前記第2の情報処理装置を前記直前組相手装置と特定する、ことを特徴とする。
【0010】
また、前記プロセッサは、所定の条件に応じて前記要求元装置と新たに組を成す前記第2の情報処理装置を新組相手装置として選定することを特徴とする。
【0011】
また、前記プロセッサは、前記直前組相手装置以外の前記第2の情報処理装置を、前記新組相手装置として選定する場合、前記直前組相手装置が保持していた前記データを当該新組相手装置に移行させることを特徴とする。
【0012】
また、前記プロセッサは、前記直前組相手装置を、前記新組相手装置として選定することを特徴とする。
【0013】
また、前記プロセッサは、生存が確認できなかった旨の前記生存確認結果を複数受信した場合、前記要求元装置の特徴を示す特徴情報を参照して、又は前記要求元装置の管理者に問い合わせることによって、生存が確認できなかった旨の前記生存確認結果を送信した複数の前記第2の情報処理装置の中から前記直前組相手装置を選定することを特徴とする。
【0014】
また、前記プロセッサは、前記特徴情報を参照する場合、前記要求元装置に要求することにより前記特徴情報を取得し、取得した前記特徴情報を、生存が確認できなかった旨の前記生存確認結果を送信した複数の前記第2の情報処理装置がそれぞれ保持する組相手特徴情報であって当該第2の情報処理装置と組を成す前記第1の情報処理装置の特徴を示す組相手特徴情報と照合した結果に応じて前記直前組相手装置を選定する、ことを特徴とする。
【0015】
また、前記プロセッサは、前記管理者に問い合わせる場合、生存が確認できなかった旨の前記生存確認結果を送信した複数の前記第2の情報処理装置それぞれから、当該第2の情報処理装置と組を成す前記第1の情報処理装置の特徴を示す組相手特徴情報を取得し、取得した複数の前記組相手特徴情報を前記要求元装置の管理者に提示する、ことを特徴とする。
【0016】
また、前記第2の情報処理装置は、クラウド上に形成されることを特徴とする。
【0017】
また、前記第1の情報処理装置と前記第2の情報処理装置はそれぞれ、組を形成していることを証明しうる一対の情報の一方を保持することを特徴とする。
【0018】
本発明に係るプログラムは、データを保持する第1の情報処理装置と組を成し、前記データの同期相手となる第2の情報処理装置を管理するコンピュータに、前記第2の情報処理装置との組が解消された前記第1の情報処理装置からの再組形成要求に応じて、複数の前記第2の情報処理装置に対して、当該第2の情報処理装置と組を成す前記第1の情報処理装置の生存確認を要求する機能、前記生存確認の要求に応じて前記第2の情報処理装置それぞれから返信されてくる生存確認結果を受信する機能、前記再組形成要求をした前記第1の情報処理装置を要求元装置と、当該要求元装置と組を成していた前記第2の情報処理装置を直前組相手装置とする場合、受信した前記生存確認結果を参照し、生存が確認できなかった前記第2の情報処理装置を前記直前組相手装置と特定する機能、を実現させる。
【発明の効果】
【0019】
請求項1に記載の発明によれば、第1の情報処理装置が保持するデータの同期相手となる第2の情報処理装置を管理する場合において、第2の情報処理装置との組が解消された第1の情報処理装置からの再組形成要求に応じて、複数の第2の情報処理装置の中から当該第1の情報処理装置と組を成していた第2の情報処理装置を特定することができる。
【0020】
請求項2に記載の発明によれば、所定の条件に合致する第2の情報処理装置を新組相手装置として選定することができる。
【0021】
請求項3に記載の発明によれば、直前組相手装置が保持していた同期対象のデータを新組相手装置に引き継がせることができる。
【0022】
請求項4に記載の発明によれば、同期対象のデータを移行する必要がなくなる。
【0023】
請求項5に記載の発明によれば、ただ1つの直前組相手装置に絞り込めるよう処理することができる。
【0024】
請求項6に記載の発明によれば、要求元装置と特徴を共通する第1の情報処理装置と組を成す第2の情報処理装置を直前組相手装置として選定することができる。
【0025】
請求項7に記載の発明によれば、直前組相手装置を選択させる際に第1の情報処理装置の特徴を管理者に提供することができる。
【0026】
請求項8に記載の発明によれば、外部に存在する他の情報処理装置と同期を取ることができる。
【0027】
請求項9に記載の発明によれば、データの同期相手を保証することができる。
【0028】
請求項10に記載の発明によれば、第1の情報処理装置が保持するデータの同期相手となる第2の情報処理装置を管理する場合において、第2の情報処理装置との組が解消された第1の情報処理装置からの再組形成要求に応じて、複数の第2の情報処理装置の中から当該第1の情報処理装置と組を成していた第2の情報処理装置を特定することができる。
【図面の簡単な説明】
【0029】
【
図1】実施の形態1におけるサービスシステムの全体構成図である。
【
図2】実施の形態1におけるサービスシステムのブロック構成の一例を示す図である。
【
図3】実施の形態1におけるサービスシステムの他の全体構成図である。
【
図4】実施の形態1におけるデータ同期の組を再度形成するために実施される処理を示すシーケンス図である。
【発明を実施するための形態】
【0030】
以下、図面に基づいて、本発明の好適な実施の形態について説明する。
【0031】
実施の形態1.
図1は、本実施の形態におけるサービスシステムの全体構成図である。本実施の形態におけるサービスシステムは、本発明に係る情報処理システムの一形態である。
図1には、オンプレミス環境に設置される複合機10と、クラウド2上に形成される仮想的な複合機20と、がインターネット等のネットワーク4を介して接続される構成が示されている。第1の情報処理装置としての複合機10は、オンプレミス環境に物理的に設置される実機であることから、以降の説明では「実デバイス10」とも称することにする。一方、第2の情報処理装置としての複合機20は、クラウド2上に仮想的に形成される複合機であることから、以降の説明では「仮想デバイス20」とも称することにする。
【0032】
実デバイス10は、同期の対象となるデータを保持する。仮想デバイス20は、実デバイス10のデータの同期相手となるデバイスであり、実デバイス10のデジタル複製という位置付けになる。クラウド2上に形成されるサーバ30は、仮想デバイス20をテナント6単位に管理する。
【0033】
「テナント」6とは、サービスシステムが提供するクラウドサービスと、そのクラウドサービスを利用するユーザを管理する単位である。テナント6では、テナントの利用者を「ユーザ」と、管理権限を持つユーザを「管理者」という。管理者は、テナント全体、テナントの一部、またはサービスなど管理の範囲毎に権限で区別される。
【0034】
図1には、実デバイス10a,10b,10cと、それぞれに対応する仮想デバイス20a,20b,20cが示されている。本実施の形態では、実デバイス10と仮想デバイス20を1対1の関係にあるものとして説明するが、1台の仮想デバイス20に対して複数台の実デバイス10を対応付けてもよい。
図1では、3組のデバイスを図示しているが、本実施の形態においては、2以上の組が形成されていればよい。実デバイス10a,10b,10cは、相互に区別する必要はない場合、上記のように「実デバイス10」と総称する。仮想デバイス20a,20b,20cにおいても同様とする。
【0035】
本実施の形態における複合機10は、印刷機能、コピー機能、スキャナ機能等各種機能を搭載する画像形成装置の一形態であり、情報処理装置(「コンピュータ」ともいう)を内蔵する装置である。本実施の形態における複合機10は、従前から存在する汎用的なハードウェア構成で実現できる。すなわち、複合機10は、CPU、ROM、RAM、画像データや親展ボックス等を記憶するハードディスクドライブ(HDD)等の記憶手段、ユーザインタフェースとしての操作パネル、インターネット等のネットワーク4、各種機能の提供に必要なスキャナやプリントエンジン等を備える。複合機10は、そのライフサイクルにおいてリース契約終了に伴う返却や故障・保守における交換/廃棄などのイベントが発生する。
【0036】
また、本実施の形態における複合機10は、鍵を保存する手段としてTPM(Trusted Platform Module)などのHSM(Hardware Security Module)を備えている。HSMは、データの暗号化と復号、及びデジタル署名と証明書の作成に使用される鍵を生成、保護、管理することで暗号化プロセスをセキュアに保つ、強化された耐タンパ性機能付きハードウェアデバイスであり、基板に固定されている。本実施の形態では、認証鍵として、公開鍵暗号方式における秘密鍵及び公開鍵(「オーナー認証鍵」ともいう)と、出荷時点で割り振られており、複合機10の出自の確からしさの確認に用いられる秘密鍵及び公開鍵(「デバイス認証鍵」ともいう)と、を用いる。オーナー認証鍵は、複合機10毎に用意される。デバイス認証鍵は、複合機10毎に用意してもよいが、例えばテナント6毎に共有してもよい。HSMには、オーナー認証鍵の秘密鍵と、デバイス認証鍵の秘密鍵が保存される。
【0037】
仮想デバイス20は、1又は複数のコンピュータにより実現される仮想的な画像形成装置の一形態であり、情報処理装置を有する装置である。サーバ30は、1又は複数のコンピュータにより実現される仮想的なサーバコンピュータの一形態である。仮想デバイス20及びサーバ30は、仮想的というものの、CPU、ROM、RAM、記憶手段、通信手段を有している。仮想デバイス20及びサーバ30は、便宜的に1台の装置として図示しているが、複数の装置を組み合わせて構成してもよい。
【0038】
実デバイス10と仮想デバイス20が同等のサービスをユーザに提供するために、実デバイス10と仮想デバイス20の間でデータの同期を取る必要がある。「データの同期」というのは、基本的には同じデータを相互に保持することである。また、仮想デバイス20に存在するソフトウェアの一部(「サブセット」と呼ばれる)が複合機10に存在する場合もある。このように、「データの同期」という語は、それぞれが保持するデータが完全同一であると限定的に解釈するものではない。本実施の形態では、複合機10,20が連携して、それぞれがデータを利用して提供すべきサービスを提供できる状態にすることを「データの同期」という。
【0039】
また、「データ」には、アプリケーションやアプリケーションで使用するデータ、複合機10,20に対する各種設定値などが含まれる。つまり、本実施の形態では、複合機10,20が動作する上で参照する電子的なデータを「データ」と総称する。なお、データがアプリケーションの場合、バージョンアップや機能の追加などにより同期を取る必要が発生する。
【0040】
図2は、本実施の形態におけるサービスシステムのブロック構成の一例を示す図である。
図1に示す複数の実デバイス10a,10b,10cはそれぞれ、
図2に示す機能ブロックを同様に有している。仮想デバイス20においても同様である。なお、例えば、実デバイス10は、当然ながら印刷機能やスキャン機能等複数の機能を提供するが、これらの機能のように本実施の形態において説明に用いない構成要素は、図から省略している。
【0041】
実デバイス10は、鍵管理部11、同期処理部12、再組形成要求処理部13、生存確認応答部14、制御部15及び同期データ記憶部16を有している。
【0042】
鍵管理部11は、前述したHSMにより実現され、オーナー認証鍵及びデバイス認証鍵を保持管理する。同期データ記憶部16には、同期対象となるデータが記憶されるが、同期処理部12は、データの同期相手となる仮想デバイス20との間でデータの同期を取るための同期処理を実施する。再組形成要求処理部13は、仮想デバイス20との組が解消された後のユーザからの仮想デバイス20の再登録要求に応じて、仮想デバイス20と組を形成するための再組形成要求をサーバ30に行う。生存確認応答部14は、組を形成している仮想デバイス20からの生存確認の問い合わせに応じて生存している旨を返信する。制御部15は、実デバイス10における上記各構成要素11~14の実行を制御する。
【0043】
実デバイス10における各構成要素11~15は、実デバイス10に搭載されるコンピュータと、コンピュータに搭載されたCPUで動作するプログラムとの協調動作により実現される。また、同期データ記憶部16は、実デバイス10に搭載されたHDDにて実現される。あるいは、RAM又は外部にある記憶手段をネットワーク経由で利用してもよい。
【0044】
仮想デバイス20は、鍵管理部21、同期処理部22、生存確認制御部23、データ移行処理部24、制御部25及び同期データ記憶部26を有している。
【0045】
鍵管理部21は、オーナー認証鍵の公開鍵を保持管理する。同期データ記憶部26には、実デバイス10と同期済みのデータが記憶されるが、同期処理部22は、データの同期相手となる実デバイス10との間でデータの同期を取るための同期処理を実施する。生存確認制御部23は、サーバ30からの指示に応じて、組を成している実デバイス10の生存を確認すると共に、その生存確認の結果をサーバ30に返す。データ移行処理部24は、実デバイス10からの再組形成要求に応じてサーバ30により自デバイスが新たに形成された場合、サーバ30からの移行指示に応じてその実デバイス10と直前に組を成していた仮想デバイス20が保持していた同期対象のデータを取得することでデータを引き継ぐ。制御部25は、仮想デバイス20における上記各構成要素21~24の実行を制御する。
【0046】
仮想デバイス20における各構成要素21~25は、仮想デバイス20に搭載されるコンピュータと、コンピュータに搭載されたCPUで動作するプログラムとの協調動作により実現される。また、同期データ記憶部26は、仮想デバイス20に搭載されたHDDにて実現される。あるいは、RAM又はクラウド2内にある記憶手段を利用してもよい。
【0047】
サーバ30は、鍵管理部31、同期制御部32、再組形成要求受信部33、生存確認制御部34、仮想デバイス管理部35及びデータ移行制御部36を有している。
【0048】
鍵管理部31は、各実デバイス10から送られてくるオーナー認証鍵の公開鍵及びデバイス認証鍵を保持管理する。同期制御部32は、実デバイス10と仮想デバイス20との間で実施される同期処理を制御する。生存確認制御部23は、実デバイス10からの再組形成要求に応じて、当該実デバイス10が属するテナント6に含まれる複数の仮想デバイス20それぞれに対して、当該仮想デバイス20と組を成す実デバイス10の生存確認を要求し、またその生存確認要求に応じて各仮想デバイス20から返信されてくる生存確認結果を収集する。仮想デバイス管理部35は、管理対象とする仮想デバイス20をテナント6毎に管理する。データ移行制御部36は、実デバイス10からの再組形成要求に応じて仮想デバイス管理部35により新たな仮想デバイス20が形成された場合、その実デバイス10が直前に組を成していた仮想デバイス20が保持している同期対象のデータを、新たな仮想デバイス20に移行するための制御を行う。
【0049】
サーバ30における各構成要素31~36は、サーバ30を形成するコンピュータと、コンピュータに搭載されたCPUで動作するプログラムとの協調動作により実現される。
【0050】
また、本実施の形態で用いるプログラムは、通信手段により提供することはもちろん、USBメモリ等のコンピュータ読み取り可能な記録媒体に格納して提供することも可能である。通信手段や記録媒体から提供されたプログラムはコンピュータにインストールされ、コンピュータのCPUがプログラムを順次実行することで各種処理が実現される。
【0051】
次に、本実施の形態における動作について説明する。本実施の形態では、1つのテナント6に属する仮想デバイス20と、各仮想デバイス20に対応する実デバイス10とによる同期の組が、
図1に例示するように3組形成されている場合を例にして説明する。
【0052】
前述したように、各複合機10,20はそれぞれ、同等のサービスを提供する。そのために、サーバ30における同期制御部32による制御のもと、各複合機10,20の同期処理部12,22が連携して実施する同期処理では、複合機10が複合機20に所定のタイミングで問い合わせることによって開始される。本実施の形態では、複合機10,20間でデータの同期がすでに取れているものとする。
【0053】
このデータの同期が取れている状態のときに、ある実デバイス10において何らかの障害が発生したことにより基板が交換されたとする。前述したように実デバイス10と、この実デバイス10に対応する仮想デバイス20は、組を形成していることを証明しうる一対の情報としてのオーナー認証鍵(すなわち、秘密鍵と公開鍵の鍵ペア)の一方ずつを保持することで組を成していたが、オーナー認証鍵の秘密鍵を記憶するHSM搭載の基板が交換されたということは、同期の組が解消されたことに等しい。
【0054】
図3は、
図1と同様にサービスシステム全体の構成図であるが、
図3では、基板が交換されたことにより実デバイス10cが実デバイス10dとして図示している。複合機10の基板以外の本体自体の構成は、基板交換前と同じだとしても、組を証明しうるオーナー認証鍵の秘密鍵が消失したことに伴い、複合機10の本体全体を交換する場合と同様に鍵ペアによる管理上、異なる複合機10として認識される。以降の説明では、オーナー認証鍵の秘密鍵が消失した複合機10を「実デバイス10c」とし、新たなオーナー認証鍵を使用することになる複合機10を「実デバイス10d」として記載する。
【0055】
なお、本実施の形態では、実デバイス10cの基板が交換される場合を想定しているので、実デバイス10cで保持されていた同期対象のデータは、実デバイス10dにそのまま引き継がれる。仮に、装置本体を交換する場合、実デバイス10cで保持されていた同期対象のデータは、実デバイス10dに事前に移行しておく必要がある。
【0056】
実デバイス10cは、保守作業により実デバイス10dとして動作可能な状態に設定されるが、実デバイス10dは、オーナー認証鍵の秘密鍵を消失している。この時点では同期相手との組が解消されたままの状態である。従って、実デバイス10dは、データの同期相手となる仮想デバイス20との組を再度形成する必要がある。
【0057】
なお、前述したように、
図3では、実デバイス10cと実デバイス10dは、説明の便宜上、別の複合機10として図示しているが、実質的には同じ複合機10なので、仮想デバイス20との組を再度形成すると表現している。仮に、テナントに複合機10を新たに設置する場合には、新規の組の形成となる。
【0058】
以下、本実施の形態において、実デバイス10dが組を再度形成するために実施される処理について、
図4に示すシーケンス図を用いて説明する。なお、
図4では、仮想デバイス20を便宜的に“DS”と記号にて記載する場合がある。
【0059】
実デバイス10dの管理者は、所定の操作を行うことで、同期の組を成す仮想デバイス20の再登録を実デバイス10dに要求する。
【0060】
実デバイス10dは、管理者からの再登録要求を受け付けると(ステップS101)、鍵管理部11は、新たな鍵ペア、すなわちオーナー認証鍵を作成し、基板のHSMに登録する(ステップS102)。なお、デバイス認証鍵の公開鍵は、新たな基板のHSMに予め設定されている。続いて、再組形成要求処理部13は、オーナー認証鍵の公開鍵及びデバイス認証鍵の公開鍵を含む再組形成要求をサーバ30へ送信する(ステップS103)。再組形成要求には、組を新規に形成するための要求とは異なる要求であることがわかる情報が設定されている。
【0061】
ちなみに、実デバイス10cは、基板が交換されることで実デバイス10dと図示していることは前述した通りである。説明の便宜上、交換前後の実デバイス10が判別しやすいように異なる符号(“10c”と“10d”)を付けているが、実デバイス10cと実デバイス10dは、実質的には同じ複合機10なので、実デバイス10cの立場からするとサーバ30に再組形成要求をしたということができる。なお、仮に、実デバイス10dが新規の複合機10など実デバイス10cと異なる複合機10であれば、前述したように、新規の組の形成要求となり、仮想デバイス20dが仮想デバイス20cのデータを引き継ぐ必要はない。
【0062】
サーバ30における再組形成要求受信部33は、実デバイス10dから再組形成要求を受信すると、デバイス認証鍵の公開鍵により実デバイス10dを認証すると共に実デバイス10dが属するテナント6を特定する。なお、再組形成要求受信部33は、認証に成功しない場合、再組形成の要求を受け付けない。続いて、生存確認制御部34は、特定されたテナント6に属する全ての仮想デバイス20に対して、組を成す実デバイス10の生存確認をするよう要求する(ステップS301)。
【0063】
各仮想デバイス20における生存確認制御部23は、サーバ30からの要求に応じて、組を成している実デバイス10に所定の生存確認用情報を送信することで生存を確認する(ステップS201)。ここでいう「生存」というのは、データの同期対象として存在していることをいう。仮想デバイス20は、組を成す実デバイス10がネットワーク接続されてデータの同期が取れる状態を確認することで、当該実デバイス10の生存を確認することができる。
【0064】
各実デバイス10における生存確認応答部14は、組を成している仮想デバイス20から所定の生存確認用情報を受信すると、生存している旨を示す所定の情報を返信することで応答する(ステップS151)。
【0065】
各仮想デバイス20における生存確認制御部23は、生存確認に応じて組を成している実デバイス10からの応答があることで、組を成す実デバイス10が正常に存在していることを確認できる。一方、組を成している実デバイス10から所定の情報が返信されてこないということは、正常でない、すなわち生存が確認できなかったことになる。生存確認制御部23は、以上のようにして実施した生存確認の結果をサーバ30に返答する(ステップS202)。
【0066】
サーバ30における生存確認制御部34は、生存確認の要求に応じて全ての仮想デバイス20から送られてくる生存確認の結果を受信することで収集する。
【0067】
ここで、
図1を参照すると、仮想デバイス20a,20b,20cは、組を成す実デバイス10a,10b,10cが生存していれば、その生存を確認することができるはずである。ところが、実デバイス10cは、
図3に示すように基板の交換により実デバイス10dとして存在することになる。また、仮想デバイス20cは、実デバイス10dが保持するオーナー認証鍵の公開鍵を保持していない。よって、仮想デバイス20cは、実デバイス10dは当然のこと、基板が交換された後の実デバイス10cの生存を確認することができない。
【0068】
生存確認制御部34は、各仮想デバイス20からの生存確認結果を参照すると、実デバイス10a,10bは生存し、実デバイス10cは生存していないと判断できる。すなわち、再組形成要求を発信した実デバイス10を「要求元装置」と称し、要求元装置と組を成していた仮想デバイス20を「直前組相手装置」と称する場合、実デバイス10dは、上記の通り再組形成要求を発信しているので「要求元装置」に該当する。また、実デバイス10cは、実デバイス10dと別の符号を付しているもの、実際には再組形成要求を発信した実デバイス10dと実質的に同じ複合機10であることから「要求元装置」に該当するといえる。一方、組を成す実デバイス10cの生存が確認できなかった仮想デバイス20cは、「直前組相手装置」に該当するといえる。すなわち、後述するように、また
図3に示しているように、仮想デバイス20dは、実デバイス10dと新たに組を形成することになるが、本実施の形態では、再組形成要求に応じて要求元装置と新たに組を形成する仮想デバイス20を「新組相手装置」と称することにする。本実施の形態の場合、仮想デバイス20dが「新組相手装置」に該当することになる。
【0069】
以上説明したように、生存確認制御部34は、実デバイス10cと同期を取っていた仮想デバイス20cを直前組相手装置と特定すると共に、同期対象のデータの引継元として特定する(ステップS302)。
【0070】
その後、仮想デバイス管理部35は、実デバイス10dと新たに組を成す仮想デバイス20dを作成するが(ステップS303)、前述したように仮想デバイス20dを新組相手装置と特定すると共に、仮想デバイス20cからの同期対象のデータの引継先となる。
【0071】
以上のようにして、同期対象のデータの引継元と引継先が決まると、データ移行制御部36は、仮想デバイス20cと仮想デバイス20dにデータの引継ぎを指示する(ステップS304)。
【0072】
仮想デバイス20cにおけるデータ移行処理部24と仮想デバイス20dにおけるデータ移行処理部24は、データ移行制御部36による制御のもと連携して動作し、仮想デバイス20cの同期データ記憶部26に保存されている同期対象のデータを、仮想デバイス20dに移行する。これにより、同期対象のデータは、仮想デバイス20dの同期データ記憶部26に保存される。
【0073】
以上のようにして、実デバイス10cと仮想デバイス20cとの組によるデータの同期は、実デバイス10dと仮想デバイス20dとの組に引き継がれることになる。
【0074】
実施の形態2.
上記実施の形態1では、実デバイス10dからの再組形成要求に応じて仮想デバイス20dを新組相手装置として新たに作成し、実デバイス10cと仮想デバイス20cとの組の代わりに、実デバイス10dと仮想デバイス20dとで同期の組を形成するようにした。このように、実施の形態1では、再組形成要求に応じて仮想デバイス20dを無条件に作成するようにしたが、必ずしも仮想デバイス20dを新たに作成しなくてもよい。具体的には、サーバ30は、既存の仮想デバイス20cと実デバイス10dとで組を形成するようにしてもよい。直前組相手装置である仮想デバイス20cは、同期を取るべきデータをすでに保持しているので、更に新組相手装置として活用すれば、仮想デバイス20dを新たに作成する必要はなく、また仮想デバイス20間で同期対象となるデータを移行する処理を実施する必要もない。すなわち、サーバ30は、所定の条件に応じて要求元装置、すなわち仮想デバイス20cを新組相手装置として選定してもよい。
【0075】
新組相手装置として選定されるのは、ここで説明している要求元装置である既存の仮想デバイス20cか、上記実施の形態1で説明した新たに作成される仮想デバイス20dである。新組相手装置として既存の仮想デバイス20cを選定する場合、仮想デバイス管理部35は、
図4に示すステップS303において、仮想デバイス20dを新たに作成する必要はなく、新組相手装置として仮想デバイス20cを選定し、オーナー認証鍵の公開鍵を仮想デバイス20cに保持管理させればよい。そして、データ移行処理部24の制御によるデータ移行処理(ステップS211)は、不要となる。
【0076】
新組相手装置として仮想デバイス20cを選定する場合、クラウド2に仮想デバイス20dを新たに作成する場合に必要となるリソース消費が抑制できる。また、同期対象のデータ移行処理が不要となるので、データ移行に伴う処理の負荷や時間、費用等を発生させずに済む。
【0077】
一方、新組相手装置として仮想デバイス20dを新たに作成して選定する場合、仮想デバイス20cを所定期間保全することによって、仮に実デバイス10dと仮想デバイス20dの紐付けを万一誤ったとしてもリカバリが可能となる。
【0078】
サーバ30は、前述したように、所定の条件に応じて要求元装置としての実デバイス10dと新たに組を成す新組相手装置として仮想デバイス20c又は仮想デバイス20dを選定する。所定の条件としては、例えば、仮想デバイス20の動作環境、処理能力、あるいは実デバイス10dの管理者からの指示などとしてもよい。より具体的にいうと、例えば、移行対象とするデータ量が所定の閾値以上であれば、膨大なデータ移行を回避するために仮想デバイス20cの利用を継続する。あるいは、実デバイス10cの交換対象とする物や交換理由等に応じて決めてもよい。例えば、基板交換レベルであれば、仮想デバイス20cの利用を継続し、複合機10若しくは装置のほぼ全体を交換するのであれば、仮想デバイス20dを新たに作成する。
【0079】
実施の形態3.
上記実施の形態1では、サーバ30は、生存確認要求に対して各仮想デバイス20から生存確認結果を受信し、複数の仮想デバイス20のうち生存確認が取れなかった仮想デバイス20を直前組相手装置と特定していた(
図4におけるステップS301-302)。上記例のように、基板交換により実デバイス10dという存在と化した実デバイス10cと組を成していた仮想デバイス20cは、実デバイス10cとの接続は常時切れているので、当然ながら実デバイス10cの生存を確認することはできない。
【0080】
しかしながら、例えば、仮想デバイス20がサーバ30からの生存確認要求に応じて組を成す実デバイス10にアクセスを試みたときに、例えばデータの同期を取るときだけ実デバイス10とその都度接続する仕様であったり、実デバイス10が電源オフの状態であったり、メンテナンス中であったりするなどを理由に実デバイス10の生存を確認できない場合も想定しうる。この場合、サーバ30は、生存が確認できなかった旨の生存確認結果を複数受信することになるので、直前組相手装置となるべき仮想デバイス20cを1つに特定することができない。
【0081】
そこで、本実施の形態では、生存確認要求に応じて生存が確認できなかった旨の生存確認結果を複数の仮想デバイス20から受信した場合にも対応できるようにした。
【0082】
本実施の形態における各装置10,20,30のブロック構成は、実施の形態1と同じでよい。また、実デバイス10と仮想デバイス20との同期の組を再度形成するために実施される処理の流れも
図4に示すシーケンス図と同じでよい。ただ、本実施の形態では、生存確認要求に応じて生存が確認できなかった旨の生存確認結果を複数受信する場合の処理なので、ステップS302において直前組相手装置を特定する処理の内容が実施の形態1と若干異なる。
【0083】
すなわち、生存が確認できなかった旨の生存確認結果を複数受信した場合、仮想デバイス管理部35は、実デバイス10d、換言すると要求元装置としての実デバイス10cの特徴を示す特徴情報を、実デバイス10dの管理者に問い合わせる。なお、実デバイス10cと実デバイス10dは、実質的に同じ複合機10であることから管理者も同一人物である。なお、問合せは、実デバイス10dの操作パネルの所定のメッセージを表示させてもよいし、管理者が使用する端末装置に送信して表示させるようにしてもよい。実デバイス10における管理者は、サーバ30からの問合せに応じて、実デバイス10cの特徴を示す特徴情報を返信する。
【0084】
前述したように、実デバイス10dが、実デバイス10cの基板を交換して形成される複合機10であることから、実質的に同じ複合機10である。従って、基本的には同等の機種であり、備える機能、接続するオプションの構成も一致する可能性が高い。従って、実デバイス10dの管理者は、これらのハードウェア構成等に関する情報を実デバイス10cの特徴情報としてサーバ30に提供する。また、実デバイス10の購入日等、基板交換等の保守作業の前後で変わらない情報を特徴情報として使用してもよい。
【0085】
また、サーバ30は、実デバイス10dへの問合せに前後して、生存が確認できなかった旨の生存確認結果をサーバ30に返した各仮想デバイス20(以下、「直前組相手装置候補」という)に対して、当該仮想デバイス20が保持する実デバイス10の特徴を示す特徴情報を組相手特徴情報として取得する。
【0086】
サーバが実デバイス10dから特徴情報を受信すると、その特徴情報を直前組相手装置候補それぞれから取得した組相手特徴情報と照合する。前述したように、実デバイス10dから取得した特徴情報は、実デバイス10cと組を成していた仮想デバイス20cから取得した組相手特徴情報とほぼ一致する可能性が極めて高い。従って、仮想デバイス管理部35は、仮想デバイス20cを直前組相手装置として特定することが可能性となる。
【0087】
なお、実デバイス10a,10b,10cは、同じテナントに属することから同等の機種が選択されている可能性があり、上記のように特徴情報を照合するだけでは、組相手特徴情報を確実に特定できない可能性もありうる。
【0088】
この場合、生存確認制御部34は、直前組相手装置候補に、生存確認を再度指示してもよい。ただ、ここでは、組を成す実デバイス10と接続されていない状態であっても、強制的に接続して生存確認を取る内容の指示にする。これにより、ステップ301のときのように生存確認を単に実行させる場合より直前組相手装置を絞り込むことが可能となる。
【0089】
それでもなお、ただ1つの直前組相手装置に絞り込めない可能性もある。仮想デバイス管理部35は、実デバイス10cの管理者でもあった実デバイス10dの管理者に、実デバイス10cと組を成していた仮想デバイス20を問い合わせるようにしてもよい。管理者に問い合わせる場合、仮想デバイス管理部35は、前述したようにして各直前組相手装置候補から取得した組相手特徴情報を管理者に送信することで提示してもよい。管理者は、送信された組相手特徴情報を参照することによって直前組相手装置候補の中から直前組相手装置を選定しやすくなる。
【0090】
なお、本実施の形態では、管理者の手間を考慮して、特徴情報だけでは直前組相手装置候補の中から直前組相手装置を選定できない場合に限って管理者に問い合わせるようにしたが、複数の直前組相手装置の候補が上がって時点で管理者に問い合わせるようにしてもよい。
【0091】
本実施の形態によれば、生存確認をしたところ複数の直前組相手装置の候補が存在する場合でも、直前組相手装置に該当する仮想デバイス20をより適格に選定することができる。
【0092】
ところで、上記各実施の形態において、第1の情報処理装置と第2の情報処理装置は、複合機を例にして説明したが、プリンタなどの他の装置や、あるいはPCなどのデータの同期を取る必要のある情報処理装置又はその情報処理装置を搭載する機器であってもよい。
【0093】
また、各実施の形態1~3において説明した処理は、必要により適宜組み合わせて実施してもよい。
【0094】
上記実施の形態において、プロセッサとは広義的なプロセッサを指し、汎用的なプロセッサ(例えばCPU:Central Processing Unit等)や、専用のプロセッサ(例えばGPU:Graphics Processing Unit、ASIC:Application Specific Integrated Circuit、FPGA:Field Programmable Gate Array、プログラマブル論理デバイス等)を含むものである。
【0095】
また上記実施の形態におけるプロセッサの動作は、1つのプロセッサによって成すのみでなく、物理的に離れた位置に存在する複数のプロセッサが協働して成すものであってもよい。また、プロセッサの各動作の順序は上記各実施の形態において記載した順序のみに限定されるものではなく、適宜変更してもよい。
【0096】
(付記)
(((1)))
データを保持する第1の情報処理装置と組を成し、前記データの同期相手となる第2の情報処理装置を管理するプロセッサを備え、
前記プロセッサは、
前記第2の情報処理装置との組が解消された前記第1の情報処理装置からの再組形成要求に応じて、複数の前記第2の情報処理装置に対して、当該第2の情報処理装置と組を成す前記第1の情報処理装置の生存確認を要求し、
前記生存確認の要求に応じて前記第2の情報処理装置それぞれから返信されてくる生存確認結果を受信し、
前記再組形成要求をした前記第1の情報処理装置を要求元装置と、当該要求元装置と組を成していた前記第2の情報処理装置を直前組相手装置とする場合、受信した前記生存確認結果を参照し、生存が確認できなかった前記第2の情報処理装置を前記直前組相手装置と特定する、
ことを特徴とする情報処理システム。
(((2)))
前記プロセッサは、所定の条件に応じて前記要求元装置と新たに組を成す前記第2の情報処理装置を新組相手装置として選定することを特徴とする(((1)))に記載の情報処理システム。
(((3)))
前記プロセッサは、前記直前組相手装置以外の前記第2の情報処理装置を、前記新組相手装置として選定する場合、前記直前組相手装置が保持していた前記データを当該新組相手装置に移行させることを特徴とする(((2)))に記載の情報処理システム。
(((4)))
前記プロセッサは、前記直前組相手装置を、前記新組相手装置として選定することを特徴とする(((2)))に記載の情報処理システム。
(((5)))
前記プロセッサは、生存が確認できなかった旨の前記生存確認結果を複数受信した場合、前記要求元装置の特徴を示す特徴情報を参照して、又は前記要求元装置の管理者に問い合わせることによって、生存が確認できなかった旨の前記生存確認結果を送信した複数の前記第2の情報処理装置の中から前記直前組相手装置を選定することを特徴とする(((1)))から(((4)))のいずれか1つに記載の情報処理システム。
(((6)))
前記プロセッサは、
前記特徴情報を参照する場合、前記要求元装置に要求することにより前記特徴情報を取得し、
取得した前記特徴情報を、生存が確認できなかった旨の前記生存確認結果を送信した複数の前記第2の情報処理装置がそれぞれ保持する組相手特徴情報であって当該第2の情報処理装置と組を成す前記第1の情報処理装置の特徴を示す組相手特徴情報と照合した結果に応じて前記直前組相手装置を選定する、
ことを特徴とする(((5)))に記載の情報処理システム。
(((7)))
前記プロセッサは、
前記管理者に問い合わせる場合、生存が確認できなかった旨の前記生存確認結果を送信した複数の前記第2の情報処理装置それぞれから、当該第2の情報処理装置と組を成す前記第1の情報処理装置の特徴を示す組相手特徴情報を取得し、
取得した複数の前記組相手特徴情報を前記要求元装置の管理者に提示する、
ことを特徴とする(((5)))に記載の情報処理システム。
(((8)))
前記第2の情報処理装置は、クラウド上に形成されることを特徴とする(((1)))から(((7)))のいずれか1つに記載の情報処理システム。
(((9)))
前記第1の情報処理装置と前記第2の情報処理装置はそれぞれ、組を形成していることを証明しうる一対の情報の一方を保持することを特徴とする(((1)))から(((8)))のいずれか1つに記載の情報処理システム。
(((10)))
データを保持する第1の情報処理装置と組を成し、前記データの同期相手となる第2の情報処理装置を管理するコンピュータに、
前記第2の情報処理装置との組が解消された前記第1の情報処理装置からの再組形成要求に応じて、複数の前記第2の情報処理装置に対して、当該第2の情報処理装置と組を成す前記第1の情報処理装置の生存確認を要求する機能、
前記生存確認の要求に応じて前記第2の情報処理装置それぞれから返信されてくる生存確認結果を受信する機能、
前記再組形成要求をした前記第1の情報処理装置を要求元装置と、当該要求元装置と組を成していた前記第2の情報処理装置を直前組相手装置とする場合、受信した前記生存確認結果を参照し、生存が確認できなかった前記第2の情報処理装置を前記直前組相手装置と特定する機能、
を実現させるためのプログラム。
【0097】
(((1)))に記載の発明によれば、第1の情報処理装置が保持するデータの同期相手となる第2の情報処理装置を管理する場合において、第2の情報処理装置との組が解消された第1の情報処理装置からの再組形成要求に応じて、複数の第2の情報処理装置の中から当該第1の情報処理装置と組を成していた第2の情報処理装置を特定することができる。
(((2)))に記載の発明によれば、所定の条件に合致する第2の情報処理装置を新組相手装置として選定することができる。
(((3)))に記載の発明によれば、直前組相手装置が保持していた同期対象のデータを新組相手装置に引き継がせることができる。
(((4)))に記載の発明によれば、同期対象のデータを移行する必要がなくなる。
(((5)))に記載の発明によれば、ただ1つの直前組相手装置に絞り込めるよう処理することができる。
(((6)))に記載の発明によれば、要求元装置と特徴を共通する第1の情報処理装置と組を成す第2の情報処理装置を直前組相手装置として選定することができる。
(((7)))に記載の発明によれば、直前組相手装置を選択させる際に第1の情報処理装置の特徴を管理者に提供することができる。
(((8)))に記載の発明によれば、外部に存在する他の情報処理装置と同期を取ることができる。
(((9)))に記載の発明によれば、データの同期相手を保証することができる。
(((10)))に記載の発明によれば、第1の情報処理装置が保持するデータの同期相手となる第2の情報処理装置を管理する場合において、第2の情報処理装置との組が解消された第1の情報処理装置からの再組形成要求に応じて、複数の第2の情報処理装置の中から当該第1の情報処理装置と組を成していた第2の情報処理装置を特定することができる。
【符号の説明】
【0098】
2 クラウド、4 ネットワーク、6 テナント、10,10a,10b,10c,10d 実デバイス(複合機)、11,21,31 鍵管理部、12,22 同期処理部、13 再組形成要求処理部、14 生存確認応答部、15,25 制御部、16,26 同期データ記憶部、20,20a,20b,20c,20d 仮想デバイス(複合機)、23 生存確認制御部、24 データ移行処理部、30 サーバ、32 同期制御部、33 再組形成要求受信部、34 生存確認制御部、35 仮想デバイス管理部、36 データ移行制御部。