(57)【要約】【課題】クライアント装置にインストールされたエージェントアプリを自動的に削除する情報処理システムを提供する。【解決手段】機器管理サーバ１０３と、機器管理サーバ１０３との通信を制御するエージェントアプリがインストールされた機器管理エージェント１０４とを有する情報処理システムを設ける。機器管理エージェント１０４が、機器管理サーバ１０３に対する通信で認証エラーであった場合に、エージェントアプリのアンインストールチェックの要求を送信する。機器管理サーバ１０３が、アンインストールチェックの要求を送信した機器管理エージェント１０４がエージェントアプリのアンインストール対象として登録されている場合に、削除コードを送信する。そして、機器管理エージェント１０４が、削除コードを受信した場合に、エージェントアプリをアンインストールする。【選択図】図１
2018045423.tif 000002
【特許請求の範囲】
【請求項１】
管理システムと、前記管理システムとの通信を制御するエージェントアプリがインストールされたクライアント装置とを有する情報処理システムであって、
前記クライアント装置は、
前記管理システムに対する通信で認証エラーであった場合に、前記エージェントアプリのアンインストールチェックの要求を送信する送信手段と、
前記管理システムから削除コードを受信した場合に、前記エージェントアプリをアンインストールする制御手段と、を有し、
前記管理システムは、
エージェントＩＤを管理するエージェント管理手段と、
前記アンインストールチェックの要求を送信したクライアント装置が前記エージェントアプリのアンインストール対象として登録されている場合に、前記削除コードを送信する送信手段とを備える
ことを特徴とする情報処理システム。
【請求項２】
前記管理システムが備える前記エージェント管理手段は、前記エージェントＩＤに紐付けて、前記クライアント装置に関する管理情報を管理しており、
前記送信手段は、さらに、前記クライアント装置から受けた通信に含まれるエージェントＩＤが前記管理情報で管理されていない場合に、前記クライアント装置に対して前記削除コードを送信する
ことを特徴とする請求項１に記載の情報処理システム。
【請求項３】
前記管理情報は、前記クライアント装置のステータスを含んでおり、
前記クライアント装置から受けた通信に含まれるエージェントＩＤに対応する前記ステータスが停止待ちを示す場合に、前記管理システムが備える前記送信手段は、前記クライアント装置に対して、前記管理システムへの通信を停止させる停止コードを送信し、前記エージェント管理手段は、前記ステータスを停止中に設定する
ことを特徴とする請求項２に記載の情報処理システム。
【請求項４】
前記クライアント装置から受けた通信に含まれるエージェントＩＤに対応する前記ステータスが再開を示す場合に、前記管理システムが備える前記送信手段は、前記クライアント装置に対して、前記管理システムへの通信を再開させる再開コードを送信し、前記エージェント管理手段は、前記ステータスを稼働中に設定する
ことを特徴とする請求項３に記載の情報処理システム。
【請求項５】
前記再開コードについて、停止中のデータを前記管理システムに送信するか否かを指示する設定がされており、
前記再開コードを受信したクライアント装置は、前記設定にしたがった通信を実行する
ことを特徴とする請求項４に記載の情報処理システム。
【請求項６】
前記管理システムは、
顧客のテナントを一意に識別するテナントＩＤに紐付けて、少なくとも契約情報を含む顧客情報を管理する顧客管理手段と、
前記顧客情報が示す契約期間の終了後に前記管理システムへのアクセスがない場合に、管理者装置に通知する通知手段と、をさらに有し、
前記エージェント管理情報は、さらに、前記テナントＩＤに紐付けられており、
前記エージェント管理手段は、前記管理者装置に前記通知がされた後、前記顧客情報に含まれるテナントＩＤに紐付く前記ステータスを停止待ちに設定する
ことを特徴とする請求項３乃至５のいずれか１項に記載の情報処理システム。
【請求項７】
前記エージェント管理手段は、前記顧客のテナントの削除要求が受け付けられた場合に、前記テナントのテナントＩＤに紐付く前記管理情報に対応するクライアント装置をエージェントアプリのアンインストール対象として削除対象情報に登録する
ことを特徴とする請求項６に記載の情報処理システム。
【請求項８】
前記管理システムが有する送信手段は、前記アンインストールチェックの要求を送信したクライアント装置が前記削除対象情報に登録されている場合に、前記削除コードを送信する
ことを特徴とする請求項７に記載の情報処理システム。
【請求項９】
前記クライアント装置が備える前記送信手段は、前記エージェントアプリのアンインストールの指示がされた場合に、前記エージェントアプリのアンインストールの要求を送信し、
前記制御手段は、前記管理システムから前記クライアント装置に関する情報を削除したことを示す情報を受信した場合に、前記エージェントアプリをアンインストールし、
前記管理システムが備える前記管理手段は、前記エージェントアプリのアンインストールの要求に応じて、前記クライアント装置に関する情報を前記削除対象情報から削除し、
前記管理システムが備える前記送信手段は、前記クライアント装置に関する情報を削除したことを示す情報を前記クライアント装置に対して送信する
ことを特徴とする請求項７または請求項８に記載の情報処理システム。
【請求項１０】
管理システムと、前記管理システムとの通信を制御するエージェントアプリがインストールされたクライアント装置とを有する情報処理システムにおける制御方法であって、
前記クライアント装置が、前記管理システムに対する通信で認証エラーであった場合に、前記エージェントアプリのアンインストールチェックの要求を送信する第１の送信工程と、
前記管理システムが、エージェントＩＤに基づいて、前記削除コードを送信すると判断した場合に、前記クライアント装置に対して、前記削除コードを送信する第２の送信工程と、
前記クライアント装置が、前記管理システムから削除コードを受信した場合に、前記エージェントアプリをアンインストールする制御工程と、を有し、
前記第２の送信工程では、前記管理システムは、前記アンインストールチェックの要求を送信したクライアント装置が前記エージェントアプリのアンインストール対象として登録されている場合に、前記削除コードを送信すると判断する
ことを特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システムおよび制御方法に関する。
【背景技術】
【０００２】
周辺機器、プリンタなどの機器を登録して管理し、サービスを提供する機器管理サービスが提案されている。機器管理サービスは、サービスプロバイダ（機器管理サービス業者）が、複数の顧客（個人や企業）の機器を管理するために利用する形態を含む。このような機器管理サービスでは、顧客ごとにデータ領域を確保し、顧客ごとに機器を登録し管理する。
【０００３】
機器管理サービスのサーバがインターネットの顧客環境上に配置されるシステムが提案されている。このシステムでは、エージェントアプリがインストールされたクライアント装置である機器管理エージェントを顧客ネットワーク環境に配置したり、機器内に機器管理エージェント機能を実装し、機器管理サーバと機器の間を中継させる。特許文献１は、複数の加入者のリソースを管理するリソースを単一のサーバに集中させることによって、各々の加入者におけるリソースの冗長な管理を低減する方法を開示している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】米国特許第６５２９７８４号明細書
【発明の概要】
【発明が解決しようとする課題】
【０００５】
機器管理サービスの利用形態として、課金による機器管理を行うサービス契約と、サービスを無料で提供するアセスメント契約がある。アセスメント契約では、見込み顧客のクライアント装置にエージェントアプリをインストールさせてもらい、一定期間機器の情報を収集し、収集した情報をレポート化してサービスの契約終結を進める。しかし、見込み顧客どまりで、契約終結できない顧客も多いので、課金によるサービス契約とは違い、エージェントアプリの停止、削除が忘れられる場合がある。この場合には、放置されたエージェントアプリが無駄に機器管理サーバに通信し続ける。
本発明は、クライアント装置にインストールされたエージェントアプリを自動的に削除する情報処理システムの提供を目的とする。
【課題を解決するための手段】
【０００６】
本発明の一実施形態の情報処理システムは、管理システムと、前記管理システムとの通信を制御するエージェントアプリがインストールされたクライアント装置とを有する情報処理システムである。前記クライアント装置は、前記管理システムに対する通信で認証エラーであった場合に、前記エージェントアプリのアンインストールチェックの要求を送信する送信手段と、前記管理システムから削除コードを受信した場合に、前記エージェントアプリをアンインストールする制御手段と、を有する。前記管理システムは、エージェントＩＤを管理するエージェント管理手段と、前記アンインストールチェックの要求を送信したクライアント装置が前記エージェントアプリのアンインストール対象として登録されている場合に、前記削除コードを送信する送信手段とを備える。
【発明の効果】
【０００７】
本発明の情報処理システムによれば、クライアント装置にインストールされたエージェントアプリを自動的に削除することが可能となる。
【図面の簡単な説明】
【０００８】
【図１】本実施形態の情報処理システムの全体構成を示す図である。
【図２】機器管理サーバのハードウェア構成の一例を示す図である。
【図３】機器管理サーバのソフトウェア構成の一例を示すブロック図である。
【図４】周辺機器のハードウェア構成を示す図である。
【図５】周辺機器のソフトウェア構成の一例を示す図である。
【図６】機器管理エージェントと管理端末とのハードウェア構成である。
【図７】管理端末のソフトウェア構成の一例を示す図である。
【図８】機器管理エージェントのソフトウェア構成の一例を示す図である。
【図９】顧客管理テーブルが格納するデータの一例を示す図である。
【図１０】機器管理テーブルが格納するデータの一例を示す図である。
【図１１】エージェント管理テーブルが格納するデータの一例を示す図である。
【図１２】ジョブ履歴情報テーブルが格納するデータの一例を示す図である。
【図１３】エージェント削除テーブルが格納するデータの一例を示す図である。
【図１４】機器管理エージェントの停止処理の例を説明する図である。
【図１５】テナントを削除する動作処理を説明する図である。
【図１６】エージェントを削除する動作処理を説明する図である。
【図１７】エージェントの動作を再開する動作処理を説明する図である。
【図１８】エージェントの通信を受信した際の動作処理を説明する図である。
【図１９】機器管理サーバへの通信処理の例を説明する図である。
【図２０】アンインストールチェック受信時の動作処理を説明する図である。
【図２１】ユーザの操作にしたがうアンインストール処理を説明する図である。
【図２２】アンインストール実行リクエストの受信時の処理を説明する図である。
【発明を実施するための形態】
【０００９】
（実施例１）
図１は、本実施形態の情報処理システムの全体構成を示す図である。
図１に示す情報処理システムは、管理端末１０１と、周辺機器１０２と、機器管理サーバ１０３と、機器管理エージェント１０４と、外部システム１０８とを備える。ネットワーク１０５は、インターネット等の既知の技術によるネットワークである。管理端末１０１は、サービスプロバイダユーザが操作するパーソナルコンピュータなどである。管理端末１０１は、ネットワーク１０５に接続される。管理端末１０１とネットワーク１０５の間にも顧客ネットワーク１０７とファイアウォール１０６が存在する場合がある。
【００１０】
機器管理サーバ１０３は、複数の顧客やテナント毎に区別して周辺機器１０２を管理する。機器管理サーバ１０３は、ネットワーク１０５上で公開されており、管理端末１０１や周辺機器１０２、機器管理エージェント１０４、外部システム１０８から通信可能である。図１では、機器管理サーバ１０３は１台のみ図示されているが、インターネット上の管理サーバやストレージサーバなどを有する管理システムである機器管理サーバシステムとして機能する。
【００１１】
周辺機器１０２は、図示しないホストコンピュータや機器管理エージェント１０４と通信可能なネットワークデバイスである。周辺機器１０２は、例えば、ホストコンピュータから印刷データを顧客ネットワーク１０７を介して受け取り、電子写真技術やインクジェット技術等の既知の印刷技術を利用して用紙に印刷を行う複合機やプリンタである。また、周辺機器１０２は、例えば、スキャナを介して紙原稿を読み取り、コピーを行ったり、画像データに変換してＥｍａｉｌ等で送信したりする機能を有する複合機であってもよい。
【００１２】
機器管理エージェント１０４は、エージェントアプリがインストールされたクライアント装置である。エージェントアプリは、機器管理サーバ１０３との通信を制御する。また、エージェントアプリは、機器管理サーバ１０３に代わって周辺機器１０２と通信を行い、周辺機器１０２からジョブログなどの情報を収集し、周辺機器１０２を制御する。機器管理エージェント１０４は、１または複数の周辺機器１０２を含む拠点ネットワークに設置されている。周辺機器１０２と機器管理エージェント１０４は、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）などの顧客ネットワーク１０７に接続されている。そして、周辺機器１０２と機器管理エージェント１０４は、ファイアウォール１０６を介してネットワーク１０５と接続されている。このため、ネットワーク１０５に接続された管理端末１０１や機器管理サーバ１０３から発信される通信は、ファイアウォール１０６により拒絶される。したがって、周辺機器１０２や機器管理エージェント１０４への通信を、管理端末１０１や機器管理サーバ１０３から発信して行うことはできない。
【００１３】
本実施形態のネットワークシステムでは、サービスプロバイダユーザが、管理端末１０１を操作し、機器管理サーバ１０３にアクセスし、顧客ごとに管理された周辺機器１０２を登録し管理する。そして、管理端末１０１が、顧客ごとに管理された周辺機器１０２の情報を参照する。また、管理端末１０１は、周辺機器１０２へ制御コマンド実行を指示する。機器管理エージェント１０４は、定期的に機器管理サーバ１０３に通信を行い、制御コマンド実行を指示されていないかをチェックし、指示があれば受信する。機器管理エージェント１０４は、制御コマンドを実行すると、ＳＮＭＰ（Ｓｉｍｐｌｅ  Ｎｅｔｗｏｒｋ  Ｍａｇａｇｅｍｅｎｔ  Ｐｒｏｔｏｃｏｌ）などを使用して、周辺機器１０２の情報を収集したり、周辺機器１０２の動作設定を変更したりする。
【００１４】
図２は、機器管理サーバのハードウェア構成の一例を示す図である。
図２には、単体の機器としての機器管理サーバが示されるが、機器管理サーバは、クラウド上で実現されてもよい。すなわち、仮想マシン上でアプリケーションを動作することで、機器管理サーバを実現してもよい。
【００１５】
機器管理サーバ１０３は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２０１、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）２０２、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）２０３を備える。また、機器管理サーバ１０３は、ＤＫＣ（Ｄｉｓｋ  Ｃｏｎｔｒｏｌｌｅｒ）２０５、ＮＩＣ（Ｎｅｔｗｏｒｋ  Ｉｎｔｅｒｆａｃｅ  Ｃａｒｄ）２０６、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）２０７を備える。
【００１６】
ＣＰＵ２０１は、ＲＯＭ２０２または大規模記憶装置であるＨＤＤ２０７に記憶されたソフトウェアを実行することにより各実施例で説明する各処理を実現する。ＨＤＤ２０７には、後述するすべての説明で動作主体となるソフトウェアプログラムが格納される。ＣＰＵ２０１は、システムバス２０４に接続される各デバイスを総括的に制御する。ＲＡＭ２０３は、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。ＤＫＣ２０５は、ＨＤＤ２０７を制御する。ＮＩＣ２０６は、ネットワーク１０５を介して、他の情報処理装置と双方向にデータをやり取りする。ＮＩＣ２０６とネットワーク１０５の間に図示しないファイアウォールを設置してもよい。
【００１７】
図３は、機器管理サーバのソフトウェア構成の一例を示すブロック図である。
機器管理サーバ１０３は、Ｗｅｂサーバ部３０１、デバイス管理部３０２、データベース３０３、テナント・ユーザ認証部３０４、メール通知部３１５を備える。Ｗｅｂサーバ部３０１は、管理端末１０１、周辺機器１０２、外部システム１０８からＮＩＣ２０６およびネットワーク１０５を介して、ＨＴＴＰまたはＨＴＴＰＳリクエストを受信し、応答を返すことによるサービスを提供する。
【００１８】
Ｗｅｂサーバ部３０１は、ＷｅｂＵＩ部３０５とＷｅｂサービス部３０６とを備える。ＷｅｂＵＩ部３０５は、管理端末１０１のＷｅｂブラウザ５０１からＨＴＴＰリクエストを受信し、テナント・ユーザ認証部３０４と連携する。ＷｅｂＵＩ部３０５は、テナント・ユーザ認証部３０４がユーザ認証を行い認証が成功した場合に、Ｗｅｂブラウザ５０１にＨＴＭＬデータを送信する。Ｗｅｂサービス部３０６は、機器管理エージェント１０４や外部システム１０８からのＳＯＡＰやＲＥＳＴなどのＷｅｂサービスリクエストを受信し、ＸＭＬデータなどの応答を返信する。
【００１９】
テナント・ユーザ認証部３０４は、Ｗｅｂブラウザ５０１からのＨＴＴＰリクエストに認証トークンが設定されていない場合、未認証ユーザからのアクセスを判定して、ログイン画面のＨＴＭＬを返却する。Ｗｅｂブラウザ５０１はログイン画面を表示し、ユーザ操作によりユーザＩＤ、パスワードなどの認証情報が入力されると、これらの認証情報を機器管理サーバ１０３に送信する。テナント・ユーザ認証部３０４は、認証情報を受信し、ユーザＩＤ、パスワードの組み合わせが正しければ認証成功とし、認証トークンを発行してクッキーなどに設定し、リクエストとされた画面へリダイレクトを指示する。リダイレクトされると、ＷｅｂＵＩ部３０５は、リクエストされた画面のＨＴＭＬを生成してＷｅｂブラウザ５０１へ返信する。
【００２０】
デバイス管理部３０２は、顧客管理部３０６、機器管理部３０７、エージェント管理部３０８、ジョブ履歴収集部３０９を備える。顧客管理部３０６は、機器管理サーバ１０３に登録されている顧客を管理する。また、顧客管理部３０６は、顧客の登録・削除処理を制御する。アセスメント契約を行う顧客の場合は、顧客管理部３０６は、顧客を登録する際に、アセスメント契約の期限を設定する。
【００２１】
機器管理部３０７は、顧客ごとに登録されている周辺機器１０２の情報を管理する。エージェント管理部３０８は、機器管理サーバ１０３への機器管理エージェント１０４の登録・停止・削除処理を制御する。また、Ｗｅｂサービス部３０６が機器管理エージェント１０４からのリクエストを受信した際に、機器管理エージェント１０４の認証処理を行う。
【００２２】
ジョブ履歴収集部３０９は、Ｗｅｂサービス部３０６を介して、機器管理エージェント１０４からジョブ履歴情報を受信する。ジョブ履歴収集部３０９は、ジョブ履歴情報を受信すると、ＨＴＴＰリクエストのＨＴＴＰヘッダ部に付加されたテナントＩＤ、エージェントＩＤ、署名情報を取得し、エージェント管理部３０８に渡す。エージェント管理部３０８は、取得したテナントＩＤ、エージェントＩＤに関連付けられた認証キー１１０３を、図１１を用いて後述するエージェント管理テーブル３１２から取得し、ＨＴＴＰメッセージの署名情報を作成する。作成した署名情報と、ＨＴＴＰヘッダより取得した署名情報が一致した場合には、エージェント管理部３０８は、正しいエージェントからのリクエストとして認証する。その後、エージェント管理部３０８は、ジョブ履歴収集部３０９へＨＴＴＰメッセージを転送する。ジョブ履歴収集部３０９は、転送されたＨＴＴＰメッセージからジョブ履歴情報を取得し、ジョブ履歴情報テーブル３１３に保管する。
【００２３】
メール通知部３１５は、顧客管理テーブル３１０で管理されている管理者メールアドレス９０７に、スケジュールにあわせてメールを送信する。データベース３０３は、顧客管理テーブル３１０、機器管理テーブル３１１、エージェント管理テーブル３１２、ジョブ履歴情報テーブル３１３、エージェント削除テーブル３１４を備える。各テーブルが管理する情報は後述する。
【００２４】
図４は、周辺機器のハードウェア構成を示す図である。
図４では、周辺機器１０２の例として、印刷機能やスキャン機能、ネットワーク通信機能などを備える複合機を想定する。ＣＰＵ４０１は、ＲＯＭ４０２または大規模記憶装置であるＨＤＤ４１３に記憶されたソフトウェアを実行し、システムバス４１０に接続される各デバイスを総括的に制御する。ＲＡＭ４０２は、ＣＰＵ４０１の主メモリ、ワークエリア等として機能する。
【００２５】
パネルコントローラ（ＰａｎｅｌＣ）４０５は、周辺機器１０２に備えられたオペレーションパネル（Ｐａｎｅｌ）４１１からの指示入力を制御する。ディスプレイコントローラ（ＤＩＳＰＣ）４０６は、たとえば液晶ディスプレイ等で構成される表示モジュール（ＤＩＳＰＬＡＹ）４１２の表示を制御する。ＤＫＣ４０７は、大容量記憶デバイスであるＨＤＤ４１３を制御する。ＮＩＣ４０４は、ネットワーク１０５を介して、他の情報処理装置とデータをやり取りする。スキャナコントローラ（ＳＣＡＮＣ）４０８は、周辺機器１０２に備えられた光学式スキャナ４１４を制御し、紙原稿の読み取りを行う。プリンタコントローラ（ＰＲＮＣ）４０９は、周辺機器１０２に備えられたプリンタ４１５を制御し、電子写真技術やインクジェット技術等の既知の印刷技術を利用して用紙に印刷を行う。
【００２６】
図５は、周辺機器のソフトウェア構成の一例を示す図である。
周辺機器１０２は、インタフェース部５０５、ＵＩ制御部５０１、機器情報管理部５０２、ジョブ履歴管理部５０３、ジョブ制御部５０４を備える。インタフェース部５０５は、ネットワーク１０５と接続され、図示しないホストコンピュータから印刷ジョブを受信する。また、インタフェース部５０５は、機器管理エージェント１０４と通信を行う。
【００２７】
ＵＩ制御部５０１は、ディスプレイコントローラ（ＤＩＳＰＣ）４０６を介して、表示モジュール４１２を制御し、コピー指示を受け付けるための画面を表示する。また、ＵＩ制御部５０１は、パネルコントローラ４０５を介して、オペレーションパネル４１１を制御し、ユーザの周辺機器１０２へのコピー指示を受け付け、コピージョブを生成する。
【００２８】
ジョブ制御部５０４は、インタフェース部５０５が受信した印刷ジョブや、ＵＩ制御部５０１で生成されたコピージョブを受信し、各ジョブを実行する。ジョブ制御部５０４は、ジョブの内容に応じてプリンタコントローラ４０９やスキャナコントローラ４０８を制御し、ジョブを実行する。ジョブ制御部５０４は、ジョブの実行を開始または終了すると、ジョブ履歴管理部５０３にジョブ内容や実行結果を履歴として記憶する。機器情報管理部５０２は、周辺機器１０２の設定情報や構成情報を管理し、他の構成モジュールからの情報取得要求に応じて、指定された情報を応答する。機器情報管理部５０２で管理される情報として、シリアルナンバーがある。
【００２９】
図６は、機器管理エージェントと管理端末とのハードウェア構成の一例を示す図である。
ＣＰＵ６０１は、ＲＯＭ６０２または大規模記憶装置であるＨＤＤ６０７に記憶されたソフトウェアを実行することにより各実施例で説明する各処理を実現する。ＣＰＵ６０１は、システムバス６０４に接続される各デバイスを総括的に制御する。ＲＡＭ６０３は、ＣＰＵ６０１の主メモリ、ワークエリア等として機能する。入力装置（ＩＮＰＵＴ）６０５は、キーボード、マウス、タッチパネルもしくはボタンなどであり、ユーザ操作の入力手段を提供する。表示モジュール（ＤＩＳＰＬＡＹ）６０６は、液晶ディスプレイ等で構成される表示モジュールである。ネットワークインタフェースカード（ＮＩＣ）６０８は、ネットワーク１０５を介してほかのノードと双方向にデータをやり取りする。
【００３０】
図７は、管理端末のソフトウェア構成の一例を示す図である。
管理端末１０１は、Ｗｅｂブラウザ７０１と、ＨＴＴＰ通信部７０２とを備える。Ｗｅｂブラウザ７０１は、ＨＴＴＰ通信部７０２へＵＲＬを指定して、情報取得要求を送信し、ＨＴＭＬデータを取得する。Ｗｅｂブラウザ７０１は、ＨＴＴＰ通信部７０２を使用して取得したＨＴＭＬデータを解釈し、表示モジュール６０６へ画面描画を行う。また、Ｗｅｂブラウザ７０１は、Ｗｅｂブラウザ７０１は表示した画面内のコントロールに対するユーザ操作を入力装置６０５から受け付け、操作内容に応じてＨＴＴＰ通信部７０２へ要求を送信する。
【００３１】
ＨＴＴＰ通信部７０２は、Ｗｅｂブラウザ７０１からの通信要求を受けて、画像処理装置等とＮＩＣ６０８とを介して、ＨＴＴＰまたはＨＴＴＰＳプロトコルを用いてＷｅｂサーバと通信し、Ｗｅｂページの要求、Ｗｅｂページデータの受信等を行う。サービスプロバイダユーザは、管理端末１０１のＷｅｂブラウザ７０１において、機器管理サーバ１０３のＵＲＬを指定し、Ｗｅｂサーバ部３０１にアクセスすることで、機器管理サーバ１０３の機能を使用することができる。
【００３２】
図８は、機器管理エージェントのソフトウェア構成の一例を示す図である。
機器管理エージェント１０４は、エージェント制御部８０１、ＵＩ制御部８０３、インタフェース部８０４、機器管理部８０２を備える。インタフェース部８０４は、ＮＩＣ６０８を使用し、ネットワーク１０５を介して、周辺機器１０２や機器管理サーバ１０３と通信を行う。ＵＩ制御部８０３は、入力装置６０５や表示モジュール６０６を制御して、画面表示を行い、表示した画面内のコントロールに対するユーザ操作を入力装置６０５から受け付ける。そして、ＵＩ制御部８０３は、操作内容に応じて、エージェント制御部８０１や機器管理部８０２に対してユーザ指示を伝達する。また、ＵＩ制御部８０３は、処理結果を表示モジュール６０６に表示することで、サービスプロバイダユーザに結果を表示する。
【００３３】
エージェント制御部８０１は、機器管理サーバ１０３へのエージェント１０４の登録・削除を制御する。エージェント制御部８０１は、認証キー保存部８０５と削除処理部８０６を備える。認証キー保存部８０５は、機器管理サーバ１０３と通信する際に使用する認証キーおよび、削除用のテナントＩＤを保存する。削除処理部８０６は、機器管理エージェント１０４のアンインストールを行う。
【００３４】
ＵＩ制御部８０３は、ユーザにより機器管理サーバ１０３へのエージェント登録・アンインストール指示が行われたことを検知し、エージェント制御部８０１へ通知する。機器管理部８０２は、インタフェース部８０４を介して、機器管理サーバ１０３から、該当エージェントが管理すべき周辺機器１０２の一覧を取得する。機器情報管理部８０７は、取得した管理対象の周辺機器１０２から、インタフェース部８０４を介して情報を収集し、機器管理サーバ１０３に送信する。ジョブ履歴管理部８０８は、周辺機器１０２のジョブ履歴管理部５０３で管理されるジョブ履歴情報を取得して、機器管理サーバ１０３に送信する。
【００３５】
図９は、機器管理サーバが備える顧客管理テーブルが格納するデータの一例を示す図である。
顧客管理テーブル３１０は、機器管理サーバ１０３に登録されている顧客を管理するためのテーブルである。顧客管理テーブル３１０には、少なくとも契約情報を含む顧客情報が格納されている。テナントＩＤ９０１は、システムで管理する顧客のテナントを識別するための一意のＩＤである。顧客名９０２は、管理端末１０１のＷｅｂブラウザ５０１などにおいて顧客を表示するときに使用する顧客の名前である。アセスメント終了日時９０３は、アセスメント契約を結んだ場合の、アセスメント期間の終了日時を表す。
【００３６】
テナント作成日時９０４は、システムに顧客を作成した日時である。顧客は、管理端末１０１のＷｅｂブラウザ５０１でサービスプロバイダユーザが作成するか、Ｗｅｂサービス部３０６で外部システム１０８からのＷｅｂサービスリクエストを受信して作成することができる。
【００３７】
最終操作日時９０５は、該当顧客のデータにアクセスされた最終日時である。最終操作日時９０５には、例えば、管理端末１０１のＷｅｂブラウザ５０１で、ログイン画面からユーザ操作によるログインが成功した日時や、外部システム１０８からのＷｅｂサービスリクエストをＷｅｂサービス部３０６で受信した日時が設定される。
【００３８】
管理者名９０６は、管理端末１０１のＷｅｂブラウザ５０１などにおいて当該顧客のＩＴ管理者を表示するときに使用するＩＴ管理者の名前である。管理者メールアドレス９０７は、機器管理エージェント１０４を自動的に停止する際にメールするＩＴ管理者のメールアドレスである。
【００３９】
図１０は、機器管理サーバが備える機器管理テーブルが格納するデータの一例を示す図である。
機器管理テーブル３１１は、機器管理サーバ１０３において顧客ごとに登録されている周辺機器１０２を管理するためのテーブルである。テナントＩＤ１００１は、テナント（顧客）を識別するためのＩＤであり、顧客管理テーブル３１０で管理されているテナントＩＤ９０１と関連付けられている。エージェントＩＤ１００２は、機器管理エージェント１０４を識別するための一意のＩＤである。機器ＩＤ１００３は、周辺機器１０２を識別するための一意のＩＤである。図１０に示す機器管理テーブル３１１は、エージェントＩＤ１００２で識別される機器管理エージェント１０４が、機器ＩＤ１００３で識別される周辺機器１０２を管理することを示している。
【００４０】
ＩＰアドレス１００４は、周辺機器１０２に通信を行うためのネットワークアドレスを示す。機器管理エージェント１０４が周辺機器１０２に通信を行う際にＩＰアドレス１００４が示すネットワークアドレスを使用する。なお、機器管理サーバ１０３が、顧客ごとに機器管理テーブル３１１を分割して管理する場合、顧客ＩＤごとに構造が同じ別テーブルにて管理する。
【００４１】
図１１は、機器管理サーバが備えるエージェント管理テーブルが格納するデータの一例を示す図である。
エージェント管理テーブル３１２は、機器管理サーバ１０３において顧客ごとに登録されているエージェントを管理するためのテーブルである。エージェント管理テーブル３１２には、機器管理エージェント１０４に関するエージェント管理情報が格納されている。エージェント管理テーブル３１２は、エージェント装置毎に異なる認証情報をテナント毎に関連付けて管理している。テナントＩＤ１１０１は、テナント（顧客）を識別するためのＩＤであり、顧客管理テーブル３１０で管理されているテナントＩＤ９０１に紐付けられている。エージェントＩＤ１１０２は、機器管理エージェント１０４を識別するための一意のＩＤである。認証キー１１０３は、機器管理サーバ１０３で管理されているエージェントを認証するための署名用の鍵である。
【００４２】
ステータス１１０４は、機器管理エージェント１０４のステータスを表す。例えば、ステータス１１０４には、停止待ち、停止中、稼働中、再開（停止中のデータ送信する）、再開（停止中のデータ送信しない）のいずれかが設定される。機器管理サーバ１０３で、機器管理エージェント１０４の通信を停止させる場合は停止待ちになり、機器管理エージェント１０４からのＨＴＴＰリクエストの応答として停止コードを返却すると停止中に更新される。
【００４３】
機器管理エージェント１０４は、停止コードを受信した場合、機器管理サーバ１０３との一部通信を停止する。例えば、機器管理エージェント１０４は、機器管理サーバ１０３へジョブ履歴情報の送信を停止する。停止コードは、あくまで機器管理サーバ１０３と機器管理エージェント１０４との通信についてであり、機器管理エージェント１０４と周辺機器との通信には影響しない。
【００４４】
機器管理サーバ１０３が、機器管理エージェント１０４との通信を再開させる場合には、ステータス１１０４には、再開が設定される。機器管理エージェント１０４からのＨＴＴＰリクエストの応答として再開コードが返却された場合は、ステータス１１０４は、稼働中に更新される。再開時、機器管理エージェント１０４が停止中に周辺機器１０２から収集したジョブ履歴情報を機器管理サーバ１０３に送信するか、再開後のジョブ履歴情報のみ管理サーバに送信するかを選択することができる。
【００４５】
サービスプロバイダユーザが、管理端末１０１のＷｅｂブラウザからのアクセスに応じてＷｅｂＵＩ部３０５で表示した画面を経由して、機器管理エージェント１０４の通信を再開させてもよい。また、Ｗｅｂサービス部３０６が、外部システムからのＨＴＴＰリクエストによって、機器管理エージェント１０４の通信を再開させてもよい。停止日時１１０５は、機器管理エージェント１０４と機器管理サーバ１０３との一部通信が停止した日時である。
【００４６】
図１２は、機器管理サーバが備えるジョブ履歴情報テーブルが格納するデータの一例を示す図である。
ジョブ履歴情報テーブル３１３は、周辺機器１０２で実行されるジョブの履歴情報を管理するためのテーブルである。テナントＩＤ１２０１は、テナント（顧客）を識別するためのＩＤである。機器ＩＤ１２０２は、周辺機器１０２を識別するためのＩＤである。ジョブタイプ１２０３は、周辺機器１０２のジョブの種類を示す。ジョブタイプ１２０３には、例えば、ホストコンピュータからの印刷であるプリントや、コピー、スキャン、ファックス、周辺機器１０２内の保存された文書を印刷するボックスプリント等が設定される。
【００４７】
開始時間１２０４は、該当ジョブの処理が開始された時間を示す。終了時間１２０５は、該当ジョブの処理が終了された時間を示す。ページ数１２０６は、該当ジョブにより処理されたページ数を示す。文書名１２０７は、該当ジョブの印刷アプリケーションによりジョブに設定される文書名を示す。なお、周辺機器１０２のジョブ制御部５０４に保持されるジョブ履歴情報テーブル３１２は、図１２に示すテーブル構造からテナントＩＤ１２０１、機器ＩＤ１２０２を除いた構造である。機器管理エージェント１０４のジョブ履歴管理部８０８に保持されるジョブ履歴情報テーブル３１２は、図１２に示すテーブル構造からテナントＩＤ１２０１を除いた構造である。
【００４８】
図１３は、機器管理サーバが備えるエージェント削除テーブルが格納するデータの一例を示す図である。
エージェント削除テーブル３１４は、エージェントアプリのアンインストール対象となる機器管理エージェント１０４を管理するためのテーブルである。エージェント削除テーブル３１４には、アンインストール対象となる機器管理エージェント１０４に関する情報である削除対象情報が格納される。テナントＩＤ１３０１は、テナント（顧客）を識別するためのＩＤである。エージェントＩＤ１３０２は、機器管理エージェント１０４を識別するための一意のＩＤである。認証キー１３０３は、機器管理サーバ１０３で管理されているエージェントを認証するための署名用の鍵である。テナント削除日時１３０４は、機器管理サーバ１０３で管理されているテナントを削除した日時である。
【００４９】
ＷｅｂＵＩ部３０５がサービスプロバイダユーザからの削除指示を管理端末１０１のＷｅｂブラウザ７０１から取得するか、Ｗｅｂサービス部３０６で外部システムからのＷｅｂサービスリクエストを受信することで、テナント（顧客）の削除が可能となる。テナントが削除されると、機器管理サーバ３０３が、テナントＩＤ１１０１および当該テナントに紐づく機器管理エージェント１０４のエージェントＩＤ１１０２、認証キー１１０３と、テナント削除した日時をエージェント削除テーブル３１４に格納する。そして、機器管理サーバ３０３が、当該テナントに紐づく各テーブルのデータを削除する。
【００５０】
図１４は、機器管理サーバによる機器管理エージェントの停止処理の例を説明するフローチャートである。
図１４に示すフローチャートの各ステップ処理は、機器管理サーバ１０３に設けられたＣＰＵ２０１が、ＲＯＭ２０２、ＨＤＤ２０７等の不揮発性記憶手段に記憶された制御プログラムを読み込み実行することによって実現される。本フローチャートでは、本発明に関わる処理のみを説明し、その他の処理については本発明の本質とは異なるので、説明を省略する。
【００５１】
ステップＳ１４０１において、顧客管理部３０６が、アセスメント終了日時９０３から一定期間経過したかどうかを確認する。アセスメント終了日時９０３から一定期間経過した場合は、処理がステップＳ１４０２に進む。続いて、ステップＳ１４０２において、顧客管理部３０６が、最終操作日時９０５がアセスメント終了日時９０３以前であるかどうか確認する。最終操作日時９０５がアセスメント終了日時９０３以前であるということは、アセスメント終了後は使用していないテナントということを意味する。したがって、アセスメント終了日時９０３以前である場合は、処理がステップＳ１４０３に進む。
【００５２】
ステップＳ１４０３において、メール通知部３１５が、該当テナントの管理者メールアドレス９０７に、該当テナントの機器管理エージェント１０４の動作を停止することをメール通知する。これにより、顧客情報が示す契約期間の終了後に機器管理サーバ１０３へのアクセスがない場合に、管理者装置に通知することができる。
【００５３】
ステップＳ１４０４において、エージェント管理部３０８が、ステータス１１０４を停止待ちにする。そして、ステップＳ１４０５において、エージェント管理部３０８が、停止日時１１０５を入力する。
【００５４】
図１５は、機器管理サーバがテナントを削除する動作処理を説明するフローチャートである。
図１５に示すフローチャートの各ステップ処理は、機器管理サーバ１０３に設けられたＣＰＵ２０１がＲＯＭ２０２、ＨＤＤ２０７等の不揮発性記憶手段に記憶された制御プログラムを読み込み、実行することにより実現される。本フローチャートでは、発明にかかわる処理のみを説明し、その他の処理については、本発明の本質とは異なるので、説明を省略する。
【００５５】
ステップＳ１５０１において、ＷｅｂＵＩ部３０５が、管理端末１０１のＷｅｂブラウザ５０１に顧客管理メニュー画面を表示する。続いて、ステップＳ１５０２において、Ｗｅｂブラウザ５０１が、サービスプロバイダユーザの操作にしたがって、テナント削除を選択する。この選択により、テナントの削除要求が受け付けられる。
【００５６】
次に、ステップＳ１５０３において、顧客管理部３０６が、ステップＳ１５０２で選択したテナント削除操作を受け付け、エージェント削除テーブル３１４に、選択された削除対象のテナントＩＤに紐づくエージェント情報を追加する。具体的には、顧客管理部３０６は、エージェント管理テーブル３１２から削除対象のテナントＩＤでエージェント情報を検索し、削除対象のテナントＩＤに紐づくエージェントＩＤ１１０２、認証キー１１０３をすべて追加する。１つのテナントＩＤに複数のエージェントＩＤが紐づいている場合は、顧客管理部３０６は、複数のエージェント情報をエージェント削除テーブル３１４に追加する。また、顧客管理部３０６は、テナント削除を受け付けた日時を追加する。
【００５７】
次に、ステップＳ１５０４において、顧客管理部３０６が、ジョブ履歴情報テーブル３１２から削除対象のテナントＩＤに紐づくジョブ履歴情報を削除する。続いて、ステップＳ１５０５において、顧客管理部３０６が、エージェント管理テーブル３１２から削除対象のテナントＩＤに紐づくエージェント情報を削除する。
【００５８】
次に、ステップＳ１５０６において、顧客管理部３０６が、機器管理テーブル３１１から削除対象のテナントＩＤに紐づく機器管理情報を削除する。続いて、ステップＳ１５０７において、顧客管理部３０６が、顧客管理テーブル３１０から削除対象のテナントＩＤに紐づく顧客情報を削除する。本フローチャートでは、管理端末１０１からサービスプロバイダユーザの操作によってテナントを削除する例を説明したが、外部システムからＨＴＴＰリクエストによってテナントの削除が選択されてもよい。
【００５９】
図１６は、機器管理サーバがエージェントを削除する際の動作処理の例を説明するフローチャートである。
図１６に示すフローチャートの各ステップ処理は、機器管理サーバ１０３に設けられたＣＰＵ２０１が、ＲＯＭ２０２、ＨＤＤ２０７等の不揮発性記憶手段に記憶された制御プログラムを読み込み実行することによって、実現される。本フローチャートでは、発明にかかわる処理のみを説明し、その他の処理については、本発明の本質とは異なるので、説明を省略する。
【００６０】
ステップＳ１６０１において、ＷｅｂＵＩ部３０５が、管理端末１０１のＷｅｂブラウザ５０１にエージェント管理メニュー画面を表示する。続いて、ステップＳ１６０２において、Ｗｅｂブラウザ５０１が、サービスプロバイダユーザの操作にしたがって、エージェント削除を選択する。
【００６１】
次に、ステップＳ１６０３において、顧客管理部３０６が、エージェント管理テーブル３１２から削除対象のエージェントＩＤに紐づくエージェント情報を削除する。なお、本フローチャートでは、管理端末１０１からサービスプロバイダユーザの操作によってエージェントを削除する例について説明したが、外部システム１０８からＨＴＴＰリクエストによってエージェント削除が選択されてもよい。
【００６２】
図１７は、機器管理サーバがエージェントの動作を再開する際の動作処理の例を説明するフローチャートである。
図１７に示すフローチャートの各ステップ処理は、機器管理サーバ１０３に設けられたＣＰＵ２０１が、ＲＯＭ２０２、ＨＤＤ２０７等の不揮発性記憶手段に記憶された制御プログラムを読み込み実行することによって、実現される。本フローチャートでは、発明にかかわる処理のみを説明し、その他の処理については、本発明の本質とは異なるので、説明を省略する。
【００６３】
ステップＳ１７０１において、ＷｅｂＵＩ部３０５が、管理端末１０１のＷｅｂブラウザ５０１にエージェント管理メニュー画面を表示する。続いて、ステップＳ１７０２において、Ｗｅｂブラウザ５０１が、サービスプロバイダユーザの操作にしたがって、エージェントの稼動再開を選択する。ユーザは、エージェントの稼動再開を選択する際に、さらに、「停止中のデータ送信する」設定または「停止中のデータ送信しない」設定を選択することができる。「停止中のデータ送信する」設定は、機器管理エージェント１０４が、稼働再開時に、停止中のデータ（例えば、ジョブ履歴情報）を送信する設定である。「停止中のデータ送信しない」設定は、機器管理エージェント１０４が、稼働再開時に、停止中のデータを送信しない設定である。
【００６４】
次に、ステップＳ１７０３において、エージェント管理部３０８が、ステップＳ１２０２で「停止中のデータ送信する」設定がされているかを判断する。「停止中のデータ送信する」設定がされている場合は、処理がステップＳ１７０４に進む。「停止中のデータ送信する」設定がされていない場合は、処理がステップＳ１７０５に進む。
【００６５】
ステップＳ１７０４において、エージェント管理部３０８が、エージェント管理テーブル３１２のステータス１１０４を再開（停止中のデータ送信する）に変更する。また、ステップＳ１７０５において、エージェント管理部３０８がエージェント管理テーブル３１２のステータス１１０４を再開（停止中のデータ送信しない）に変更する。
【００６６】
図１８は、機器管理サーバが機器管理エージェントの通信リクエストを受信した際の動作処理の例を説明するフローチャートである。
図１８に示すフローチャートの各ステップ処理は、機器管理サーバ１０３に設けられたＣＰＵ２０１がＲＯＭ２０２、ＨＤＤ２０７等の不揮発性記憶手段に記憶された制御プログラムを読み込み実行することによって、実現される。本フローチャートでは、発明にかかわる処理のみを説明し、その他の処理については本発明の本質とは異なるので、説明を省略する。
【００６７】
ステップＳ１８０１において、エージェント管理部３０８が、機器管理エージェント１０４から送信されたＨＴＴＰリクエストを受信し、ＨＴＴＰメッセージとＨＴＴＰヘッダの情報を使用してエージェント認証処理を行う。まず、エージェント管理部３０８は、ＨＴＴＰヘッダから、テナントＩＤ、エージェントＩＤ、署名情報を取得する。
【００６８】
ステップＳ１８０２において、エージェント管理部３０８が、ステップＳ１８０１で取得したテナントＩＤで指定される顧客のエージェント管理テーブル３１２が存在するかどうか確認する。ステップＳ１８０１で取得したテナントＩＤで指定される顧客のエージェント管理テーブル３１２が存在する場合は、処理がステップＳ１８０４に進む。ステップＳ１８０１で取得したテナントＩＤで指定される顧客のエージェント管理テーブル３１２が存在しない場合は、処理がステップＳ１８０３に進む。
【００６９】
ステップＳ１８０３において、エージェント管理部３０８が、ステップＳ１８０１で受信したＨＴＴＰリクエストの応答としてテナントなしコードを返却する。ステップＳ１８０４において、エージェント管理部３０８が、ステップＳ１８０１で取得したエージェントＩＤと一致するエントリ（一行分のデータ）がエージェント管理テーブル３１２にあるかを判断する。ステップＳ１８０１で取得したエージェントＩＤと一致するエントリがエージェント管理テーブル３１２に存在する場合は、処理がステップＳ１８０６に進む。ステップＳ１８０１で取得したエージェントＩＤと一致するエントリがエージェント管理テーブル３１２にない場合は、エージェント管理部３０８が、当該エージェントＩＤに対応する機器管理エージェント１０４を管理していないことを意味する。したがって、この場合は、処理がステップＳ１８０５に進み、エージェント管理部３０８がステップＳ１８０１で受信したＨＴＴＰリクエストの応答としてエージェント削除コードを返却する。
【００７０】
ステップＳ１８０６において、エージェント管理部３０８が、エージェントＩＤに一致するエントリから認証キー１１０３を取得し、取得した認証キーから署名情報を生成し、ＨＴＴＰヘッダから取得した署名情報と比較し、署名情報が一致するかを判断する。署名情報が一致する場合は、処理がＳ１８０８に進む。署名情報が一致しない場合は、認証キーエラーとなる。したがって、この場合は、処理がＳ１８０７に進む。
【００７１】
ステップＳ１８０７において、エージェント管理部３０８が、ステップＳ１８０１で受信したＨＴＴＰリクエストの応答として、認証キーエラーコードを返却する。なお、本実施形態では、ステップＳ１８０２，Ｓ１８０４，Ｓ１８０６でＹｅｓの場合に、認証エラーが発生したとして、それぞれ、テナントなしコード、エージェント削除コード、認証キーエラーコードが返却される。
【００７２】
ステップＳ１８０８において、エージェント管理部３０８が、ステップＳ１８０４でエージェントＩＤと一致したエントリからステータス１１０４を取得し、ステータス１１０４が停止待ちかどうかを判断する。ステータス１１０４が、停止待ちである場合は、処理がステップＳ１８０９に進む。
【００７３】
ステップＳ１８０９において、エージェント管理部３０８が、ステップＳ１８０１で受信したＨＴＴＰリクエストの応答として、停止コードを返却する。続いて、ステップＳ１８１０において、エージェント管理部３０８が、ステップＳ１８０４でエージェントＩＤと一致したエントリのステータス１１０４を停止中にする。
【００７４】
ステップＳ１８１１において、エージェント管理部３０８が、ステップＳ１８０８で取得したステータス１１０４が再開かどうかを判断する。ステータス１１０４が再開でない場合は、処理がステップＳ１８１４に進む。ステータス１１０４が再開である場合は、処理がステップＳ１８１２に進む。
【００７５】
ステップＳ１８１２において、エージェント管理部３０８が、ステップＳ１８０１で受信したＨＴＴＰリクエストの応答として、再開コードを返却する。再開ステータスについては、「停止中のデータ送信する」設定または「停止中のデータ送信しない」設定がされており、それぞれの設定に応じて別の再開コードが返却される。ステップＳ１８１３において、エージェント管理部３０８が、ステップＳ１８０４でエージェントＩＤと一致したエントリのステータス１１０４を稼働中にする。
【００７６】
また、ステップＳ１８１４において、エージェント管理部３０８が、ステップＳ１８０１で受信したＨＴＴＰリクエストの認証が成功したと判断し、ＨＴＴＰリクエストの処理を行う。そして、ステップＳ１８０１で受信したＨＴＴＰリクエストの応答として、処理成功を返却する。
【００７７】
図１９は、機器管理エージェントの機器管理サーバへの通信処理の例を説明するフローチャートである。
図１９に示すフローチャートの各ステップ処理は、機器管理エージェント１０４に設けられたＣＰＵ６０１が、ＲＯＭ６０２、ＨＤＤ６０７等の不揮発性記憶手段に記憶された制御プログラムを読み込み実行することによって、実現される。本フローチャートでは、発明にかかわる処理のみを説明し、その他の処理については、本発明の本質とは異なるため説明を省略する。
【００７８】
ステップＳ１９０１において、インタフェース部８０４が、機器管理サーバ１０３にＨＴＴＰメッセージを送信する。インタフェース部８０４は、ＨＴＴＰメッセージの送信時に、認証キー保存部８０５より認証キーを取得し、ＨＴＴＰメッセージについて該認証キーを用いて署名情報を生成し、テナントＩＤ、エージェントＩＤとともにＨＴＴＰヘッダに付加する。署名情報の生成方法としては、ＳＨＡなどのアルゴリズムを使用する。
【００７９】
ステップＳ１９０２において、エージェント制御部８０１が、インタフェース部８０４がステップＳ１９０１で送信したＨＴＴＰメッセージの応答が認証エラーの一つであるテナントなしエラーであるかを判断する。応答がテナントなしエラーでない場合は、処理がステップＳ１９０６に進む。応答がテナントなしエラーである場合は、処理がステップＳ１９０３に進む。
【００８０】
ステップＳ１９０３において、エージェント制御部８０１が、インタフェース部８０４を介して、機器管理サーバ１０３にアンインストールチェックリクエストを送信する。アンインストールチェックリクエストを送信する際に、エージェント制御部８０１は、認証キー保存部８０５より認証キーを取得し、ＨＴＴＰメッセージについて該認証キーを用いて署名情報を生成する。エージェント制御部８０１は、認証キー保存部８０５から削除専用のテナントＩＤを取得し、該テナントＩＤおよびエージェントＩＤ、署名情報をＨＴＴＰヘッダに付加する。
【００８１】
ステップＳ１９０４において、エージェント制御部８０１が、インタフェース部８０４がステップＳ１９０３で送信したＨＴＴＰメッセージの応答がエージェント削除コードであるかを判断する。応答がエージェント削除コードでない場合は、処理が終了する。応答がエージェント削除コードである場合は、処理がステップＳ１９０５に進む。
【００８２】
ステップＳ１９０５において、削除処理部８０６が、機器管理エージェント１０４をアンインストールする。機器管理エージェント１０４をアンインストールするとは、機器管理エージェント１０４にインストールされていたエージェントアプリをアンインストールすることである。
【００８３】
ステップＳ１９０６において、エージェント制御部８０１が、インタフェース部８０４がステップＳ１９０１で送信したＨＴＴＰメッセージの応答がエージェント削除コードであるかを判断する。応答がエージェント削除コードでない場合は、処理がステップＳ１９０８に進む。応答がエージェント削除コードである場合は、処理がステップＳ１９０７に進む。そして、ステップＳ１９０７において、削除処理部８０６が、機器管理エージェント１０４をアンインストールする。
【００８４】
ステップＳ１９０８において、エージェント制御部８０１が、インタフェース部８０４がステップＳ１９０１で送信したＨＴＴＰメッセージの応答が認証キーエラーであるかを判断する。応答が認証キーエラーであるかを判断する。応答が認証キーエラーでない場合は、処理がステップＳ１９１０に進む。応答が認証キーエラーである場合は、処理がステップＳ１９０９に進む。
【００８５】
ステップＳ１９０９において、ＵＩ制御部８０３が、表示モジュール３０６を制御し、認証キーが不正であることをサービスプロバイダユーザに表示する。また、ステップＳ１９１０において、エージェント制御部８０１が、インタフェース部８０４がステップＳ１９０１で送信したＨＴＴＰメッセージの応答が停止コードであるかを判断する。応答が停止コードでない場合は、処理がステップＳ１９１３に進む。応答が停止コードである場合は、処理がステップＳ１９１１に進む。
【００８６】
ステップＳ１９１１において、エージェント制御部８０１が、機器管理サーバ１０３に対するデータ送信を停止する。続いて、ステップＳ１９１２において、エージェント制御部８０１が、機器管理サーバ１０３に機器管理エージェント１０４のステータスが変更されたかどうかを確認するためのステータス確認ＨＴＴＰリクエストを作成する。そして、インタフェース部８０４が、ステータス確認ＨＴＴＰリクエストを機器管理サーバ１０３に定期的に送信する。
【００８７】
ステップＳ１９１３において、エージェント制御部８０１が、インタフェース部８０４がステップＳ１９０１で送信したＨＴＴＰメッセージの応答が再開コードであるかを判断する。応答が再開コードである場合は、処理がステップＳ１９１４に進む。応答が再開コードでなく、送信成功である場合は、処理がステップＳ１９１７に進む。
【００８８】
ステップＳ１９１４において、再開コードに関して「停止中のデータ送信する」設定がされているかを判断する。「停止中のデータ送信する」設定がされていない場合は、処理がステップＳ１９１６に進む。「停止中のデータ送信する」設定がされている場合は、処理がステップＳ１９１５に進む。
【００８９】
ステップＳ１９１５において、ジョブ履歴管理部８０８が、インタフェース部８０４を介して、機器管理サーバ１０３に対して、周辺機器１０２から収集したジョブ履歴情報を送信する。また、ステップＳ１９１６において、ジョブ履歴管理部８０８が、周辺機器１０２から収集したジョブ履歴情報を削除する。また、ステップＳ１９１７において、機器管理部８０２およびエージェント処理部８０１が、各ＨＴＴＰリクエストの正常動作を継続する。
【００９０】
図２０は、アンインストールチェック処理を受信した際の機器管理サーバの動作処理の例を説明するフローチャートである。
図２０に示すフローチャートの各ステップ処理は、機器管理サーバ１０３に設けられたＣＰＵ２０１が、ＲＯＭ２０２、ＨＤＤ２０７等の不揮発性記憶手段に記憶された制御プログラムを読み込み実行することによって、実現される。本フローチャートでは、発明にかかわる処理のみを説明し、その他の処理については、本発明の本質とは異なるので、説明を省略する。
【００９１】
ステップＳ２００１において、エージェント管理部３０８が、機器管理エージェント１０４から送信されたアンインストールチェックＨＴＴＰリクエストを受信する。アンインストールチェックＨＴＴＰリクエストのＨＴＴＰヘッダには、削除専用のテナントＩＤと、機器管理エージェント１０４のエージェントＩＤおよび認証キーを用いて作成された署名情報が含まれる。エージェント管理部３０８は、ＨＴＴＰメッセージとＨＴＴＰヘッダの情報とを使用して、エージェント認証処理を行い、認証成功した場合は、ステップＳ２００２に進む。エージェント認証処理では、ＨＴＴＰヘッダより、テナントＩＤ、エージェントＩＤ、署名情報を取得し、削除専用テナントＩＤであった場合は、認証成功とする。
【００９２】
次に、ステップＳ２００２において、エージェント管理部３０８が、ＨＴＴＰヘッダで指定されたテナントＩＤのエージェント削除テーブル３１４を参照し、ＨＴＴＰヘッダに格納された該エージェントＩＤ１３０２に一致するエントリを検索する。エージェント管理部３０８は、検索されたエントリに含まれる認証キー１３０３を取得する。
【００９３】
ステップＳ２００３において、エージェント管理部３０８が、アンインストールチェックＨＴＴＰリクエストに対応する機器管理エージェントがエージェント削除テーブル３１４にあるかを判断する。具体的には、エージェント管理部３０８は、ＨＴＴＰメッセージについて、ステップＳ２００２で取得した認証キー１３０３で署名情報を生成し、生成した署名情報と、ＨＴＴＰヘッダから取得した署名情報とを比較する。認証キー１３０３で生成した署名情報とＨＴＴＰヘッダから取得した署名情報が一致した場合に、エージェント管理部３０８は、アンインストールチェックＨＴＴＰリクエストに対応する機器管理エージェントがエージェント削除テーブル３１４にあると判断する。
【００９４】
アンインストールチェックＨＴＴＰリクエストに対応する機器管理エージェントがエージェント削除テーブル３１４にないと判断された場合は、処理がステップＳ２００５に進む。アンインストールチェックＨＴＴＰリクエストに対応する機器管理エージェントがエージェント削除テーブル３１４にあると判断された場合は、処理がステップＳ２００４に進む。ステップＳ２００４において、エージェント管理部３０８が、エージェント削除コードを返却する。すなわち、エージェント管理部３０８は、機器管理エージェント１０４から要求されたアンインストールチェックの対象のエージェントアプリがアンインストール対象である場合に、削除コードを送信する。また、ステップＳ２００５において、エージェント管理部３０８が、アンインストールＮＧコードを返却する。
【００９５】
図２１は、ユーザの操作にしたがうアンインストール実行処理の例を説明するフローチャートである。
図２１に示すフローチャートの各ステップ処理は、機器管理エージェント１０４に設けられたＣＰＵ６０１が、ＲＯＭ６０２、ＨＤＤ６０７等の不揮発性記憶手段に記憶された制御プログラムを読み込み実行することによって、実現される。本フローチャートでは、発明にかかわる処理のみを説明し、その他の処理については、本発明の本質とは異なるので、説明を省略する。
【００９６】
ステップＳ２１０１において、ＵＩ制御部８０３が、表示モジュール３０６や入力装置３０５を制御して、入力装置３０５からサービスプロバイダユーザのアンインストール実行操作を受け付ける。続いて、ステップＳ２１０２において、インタフェース部８０４が、アンインストール実行ＨＴＴＰリクエストを機器管理サーバ１０３に送信する。具体的には、インタフェース部８０４は、認証キー保存部８０５から認証キーを取得し、ＨＴＴＰメッセージについて、該認証キーを用いて署名情報を生成し、テナントＩＤ、エージェントＩＤとともにＨＴＴＰヘッダに付加する。
【００９７】
ステップＳ２１０３において、インタフェース部８０４が、ステップＳ２１０２で送信したＨＴＴＰリクエストの応答が認証エラーであるかどうか確認する。本実施形態では、処理成功以外のコードが返却されたことが認証エラーであることを意味する。応答が認証エラーでない場合は、処理がステップＳ２１０５に進む。応答が認証エラーである場合は、処理がステップＳ２１０４に進む。
【００９８】
ステップＳ２１０４において、インタフェース部８０４が、削除処理部８０６から削除用のテナントＩＤを取得し、削除用テナントＩＤを付与したアンインストール実行ＨＴＴＰリクエストを作成して、機器管理サーバ１０３に送信する。続いて、ステップＳ２１０５において、インタフェース部が、ステップＳ２１０４の応答として削除成功が返却されたか確認する。削除成功が返却されなかった場合は、処理を終了する。削除成功が返却された場合は、処理がステップＳ２１０６に進む。ステップＳ２１０６において、削除処理部８０６が、エージェントアプリのアンインストールを実行する。
【００９９】
図２２は、機器管理サーバがアンインストール実行リクエストを受信した際の動作処理の例を説明するフローチャートである。
図２２に示すフローチャートの各ステップ処理は、機器管理サーバ１０３に設けられたＣＰＵ２０１が、ＲＯＭ２０２、ＨＤＤ２０７等の不揮発性記憶手段に記憶された制御プログラムを読み込み実行することによって、実現される。本処理フローでは、発明にかかわる処理のみを説明し、その他の処理については、本発明の本質とは異なるので、説明を省略する。
【０１００】
ステップＳ２２０１において、エージェント管理部３０８が、機器管理エージェント１０４から送信されたアンインストール実行ＨＴＴＰリクエストを受信する。ステップＳ２２０２において、エージェント管理部３０８が、ＨＴＴＰメッセージとＨＴＴＰヘッダの情報を使用してエージェント認証処理を行い、削除専用テナントＩＤで認証成功したかを判断する。削除専用テナントＩＤで認証成功しなかった場合、すなわち、ＨＴＴＰヘッダで指定されたテナントＩＤが通常のテナントＩＤである場合は、処理がステップＳ２２０６に進む。削除専用テナントＩＤで認証成功した場合は、処理がステップＳ２２０３に進む。
【０１０１】
ステップＳ２２０３において、エージェント管理部３０８が、エージェント削除リストにエージェント情報があるかを判断する。具体的には、エージェント管理部３０８は、ＨＴＴＰヘッダで指定されたテナントＩＤに対応するエージェント削除テーブル３１４を参照する。エージェント管理部３０８は、ＨＴＴＰヘッダで指定されたエージェントＩＤ１３０２に一致するエントリを検索し、該当エントリの認証キー１３０３を取得する。エージェント管理部３０８は、ＨＴＴＰメッセージについて該当エントリの認証キー１３０３で署名情報を生成し、ＨＴＴＰヘッダから取得した署名情報と比較する。認証キー１３０３で生成した署名情報とＨＴＴＰヘッダから取得した署名情報とが一致した場合、エージェント管理部３０８は、エージェント削除リストにエージェント情報があると判断する。認証キー１３０３で生成した署名情報とＨＴＴＰヘッダから取得した署名情報とが一致しない場合、エージェント管理部３０８は、エージェント削除リストにエージェント情報がないと判断する。エージェント削除リストにエージェント情報がある場合は、処理がステップＳ２２０４に進む。エージェント削除リストにエージェント情報がない場合は、処理がステップＳ２２０９に進む。ステップＳ２２０９において、エージェント管理部３０８が、ステップＳ２２０１で受信したＨＴＴＰリクエストの応答として、アンインストールＮＧコードを返却する。
【０１０２】
ステップＳ２２０４において、エージェント管理部３０８が、ステップＳ２２０３で署名情報が一致した該当エントリのエージェント情報を、エージェント削除テーブル３１４から削除する。そして、ステップＳ２２０５において、エージェント管理部３０８が、ステップＳ２２０１で受信したＨＴＴＰリクエストの応答として、削除成功を返却する。
【０１０３】
また、ステップＳ２２０６において、エージェント管理部３０８が、ＨＴＴＰヘッダで指定されたテナントＩＤに対応するエージェント管理テーブル３１２から取得したエージェントＩＤ１１０２に基づいて、認証処理を実行し、認証成功したかを判断する。具体的には、エージェント管理部３０８は、エージェントＩＤ１１０２に対応する認証キー１１０３を取得し、認証キー１１０３で署名情報を生成し、ＨＴＴＰヘッダから取得した署名情報と比較する。認証キー１１０３で生成した署名情報とＨＴＴＰヘッダから取得した署名情報とが一致した場合、エージェント管理部３０８は、認証成功したと判断する。認証成功した場合は、処理がステップＳ２２０７に進む。認証失敗した場合は、処理がステップＳ２２０８に進む。
【０１０４】
ステップＳ２２０８において、エージェント管理部３０８が、各テーブルから取得したエージェントＩＤに関連する情報を削除する。また、ステップＳ２２０９において、エージェント管理部３０８が、ステップＳ２２０１で受信したＨＴＴＰリクエストの応答として、認証エラーを返却する。認証エラーは、ステップＳ１８０３、ステップＳ１８０５、ステップＳ１８０７の各コードを表す。本実施例のシステムによれば、機器管理エージェントを自動的に停止・削除させることが可能となり、無駄な通信を減らすことが可能となる。
【０１０５】
（その他の実施形態）
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【図１】
2018045423.tif 000003
【図２】
2018045423.tif 000004
【図３】
2018045423.tif 000005
【図４】
2018045423.tif 000006
【図５】
2018045423.tif 000007
【図６】
2018045423.tif 000008
【図７】
2018045423.tif 000009
【図８】
2018045423.tif 000010
【図９】
2018045423.tif 000011
【図１０】
2018045423.tif 000012
【図１１】
2018045423.tif 000013
【図１２】
2018045423.tif 000014
【図１３】
2018045423.tif 000015
【図１４】
2018045423.tif 000016
【図１５】
2018045423.tif 000017
【図１６】
2018045423.tif 000018
【図１７】
2018045423.tif 000019
【図１８】
2018045423.tif 000020
【図１９】
2018045423.tif 000021
【図２０】
2018045423.tif 000022
【図２１】
2018045423.tif 000023
【図２２】
2018045423.tif 000024