(57)【要約】【課題】Ｗｅｂアプリケーションにアクセスするクライアント上の複数のアプリケーションのＵＩを相互に操作する場合でも、いずれかのアプリケーションのＵＩを操作している間に、他のアプリケーションでタイムアウトが発生することを抑えること。【解決手段】機器設定管理サーバ１０２は、Ｗｅｂブラウザからトークンを受信した場合にコードを発行して該トークンと紐付けて管理し（Ｓ９１２，Ｓ９１３）、該コードをＷｅｂブラウザに対する応答に含め、また、ネイティブアプリケーションから前記コードおよびトークンを受信した場合に、該コードと該トークンとを紐付けて管理し（Ｓ９０４）、Ｗｅｂブラウザまたはネイティブアプリケーションから前記コードを受信した場合に、該コードと紐付けられて管理されているトークンの検証要求を、認証サーバ１０３に対して行い、それらのトークンの有効期間を更新させる（Ｓ９０５〜Ｓ９１１）。【選択図】図９
2017167954.tif 000002
【特許請求の範囲】
【請求項１】
ユーザ認証を行って有効期間を有する認証情報を発行する認証サービスと、前記認証サービスにより発行された認証情報を用いてアクセス可能なサーバと、前記サーバにアクセスする第１のアプリケーションおよび第２のアプリケーションが動作するクライアント端末とを有するシステムであって、
前記認証サービスは、
前記サーバからの要求に応じて前記認証情報が有効であるか検証し、有効である場合に該認証情報の有効期間を更新する検証手段を有し、
前記サーバは、
前記第１のアプリケーションから受信した前記認証サービスにより発行された第１の認証情報と前記第２のアプリケーションから受信した前記認証サービスにより発行された第２の認証情報とを紐付けて管理する管理手段と、
前記第１のアプリケーションまたは前記第２のアプリケーションから要求を受信した場合に、該要求に対応する認証情報と紐付けられて前記管理手段で管理されている認証情報の検証要求を、前記認証サービスに対して行って、その認証情報の有効期間を更新させる更新手段と、を有することを特徴とするシステム。
【請求項２】
前記サーバは、
前記第１のアプリケーションから前記認証サービスにより発行された第１の認証情報を受信した場合に固有のコードを発行する発行手段と、
前記コードが発行された場合に、該コードを前記第１のアプリケーションに対する応答に含める応答手段と、を有し、
前記管理手段は、前記コードが発行された場合に、該コードと該第１の認証情報とを紐付けて記憶し、また、前記第２のアプリケーションから前記コードおよび前記認証サービスにより発行された第２の認証情報を受信した場合に、該コードと該第２の認証情報とを紐付けて記憶し、
前記更新手段は、前記第１のアプリケーションまたは前記第２のアプリケーションから前記コードを受信した場合に、該コードと紐付けられて前記管理手段で記憶されている認証情報の検証要求を、前記認証サービスに対して行い、
前記クライアント端末は、
前記サーバで発行されたコードを前記第２のアプリケーションに渡し、前記第１のアプリケーションおよび前記第２のアプリケーションは、前記コードが発行されている場合、前記サーバとの通信に前記コードを含めることを特徴とする請求項１に記載のシステム。
【請求項３】
前記応答手段は、前記第２のアプリケーションを起動し前記コードを前記第２のアプリケーションに渡すためのコマンドを含めたＷｅｂページを、前記第１のアプリケーションに応答し、
前記第１のアプリケーションは、Ｗｅｂブラウザであり、前記コマンドを実行することにより前記第２のアプリケーションを起動して前記コードを前記第２のアプリケーションに渡すことを特徴とする請求項２に記載のシステム。
【請求項４】
前記管理手段は、前記コード、前記認証情報およびユーザ情報を紐付けて記憶するものであり、
前記更新手段は、前記第１のアプリケーションまたは前記第２のアプリケーションから前記コードおよび前記認証情報を受信した場合に、該コードと、前記認証情報に基づいて前記認証サービスから取得されたユーザ情報とに紐付けられて前記管理手段に記憶されている認証情報の検証要求を、前記認証サービスに対して行うことを特徴とする請求項２又は３に記載のシステム。
【請求項５】
前記管理手段は、前記コード、前記認証情報、および、前記認証情報に対応する前記サーバへの最終アクセス日時を紐付けて記憶するものであり、
前記更新手段は、前記認証サービスに対して検証要求を行う認証情報と紐付けられて前記管理手段に記憶されている最終アクセス日時の更新も行い、
前記サーバは、所定期間を過ぎている最終アクセス日時に紐付けられている認証情報を、前記管理手段から削除する削除手段を有する、
ことを特徴とする請求項２乃至４のいずれか１項に記載のシステム。
【請求項６】
ユーザ認証を行って有効期間を有する認証情報を発行する認証サービスにより発行された認証情報を用いてアクセス可能なサーバであって、
クライアント端末で動作する第１のアプリケーションから受信した前記認証サービスにより発行された第１の認証情報と前記クライアント端末で動作する第２のアプリケーションから受信した前記認証サービスにより発行された第２の認証情報とを紐付けて管理する管理手段と、
前記第１のアプリケーションまたは前記第２のアプリケーションから要求を受信した場合に、該要求に対応する認証情報と紐付けられて前記管理手段で管理されている認証情報の検証要求を、前記認証サービスに対して行って、その認証情報の有効期間を更新させる更新手段と、を有し、
前記認証サービスは、前記サーバからの要求に応じて前記認証情報が有効であるか検証し、有効である場合に該認証情報の有効期間を更新することを特徴とするサーバ。
【請求項７】
クライアント端末で動作する第１のアプリケーションから前記認証サービスにより発行された第１の認証情報を受信した場合に固有のコードを発行する発行手段と、
前記コードが発行された場合に、該コードを前記第１のアプリケーションに対する応答に含める応答手段を有し、
前記管理手段は、前記コードが発行された場合に、該コードと該第１の認証情報とを紐付けて記憶し、また、前記第２のアプリケーションから前記コードおよび前記認証サービスにより発行された第２の認証情報を受信した場合に、該コードと該第２の認証情報とを紐付けて記憶し、
前記更新手段は、前記第１のアプリケーションまたは前記第２のアプリケーションから前記コードを受信した場合に、該コードと紐付けられて前記管理手段で記憶されている認証情報の検証要求を、前記認証サービスに対して行い、
前記第１のアプリケーションは、前記サーバで発行されたコードを前記第２のアプリケーションに渡し、前記第１のアプリケーションおよび前記第２のアプリケーションは、前記コードが発行されている場合、前記サーバとの通信に前記コードを含めることを特徴とする請求項６に記載のサーバ。
【請求項８】
前記応答手段は、前記第２のアプリケーションを起動し前記コードを前記第２のアプリケーションに渡すためのコマンドを含めたＷｅｂページを、前記第１のアプリケーションに応答し、
前記第１のアプリケーションは、Ｗｅｂブラウザであり、前記コマンドを実行することにより前記第２のアプリケーションを起動して前記コードを前記第２のアプリケーションに渡すことを特徴とする請求項７に記載のサーバ。
【請求項９】
前記管理手段は、前記コード、前記認証情報およびユーザ情報を紐付けて記憶するものであり、
前記更新手段は、前記第１のアプリケーションまたは前記第２のアプリケーションから前記コードおよび前記認証情報を受信した場合に、該コードと、前記認証情報に基づいて前記認証サービスから取得されたユーザ情報とに紐付けられて前記管理手段に記憶されている認証情報の検証要求を、前記認証サービスに対して行うことを特徴とする請求項７又は８に記載のサーバ。
【請求項１０】
前記管理手段は、前記コード、前記認証情報、および、前記認証情報に対応する前記サーバへの最終アクセス日時を紐付けて記憶するものであり、
前記管理手段は、前記認証サービスに対して検証要求を行う認証情報と紐付けられて前記管理手段に記憶されている最終アクセス日時の更新も行い、
前記サーバは、所定期間を過ぎている最終アクセス日時に紐付けられている認証情報を、前記管理手段から削除する削除手段を有する、
ことを特徴とする請求項７乃至９のいずれか１項に記載のサーバ。
【請求項１１】
ユーザ認証を行って有効期間を有する認証情報を発行する認証サービスと、前記認証サービスにより発行された認証情報を用いてアクセス可能なサーバと、前記サーバにアクセスする第１のアプリケーションおよび第２のアプリケーションが動作するクライアント端末とを有するシステムの制御方法であって、
前記認証サービスが実行する、
前記サーバからの要求に応じて前記認証情報が有効であるか検証し、有効である場合に該認証情報の有効期間を更新する検証ステップと、
前記サーバが実行する、
前記第１のアプリケーションから受信した前記認証サービスにより発行された第１の認証情報と前記第２のアプリケーションから受信した前記認証サービスにより発行された第２の認証情報とを紐付けて管理する管理ステップと、
前記第１のアプリケーションまたは前記第２のアプリケーションから要求を受信した場合に、該要求に対応する認証情報と紐付けられて前記管理ステップで管理されている認証情報の検証要求を、前記認証サービスに対して行って、それらの認証情報の有効期間を更新させる更新ステップと、
を有することを特徴とするシステムの制御方法。
【請求項１２】
ユーザ認証を行って有効期間を有する認証情報を発行する認証サービスにより発行された認証情報を用いてアクセス可能なサーバの制御方法であって、
クライアント端末で動作する第１のアプリケーションから受信した前記認証サービスにより発行された第１の認証情報と前記クライアント端末で動作する第２のアプリケーションから受信した前記認証サービスにより発行された第２の認証情報とを紐付けて管理する管理ステップと、
前記第１のアプリケーションまたは前記第２のアプリケーションから要求を受信した場合に、該要求に対応する認証情報と紐付けられて前記管理ステップで管理されている認証情報の検証要求を、前記認証サービスに対して行って、それらの認証情報の有効期間を更新させる更新ステップと、を有し、
前記認証サービスは、前記サーバからの要求に応じて前記認証情報が有効であるか検証し、有効である場合に該認証情報の有効期間を更新することを特徴とするサーバの制御方法。
【請求項１３】
コンピュータを、請求項６乃至１０のいずれか１項に記載の手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、タイムアウトの発生を抑えるシステム、サーバ、システムの制御方法、サーバの制御方法、及びプログラムに関するものである。
【背景技術】
【０００２】
近年、Ｗｅｂサーバに配置され、インターネットなどのネットワークを介して使用可能なアプリケーション（Ｗｅｂアプリケーションと呼ばれる）が普及している。Ｗｅｂアプリケーションのユーザインタフェース（ＵＩ）は、Ｗｅｂアプリケーションが生成したＨＴＭＬ（HyperText Markup Language）などのページを、Ｗｅｂブラウザが受信して表示する。
一方、ユーザが使用するパーソナルコンピュータなどのクライアントコンピュータにインストールされて使用されるアプリケーションは、ネイティブアプリケーションと呼ばれる。
【０００３】
Ｗｅｂアプリケーションは、各ユーザのクライアントコンピュータにインストールされるネイティブアプリケーションに比べて、アプリケーションの更新が容易、データの一元管理が可能等の特徴がある。一方、Ｗｅｂアプリケーションは、リムーバブルメディアやカメラといったクライアントコンピュータに装着された装置を制御できない等の特徴もある。
【０００４】
このような事情から、クライアントコンピュータに装着された装置を制御するような機能をネイティブアプリケーションに持たせ、データの管理などのその他の機能をＷｅｂアプリケーションに持たせる等のハイブリッドなシステムが構築されることがある。
【０００５】
例えば、機器設定を扱うシステムでは、機器設定の保管や機器設定の一覧表示等の機能はＷｅｂアプリケーションに持たせ、機器設定の編集やリムーバブルメディアへの書き出しの機能はネイティブアプリケーションに持たせる、といった構成である。
このような構成のシステムでは、Ｗｅｂアプリケーションは、機器設定の取得や保存をするためのインタフェースを備える。ネイティブアプリケーションは、そのインタフェースにアクセスして、Ｗｅｂアプリケーションから機器設定を取得したり、Ｗｅｂアプリケーションに機器設定を保存したりする。
【０００６】
なお、Ｗｅｂアプリケーションへのアクセスには、ユーザ認証を必要とするように構成される場合が多い。その場合、ＷｅｂブラウザからＷｅｂアプリケーションへのアクセス、ネイティブアプリケーションからＷｅｂアプリケーションへのアクセスの両方で、ユーザ認証が必要となる。ユーザ認証がなされた後は、所定期間アクセスがないとタイムアウトが発生するように構成される。タイムアウトを発生させることは、セキュリティを高める一方で、場合によってはユーザの利便性を低下させる可能性がある。このような点から、Ｗｅｂアプリケーションが処理すべきジョブがある間は、タイムアウトの発生を抑えるシステムが提案されている（特許文献１参照）。
【０００７】
特許文献１のようにタイムアウトの発生を抑えるシステムでは、クライアントコンピュータがジョブをＷｅｂアプリケーションに登録する際に、認証サーバで認証を行う。その後、Ｗｅｂアプリケーションが処理すべきジョブがある間は、Ｗｅｂアプリケーションが認証サーバにアクセスすることでタイムアウトの発生を抑えることを可能にする。このような構成によって、ＷｅｂブラウザからＷｅｂアプリケーションにアクセスする場合、Ｗｅｂアプリケーションの処理が完了するまでタイムアウトが発生しないようにできる。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２０１３‐３３４３７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかし、上述した機器設定のシステムのような構成の場合、ネイティブアプリケーションで機器設定を編集して保存し、Ｗｅｂブラウザに表示される機器設定一覧のＵＩで更新日時を確認したりする。また、Ｗｅｂブラウザに表示される機器設定一覧を確認し、ネイティブアプリケーションで機器設定を編集する。このように相互にＵＩを操作する機会が多くなるため、どちらか一方のＵＩを操作している間に、他方でタイムアウトが発生する場合がある。これは、ユーザにとって不便である。なお、上述した特許文献１のような従来技術は、このような場合に適用できるものではない。また、単にＷｅｂアプリケーションにおけるタイムアウト時間を延ばすといった対応では、Ｗｅｂアプリケーションのセキュリティを低下させてしまう可能性がある。
【００１０】
本発明は、上記の問題点を解決するためになされたものである。本発明の目的は、サーバにアクセスするクライアント端末上の複数のアプリケーションを相互に操作することが多い場合でも、どちらか一方を操作している間に、他方でタイムアウトが発生してしまうことを抑え、ユーザの利便性を高めることができる仕組みを提供することである。
【課題を解決するための手段】
【００１１】
本発明は、ユーザ認証を行って有効期間を有する認証情報を発行する認証サービスと、前記認証サービスにより発行された認証情報を用いてアクセス可能なサーバと、前記サーバにアクセスする第１のアプリケーションおよび第２のアプリケーションが動作するクライアント端末とを有するシステムであって、前記認証サービスは、前記サーバからの要求に応じて前記認証情報が有効であるか検証し、有効である場合に該認証情報の有効期間を更新する検証手段を有し、前記サーバは、前記第１のアプリケーションから受信した前記認証サービスにより発行された第１の認証情報と前記第２のアプリケーションから受信した前記認証サービスにより発行された第２の認証情報とを紐付けて管理する管理手段と、前記第１のアプリケーションまたは前記第２のアプリケーションから要求を受信した場合に、該要求に対応する認証情報と紐付けられて前記管理手段で管理されている認証情報の検証要求を、前記認証サービスに対して行って、その認証情報の有効期間を更新させる更新手段と、を有することを特徴とする。
【発明の効果】
【００１２】
本発明によれば、サーバにアクセスするクライアント端末上の複数のアプリケーションを相互に操作することが多い場合でも、どちらか一方を操作している間に、他方でタイムアウトが発生してしまうことを抑え、ユーザの利便性を高めることができる。
【図面の簡単な説明】
【００１３】
【図１】本実施例を示すシステムの機器構成を例示する図
【図２】クライアントコンピュータ、サーバのハードウェア構成図
【図３】クライアントコンピュータのソフトウェア構成図
【図４】各サーバのソフトウェア構成図
【図５】各サーバで管理するデータのテーブル構成図
【図６】Ｗｅｂブラウザが機器設定一覧ページを表示するまでの処理のシーケンス図
【図７】Ｗｅｂブラウザが表示する認証ページを例示する図
【図８】認証管理プログラムの認証処理、トークンの検証処理のフローチャート
【図９】機器設定管理プログラムのコードの発行と検証処理のフローチャート
【図１０】機器設定一覧ページを例示する図
【図１１】機器設定編集プログラムが編集画面を表示するまでの処理のシーケンス図
【図１２】機器設定編集プログラムが表示する認証画面を例示する図
【図１３】機器設定編集プログラムが表示する編集画面を例示する図
【図１４】機器設定管理プログラムの無効なトークンの削除処理のフローチャート
【発明を実施するための形態】
【００１４】
以下、本発明を実施するための形態について図面を用いて説明する。
【実施例１】
【００１５】
＜システム構成＞
図１は、本発明の一実施例を示すシステムの機器構成を例示する図である。
本実施例のアプリケーション連携システムは、クライアントコンピュータ１０１、機器設定管理サーバ１０２、認証サーバ１０３を有する。クライアントコンピュータ１０１は、ＬＡＮ及びＦｉｒｅｗａｌｌ１０４越しに、インタフェース等のＷＡＮを介して、機器設定管理サーバ１０２、認証サーバ１０３と通信可能である。
【００１６】
クライアントコンピュータ１０１は、各ユーザが使用する情報処理装置であり、いわゆるパーソナルコンピュータ（ＰＣ）などである。クライアントコンピュータ１０１には、後述する図３に示すように、Ｗｅｂブラウザ３００、機器設定編集プログラム３５０がインストールされており、機器設定管理サーバ１０２、認証サーバ１０３と通信可能なクライアント端末である。
【００１７】
機器設定管理サーバ１０２は、後述する図４に示すように、機器設定管理プログラム４００が配置されており、機器設定の管理を行うサーバである。
認証サーバ１０３は、後述する図４に示すように、認証管理プログラム４５０が配置されており、ユーザ情報の管理、ユーザ認証機能（認証サービス）を提供するサーバである。機器設定管理サーバ１０２は、認証サーバ１０３により発行された認証情報（トークン）を用いてアクセス可能なサーバである。
【００１８】
なお、本実施例では、機器設定を扱うシステムを用いて説明する。しかし、これは、あくまで一例であり、特に機器設定に限らず、ネイティブアプリケーションとＷｅｂアプリケーションのユーザインタフェース（ＵＩ）を相互に操作するシステムであれば、他のシステムにも適用可能である。
【００１９】
また、本実施例では、機器設定管理サーバ１０２、認証サーバ１０３は、クライアントコンピュータ１０１とＷＡＮを介して接続する構成として説明する。しかし、機器設定管理サーバ１０２、認証サーバ１０３は、クライアントコンピュータ１０１と同じＬＡＮに接続された構成でもよい。
【００２０】
＜ハードウェア構成＞
図２（Ａ）は、クライアントコンピュータ１０１のハードウェア構成を例示するブロック図である。
ＣＰＵ２０１を含む制御部２００は、クライアントコンピュータ１０１の全体の動作を制御する。ＣＰＵ２０１は、ＲＯＭ２０２やＨＤＤ２０４等に記憶された制御プログラムを読み出して各種制御処理を実行する。ＲＡＭ２０３は、ＣＰＵ２０１の主メモリ、ワークエリア等の一時記憶領域として用いられる。ＨＤＤ２０４は、各種プログラムやデータを記憶する。なお、ＨＤＤの代わりに又は併用して、ＳＳＤ（Solid State Drive）等の他の記憶装置を備える構成でもよい。
【００２１】
操作部Ｉ／Ｆ２０５は、クライアントコンピュータ１０１で実行されるプログラムへの制御操作を入力するユーザインタフェース端末を接続するインタフェースである。本実施例では、ユーザインタフェース端末は、マウス２０９やキーボード２１０で構成されるが、その限りではない。ディスプレイＩ／Ｆ２０６は、クライアントコンピュータ１０１で実行されるプログラムのＵＩを表示するディスプレイ端末を接続するインタフェースである。本実施例では、ディスプレイ端末は、ディスプレイ２１１で構成されるが、その限りではない。
【００２２】
ネットワークＩ／Ｆ２０８は、制御部２００をＬＡＮに接続する。ネットワークＩ／Ｆ２０８は、ネットワークを介して他の装置との間で各種情報を送受信する。
ＵＳＢホストＩ／Ｆ２０７は、ＵＳＢストレージ２１２と通信するインタフェース部である。ＵＳＢホストＩ／Ｆ２０７は、ＨＤＤ２０４に格納されているデータをＵＳＢストレージ２１２に出力する。また、ＵＳＢホストＩ／Ｆ２０７は、ＵＳＢストレージ２１２に格納されているデータを入力し、ＣＰＵ２０１にそれを伝える。ＵＳＢストレージ２１２は、データを格納する外部記憶装置であり、ＵＳＢホストＩ／Ｆ２０７に対して着脱可能である。なお、ＵＳＢホストＩ／Ｆ２０７に接続されるＵＳＢ機器は、ＵＳＢストレージ２１２に限定されるものではなく、ＵＳＢ機器であれば、どのような機器であってもよい。また、クライアントコンピュータ１０１は、ＵＳＢホストＩ／Ｆ２０７以外の外部インタフェースを有し、該インタフェースを介して機器と接続される構成であってもよい。クライアントコンピュータ１０１に設けられる外部インタフェースは、有線であっても無線であってもよい。
【００２３】
図２（Ｂ）は、サーバ機器としての機器設定管理サーバ１０２、および、認証サーバ１０３のハードウェア構成を例示するブロック図である。
ＣＰＵ２５１を含む制御部２５０は、各サーバ全体の動作を制御する。ＣＰＵ２５１は、ＲＯＭ２５２やＨＤＤ２５４等に記憶された制御プログラムを読み出して各種制御処理を実行する。ＲＡＭ２５３は、ＣＰＵ２５１の主メモリ、ワークエリア等の一時記憶領域として用いられる。ＨＤＤ２５４は、各種プログラム、或いは後述する各種情報テーブル等を記憶する。なお、ＨＤＤの代わりに又は併用して、ＳＳＤ等の他の記憶装置を備える構成でもよい。ネットワークＩ／Ｆ２５５は、制御部２５０をＬＡＮに接続する。ネットワークＩ／Ｆ２５５は、ネットワークを介して他の装置との間で各種情報を送受信する。
【００２４】
＜ソフトウェア構成＞
図３は、クライアントコンピュータ１０１のソフトウェア構成を例示する図である。
クライアントコンピュータ１０１において、Ｗｅｂブラウザ３００、機器設定編集プログラム３５０、制御部３７０は、クライアントコンピュータ１０１のＲＯＭ２０２やＨＤＤ２０４に保存されたファイルとして存在する。これらは、クライアントコンピュータ１０１の起動時や各ソフトウェア実行時に、制御部３７０やその他ソフトウェアによってＲＡＭ２０３にロードされてＣＰＵ２０１によって実行されて機能するプログラムモジュールである。
【００２５】
制御部３７０は、各ソフトウェアからの依頼を受け付け、機器設定編集プログラム等を起動するソフトウェアである。制御部３７０は、例えば、オペレーティングシステム（ＯＳ）などによって実現することが可能である。
【００２６】
Ｗｅｂブラウザ３００は、表示部３０１、解析部３０２、処理実行部３０３、通信部３０４を有する。
表示部３０１は、ＨＴＭＬ文書をレンダリングし、ディスプレイ２１１を通じてＵＩを表示するソフトウェアである。また、表示部３０１は、マウス２０９やキーボード２１０を通じて作業者の操作を受け付け、処理実行部３０３や通信部３０４、制御部３７０等にその操作内容を通知する。
【００２７】
解析部３０２は、ＨＴＭＬ文書を解析するソフトウェアである。処理実行部３０３は、ＥＣＭＡＳｃｒｉｐｔを解析して、ＥＣＭＡＳｃｒｉｐｔに記載されている処理を実行するソフトウェアである。通信部３０４は、他のソフトウェアからの要求を受けてＨＴＴＰのリクエストメッセージを外部機器に送信するソフトウェアである。また、通信部３０４は、外部機器からのＨＴＴＰレスポンスメッセージを受信し、解析部３０２にレスポンスの内容を通知する。
【００２８】
機器設定編集プログラム３５０は、ネイティブアプリケーションである。機器設定編集プログラム３５０は、表示部３５１、処理実行部３５２、ストレージ制御部３５３、機器設定生成部３５４、通信部３５５を有する。
【００２９】
表示部３５１は、機器設定編集プログラム３５０を操作するためのＵＩを、ディスプレイ２１１を通じて作業者に提供し、マウス２０９やキーボード２１０を通じて作業者の操作を受け付けるソフトウェアである。処理実行部３５２は、表示部３５１からの指示に従い、各種処理を行う。ストレージ制御部３５３は、ＵＳＢストレージ２１２にアクセスしてそのデータの読み書きを行うソフトウェアである。また、ストレージ制御部３５３は、ＵＳＢストレージ２１２の挿抜を検知する。
【００３０】
機器設定生成部３５４は、表示部３５１からの入力情報を基に、処理実行部３５２の指示に従って機器設定を生成するソフトウェアである。通信部３５５は、機器設定管理サーバ１０２に対して、機器設定生成部３５４が生成した機器設定を送信したり、機器設定管理サーバ１０２に保持されている機器設定を取得したりするソフトウェアである。
なお、クライアントコンピュータで動作する、Ｗｅｂアプリケーションにアクセスするネイティブアプリケーションは、機器設定編集プログラム３５０に限定されるものではなく、Ｗｅｂブラウザ３００と連携可能なネイティブアプリケーションであればよい。
【００３１】
図４（Ａ）は、機器設定管理サーバ１０２のソフトウェア構成の例を示す図である。
図４（Ａ）に示すように、機器設定管理サーバ１０２では、機器設定管理プログラム４００とデータ格納部４０６が機能する。これらは、機器設定管理サーバ１０２のＣＰＵ２５１がプログラムを実行することにより実現される機能に対応する。
【００３２】
機器設定管理プログラム４００は、処理実行部４０１、プレゼンテーション部４０２、通信部４０３、機器設定管理部４０４、コード管理部４０５を有するＷｅｂアプリケーションである。
【００３３】
処理実行部４０１は、通信部４０３が受信するリクエスト内容にしたがって、機器設定管理部４０４やコード管理部４０５に対して、機器設定や図５を用いて後述するコードの格納、削除、更新、取得等の処理を指示するソフトウェアである。
プレゼンテーション部４０２は、後述する通信部４０３を介して受け取ったページ取得要求などに応じてＨＴＭＬ文書を作成するソフトウェアである。
【００３４】
通信部４０３は、外部機器からのＨＴＴＰリクエストメッセージを受信し、処理実行部４０１やプレゼンテーション部４０２にリクエストの内容を通知するソフトウェアである。また、通信部４０３は、Ｗｅｂサーバ機能を有しており、処理実行部４０１やプレゼンテーション部４０２からの要求を受けてＨＴＴＰのレスポンスメッセージを外部機器に送信する。
【００３５】
機器設定管理部４０４は、処理実行部４０１の指示に従い、後述するデータ格納部４０６に対して機器設定の格納、削除、更新を行うソフトウェアである。また、機器設定管理部４０４は、データ格納部４０６から機器設定の取得などを行う。
コード管理部４０５は、処理実行部４０１の指示に従い、コードの新規発行およびデータ格納部４０６に対してコードの格納、削除、更新を行うソフトウェアである。また、コード管理部４０５は、データ格納部４０６からコードの取得などを行う。
【００３６】
データ格納部４０６は、機器設定管理サーバ１０２で動作するデータベースである。なお、本実施例では、機器設定管理サーバ１０２にデータ格納部４０６が構成されているが、機器設定管理プログラム４００と連携できるようになっていれば、別のサーバにデータ格納部４０６が配置されるような構成でもよい。データ格納部４０６で管理するデータの内容については図５を用いて説明する。
【００３７】
図４（Ｂ）は、認証サーバ１０３のソフトウェア構成を例示する図である。
図４（Ｂ）に示すように、認証サーバ１０３では、認証管理プログラム４５０とデータ格納部４５６が機能する。これらは、認証サーバ１０３のＣＰＵ２５１がプログラムを実行することにより実現される機能に対応する。
【００３８】
認証管理プログラム４５０は、処理実行部４５１、プレゼンテーション部４５２、通信部４５３、ユーザ情報管理部４５４、トークン管理部４５５を有するＷｅｂアプリケーションである。
【００３９】
処理実行部４５１は、通信部４５３が受信するリクエスト内容にしたがって、ユーザ情報管理部４５４やトークン管理部４５５に対して、図５を用いて後述するユーザ情報やトークンの格納、削除、更新、取得等の処理を指示するソフトウェアである。
プレゼンテーション部４５２は、後述する通信部４５３を介して受け取ったページ取得要求などに応じて認証を受け付けるＨＴＭＬ文書等を作成するソフトウェアである。
【００４０】
通信部４５３は、外部機器からのＨＴＴＰリクエストメッセージを受信し処理実行部４５１やプレゼンテーション部４５２にリクエストの内容を通知するソフトウェアである。また、通信部４５３は、Ｗｅｂサーバ機能を有しており、処理実行部４５１やプレゼンテーション部４５２からの要求を受けてＨＴＴＰのレスポンスメッセージを外部機器に送信する。
【００４１】
ユーザ情報管理部４５４は、処理実行部４５１の指示に従い、後述するデータ格納部４５６に対してユーザ情報の格納、削除、更新を行うソフトウェアである。また、ユーザ情報管理部４５４は、データ格納部４５６からユーザ情報の取得などを行う。さらに、ユーザ情報管理部４５４は、処理実行部４５１からユーザＩＤとパスワードから成る認証情報を受け取り、認証情報が正しいかを判断する。
【００４２】
トークン管理部４５５は、処理実行部４５１の指示に従い、トークンの新規発行およびデータ格納部４５６に対してトークンの格納、削除、更新を行うソフトウェアである。また、トークン管理部４５５は、データ格納部４５６からトークンの取得などを行う。
【００４３】
データ格納部４５６は、認証サーバ１０３で動作するデータベースである。なお、本実施例では、認証サーバ１０３にデータ格納部４５６が構成されているが、認証管理プログラム４５０と連携できるようになっていれば別のサーバにデータ格納部４５６が配置されるような構成でもよい。データ格納部４５６で管理するデータの内容については図５を用いて説明する。
【００４４】
＜テーブル群＞
図５（Ａ）、図５（Ｂ）は、機器設定管理サーバ１０２のデータ格納部４０６で管理するテーブルの一例である。
【００４５】
図５（Ａ）は、機器設定管理テーブル５００を例示するものである。
機器設定管理テーブル５００は、機器設定の内容を格納しているテーブルであり、カラム５０１〜カラム５０４で構成される。１レコードが１つの機器設定を表している。
【００４６】
カラム５０１は、機器設定ＩＤを表している。機器設定ＩＤは、機器設定を一意に識別するための識別子である。カラム５０２は、機器設定の名称を表している。カラム５０３は、機器設定の更新日時を表している。カラム５０４は、機器設定の実体を表している。なお、本実施例では、機器設定の実体をカラム５０４に格納しているが、カラム５０４には機器設定の実体へのパスのみを格納しておき、機器設定の実体は別の場所にファイルとして置くような構成でもよい。
【００４７】
図５（Ｂ）は、コード管理テーブル５２０を例示するものである。
コード管理テーブル５２０は、カラム５２１〜カラム５２４で構成される。
【００４８】
カラム５２１は、コードを表している。本コードは、認証を行った後に機器設定管理プログラム４００のコード管理部４０５により発行されるものである。該発行されるコードは、ユニークなコード（固有のコード）である。コード発行の処理については、図９を用いて後述する。カラム５２２は、ユーザＩＤを表している。カラム５２３は、トークンを表している。トークンは、認証管理プログラム４５０で認証を行った際に、認証管理プログラム４５０のトークン管理部４５５によって発行されるものである。認証管理プログラムによって発行されたトークンが機器設定管理サーバ１０２に渡るまでの処理は、図７、図１１を用いて後述する。カラム５２４は、カラム５２３に格納されているトークンでの最終アクセス日時を表している。
【００４９】
図５（Ｃ）、図５（Ｄ）は、認証サーバ１０３のデータ格納部４５６で管理するテーブルを例示するものである。
【００５０】
図５（Ｃ）は、ユーザ情報管理テーブル５５０を例示するものである。
ユーザ情報管理テーブル５５０は、ユーザ情報を格納しているテーブルであり、カラム５５１〜カラム５５４で構成される。１レコードが１つのユーザ情報を表している。
【００５１】
カラム５５１は、ユーザＩＤを表している。ユーザＩＤは、ユーザ情報を一意に識別するための識別子である。カラム５５２は、パスワードを表している。カラム５５３は、ユーザ名を表している。カラム５５４は、ユーザの表示言語を表している。なお、本例では、カラム５５１〜カラム５５４を説明するが、その他に、住所等のようにユーザに関する情報を管理するカラムを有するように構成してもよい。
【００５２】
図５（Ｄ）は、トークン管理テーブル５７０を表している。
トークン管理テーブル５７０は、トークンに関する情報を格納しているテーブルであり、カラム５７１〜カラム５７２で構成される。
【００５３】
カラム５７１は、トークンを表しており、認証管理プログラム４５０で認証を行った際に、認証管理プログラム４５０のトークン管理部４５５によって発行される。カラム５７２は、ユーザＩＤであり、カラム５７１のトークンがどのユーザに関するものであるかを表している。カラム５７３は、カラム５７１に格納されているトークンでの最終アクセス日時を表している。
【００５４】
＜機器設定一覧ページの表示処理＞
以下、図６〜図１０を用いて、Ｗｅｂブラウザ３００が、機器設定管理プログラム４００にアクセスして、機器設定一覧ページを表示するまでの処理を説明する。
図６は、Ｗｅｂブラウザ３００が機器設定管理サーバ１０２に初回アクセスしたときの処理を例示するシーケンス図である。このシーケンスにおいて、Ｗｅｂブラウザ３００の初回アクセス時に、機器設定管理サーバ１０２がコードを発行する。コードを発行する詳細な処理については図９を用いて後述する。なお、図６及び後述する図１１に示すクライアントコンピュータ１０１の処理は、クライアントコンピュータ１０１のＣＰＵ２０１が、ＨＤＤ２０４等に記憶されるプログラムを必要に応じてＲＡＭ２０３にロードして実行することにより実現される。また、同じく機器設定管理サーバ１０２の処理は、機器設定管理サーバ１０２のＣＰＵ２５１が、ＨＤＤ２５４等に記憶されるプログラムを必要に応じてＲＡＭ２５３にロードして実行することにより実現される。また、同じく認証サーバ１０３の処理は、認証サーバ１０３のＣＰＵ２５１が、ＨＤＤ２５４等に記憶されるプログラムを必要に応じてＲＡＭ２５３にロードして実行することにより実現される。
【００５５】
まず、Ｗｅｂブラウザ３００の表示部３０１が、機器設定一覧ページのＵＲＬ（Uniform Resource Locator）指定のユーザ操作を受け付けると、Ｓ６０１に遷移する。
Ｓ６０１において、Ｗｅｂブラウザ３００の通信部３０４は、機器設定管理サーバ１０２の機器設定管理プログラム４００に対して、機器設定一覧ページをＨＴＴＰのＧＥＴコマンドで要求する。この要求を、機器設定管理プログラム４００が受け取る。なお、本要求時点では、まだ認証が実施されていないため、ＨＴＴＰのＧＥＴコマンドにはトークンが付加されていない。機器設定管理プログラム４００の処理実行部４０１が、機器設定一覧ページの要求にはトークンが付加されていないことを判断する。そして、機器設定管理プログラム４００の通信部４０３が、Ｗｅｂブラウザ３００に対して、認証ページへのリダイレクトの要求を行う。この要求を、Ｗｅｂブラウザ３００が受け取る。
【００５６】
Ｓ６０２において、Ｗｅｂブラウザ３００の通信部３０４は、リダイレクトにより認証サーバ１０３の認証管理プログラム４５０に対して、認証ページの要求を行う。この要求を認証管理プログラム４５０が受け取る。
Ｓ６０３において、認証管理プログラム４５０のプレゼンテーション部４５２は、認証ページを作成する。
Ｓ６０４において、認証管理プログラム４５０の通信部４５３は、Ｗｅｂブラウザ３００に対して認証ページを応答する。この応答をＷｅｂブラウザ３００が受け取る。
【００５７】
Ｓ６０５において、Ｗｅｂブラウザ３００の表示部３０１は、受信した認証ページを表示する。ここで、図７を用いて、Ｓ６０５でＷｅｂブラウザ３００の表示部３０１が表示する認証ページのＵＩの一例について説明する。
【００５８】
図７は、認証ページを表示するＷｅｂブラウザのＵＩを例示する図である。
認証ページ７００は、テキストボックス７０１、７０２、および、ボタン７０３を有する。
【００５９】
テキストボックス７０１は、ユーザＩＤの入力を受け付けるものである。テキストボックス７０２は、パスワードの入力を受け付けるものである。ボタン７０３は、認証を行うためのボタンである。表示部３０１は、ボタン７０３が押下されたことを検知すると、テキストボックス７０１、７０２に入力されているユーザＩＤとパスワードから成る認証情報を通信部３０４に渡す。通信部３０４は、該渡された認証情報を用いて認証サーバ１０３の認証管理プログラム４５０に認証の要求を行う。
【００６０】
以下、図６の説明に戻る。
Ｗｅｂブラウザ３００の表示部３０１が、ボタン７０３を押下されたことを検知すると、Ｓ６０６の処理に遷移する。Ｓ６０６において、Ｗｅｂブラウザ３００の通信部３０４は、認証サーバ１０３の認証管理プログラム４５０に認証の要求を行う。この要求を認証管理プログラム４５０が受け取る。認証の要求には、テキストボックス７０１、７０２に入力されている認証情報が含まれる。
Ｓ６０７において、認証サーバ１０３の認証管理プログラム４５０は、上記Ｓ６０６で受信した認証要求に対応する認証処理を実施する。ここで、図８（Ａ）を用いて、認証管理プログラム４５０が実行するＳ６０７の認証処理について説明する。
【００６１】
図８（Ａ）は、認証管理プログラム４５０が実行する認証処理を例示するフローチャートである。このフローチャートの処理は、認証サーバ１０３のＣＰＵ２５１が、ＨＤＤ２５４等に記憶されるプログラムを必要に応じてＲＡＭ２５３にロードして実行することにより実現される。
【００６２】
Ｓ８０１において、認証サーバ１０３の処理実行部４５１は、認証要求に含まれる認証情報を取り出し、Ｓ８０２に遷移する。
Ｓ８０２において、ユーザ情報管理部４５４は、処理実行部４５１から受け取った認証情報が合っているかを判断する。具体的には、ユーザ情報管理部４５４は、ユーザ情報管理テーブル５５０（図５（Ｃ））のカラム５５１、カラム５５２のユーザＩＤとパスワードが認証情報と一致する（認証情報が合っている）かを判断する。
【００６３】
そして、認証情報が合っていないと判定した場合（Ｓ８０２でＮｏの場合）、ユーザ情報管理部４５４は、Ｓ８０５に遷移する。Ｓ８０５において、処理実行部４５１は、認証結果をエラーとして、本フローチャートの処理を終了する。
【００６４】
一方、上記Ｓ８０２において、認証情報が合っていると判定した場合（Ｓ８０２でＹｅｓの場合）、Ｓ８０３に遷移する。
Ｓ８０３において、トークン管理部４５５は、トークンを新規に発行し、該発行したトークン、ユーザＩＤ、最終アクセス日時を、トークン管理テーブル５７０に格納する。なお、最終アクセス日時は、Ｓ８０３の処理を実行するときの現在日時とする。
次に、Ｓ８０４において、処理実行部４５１は、認証結果を成功とし、結果にはトークンを付加して、本フローチャートの処理を終了する。
以上が、認証管理プログラム４５０が実行する認証処理である。
【００６５】
以下、図６の説明に戻る。なお、図６では、認証情報が正しかった場合について説明する。つまり、図８（Ａ）のＳ８０２での判断によりＳ８０３に遷移した場合について説明する。
【００６６】
Ｓ６０８において、認証管理プログラム４５０の通信部４５３は、Ｗｅｂブラウザ３００に対して認証結果を応答する。この応答をＷｅｂブラウザ３００が受け取る。この認証結果にはトークンが含まれる。
【００６７】
次に、Ｓ６０９において、Ｗｅｂブラウザ３００の通信部３０４は、上記Ｓ６０１のときと同様に、機器設定管理サーバ１０２の機器設定管理プログラム４００に対して機器設定一覧ページの要求を行う。この要求を機器設定管理プログラム４００が受け取る。なお、上記Ｓ６０１の処理と異なるのは、Ｓ６０９の処理では、機器設定一覧ページの要求に、上記Ｓ６０８で取得したトークンを含める点である。
【００６８】
Ｓ６１０において、機器設定管理プログラム４００の通信部４０３は、機器設定一覧ページの要求にトークンが付加されていると判断し、認証サーバ１０３の認証管理プログラム４５０に、上記Ｓ６０９で受信したトークンの検証を要求する。この要求を認証管理プログラム４５０が受け取る。
【００６９】
Ｓ６１１において、認証サーバ１０３の認証管理プログラム４５０は、上記Ｓ６１０で受信したトークンの検証処理を行う。ここで、図８（Ｂ）を用いて、認証サーバ１０３の認証管理プログラム４５０のトークンの検証処理について説明する。
【００７０】
図８（Ｂ）は、認証管理プログラム４５０が実行するトークンの検証処理を例示するフローチャートである。このフローチャートの処理は、認証サーバ１０３のＣＰＵ２５１が、ＨＤＤ２５４等に記憶されるプログラムを必要に応じてＲＡＭ２５３にロードして実行することにより実現される。
【００７１】
Ｓ８５１において、処理実行部４５１は、トークンの検証要求に含まれるトークンを取り出し、Ｓ８５２に遷移する。
Ｓ８５２において、トークン管理部４５５は、処理実行部４５１から受け取ったトークンが有効であるかを判断する。具体的には、トークン管理部４５５は、処理実行部４５１から受け取ったトークンが、トークン管理テーブル５７０にあり、かつ、最終アクセス日時が、現在日時から所定時間前以内である場合に有効と判断し、それ以外の場合に無効と判断する。所定時間前とは、例えば１時間前などである。
【００７２】
そして、トークンが有効でない（無効である）と判定した場合（Ｓ８５２でＮｏの場合）、Ｓ８５５に遷移する。
Ｓ８５５において、処理実行部４５１は、トークンの検証結果をエラーとして、本フローチャートの処理を終了する。
【００７３】
一方、上記Ｓ８５２において、トークンが有効であると判定した場合（Ｓ８５２でＹｅｓの場合）、Ｓ８５３に遷移する。
Ｓ８５３において、トークン管理部４５５は、トークン管理テーブル５７０の該当のトークンの最終アクセス日時を現在日時に更新する。これにより、トークンの有効期間が延長される。
次に、Ｓ８５４において、処理実行部４５１は、トークンの検証結果を成功として、本フローチャートの処理を終了する。
【００７４】
以上が、認証管理プログラム４５０が実行するトークン検証処理である。
以下、図６の説明に戻る。なお、図６では、トークンが有効であった場合について説明する。つまり、図８（Ｂ）のＳ８５２での判断によりＳ８５３に遷移した場合である。
【００７５】
Ｓ６１２において、認証管理プログラム４５０の通信部４５３は、トークンの検証結果を機器設定管理サーバ１０２の機器設定管理プログラム４００に応答する。この応答を機器設定管理プログラム４００が受け取る。
【００７６】
Ｓ６１３において、機器設定管理プログラム４００の通信部４０３は、認証サーバ１０３の認証管理プログラム４５０に対して、上記トークンを付加してユーザ情報の取得要求を行う。この要求を認証管理プログラム４５０が受け取る。ユーザ情報の取得要求を受信した認証管理プログラム４５０では、トークンから特定されるユーザＩＤに紐付くユーザ情報を、データ格納部４５６から取得する。
【００７７】
Ｓ６１４において、認証管理プログラム４５０の通信部４５３は、機器設定管理サーバ１０２の機器設定管理プログラム４００に、上記Ｓ６１３で取得したユーザ情報を応答する。この応答を機器設定管理プログラム４００が受け取る。
Ｓ６１５において、機器設定管理サーバ１０２の機器設定管理プログラム４００は、コードの発行と検証の処理を実行する。ここで、図９を用いて機器設定管理サーバ１０２の機器設定管理プログラム４００におけるコードの発行と検証の処理について説明する。
【００７８】
図９は、機器設定管理プログラム４００が実行するコードの発行と検証の処理を例示するフローチャートである。このフローチャートの処理は、機器設定管理サーバ１０２のＣＰＵ２５１が、ＨＤＤ２５４等に記憶されるプログラムを必要に応じてＲＡＭ２５３にロードして実行することにより実現される。
【００７９】
Ｓ９０１において、機器設定管理サーバ１０２の処理実行部４０１は、クライアントコンピュータ１０１などの外部装置からの要求にコードが含まれるかを判断する。図６の処理を例にすると、Ｓ６０９の機器設定一覧ページの要求にコードが含まれていたかを判断する。そして、コードが含まれていなかったと判断した場合（Ｓ９０１でＮｏの場合）、Ｓ９１２に遷移する。なお、図６のＳ６０９の要求にはコードが含まれていないため、Ｓ６１５で実行される場合にはＳ９１２に遷移する。
【００８０】
Ｓ９１２において、コード管理部４０５は、コードを新規に発行して、Ｓ９１３に遷移する。
Ｓ９１３において、コード管理部４０５は、上記Ｓ９１２で発行したコードと、図６のＳ６１４で取得したユーザ情報に含まれるユーザＩＤと、外部装置からの要求に含まれていたトークンと、最終アクセス日時とを紐付けて、コード管理テーブル５２０（図５（Ｂ））に格納して、本フローチャートの処理を終了する。
一方、上記Ｓ９０１において、コードが含まれていたと判断した場合（Ｓ９０１でＹｅｓの場合）、Ｓ９０２に遷移する。なお、図１１を用いて後述するが、Ｓ１１０６の要求にはコードが含まれているため、Ｓ１１１２で実行される場合にはＳ９０２に遷移する。以下、Ｓ９０２〜Ｓ９１１の処理については、図１１のＳ１１１２を説明する際に説明する。
【００８１】
以上が、機器設定管理プログラム４００が実行するコードの発行と検証の処理である。以下、図６の説明に戻る。
Ｓ６１６において、機器設定管理プログラム４００のプレゼンテーション部４０２は、機器設定一覧ページを生成する。
ここで、図１０（Ａ）を用いて、Ｓ６１６で機器設定管理プログラム４００のプレゼンテーション部４０２が生成したＨＴＭＬのページ（Ｗｅｂページ）について説明する。
【００８２】
図１０（Ａ）は、機器設定一覧ページのＨＴＭＬを例示する図である。
図１０（Ａ）において、ＨＴＭＬ１０００は、機器設定一覧ページを表している。
＜table＞タグ１００１は、テーブルであり、機器設定の一覧を表している。＜table＞タグ１００１で表している機器設定一覧の機器設定は機器設定管理テーブル５００に格納されている機器設定である。
【００８３】
＜td＞タグ１００２は、機器設定ＩＤがD001である機器設定の機器設定名を表している。機器設定名には＜a＞タグでリンクが付加されている。そのリンクは、「dst://dst/app?id="D001"&code="Code001"」であり、クライアントコンピュータ１０１の制御部３７０が処理可能なコマンドである。「dst://dst/app」は、機器設定編集プログラム３５０を起動するためのコマンドである。「?」以降は、起動時に機器設定編集プログラム３５０に渡すパラメーターを示している。「id="D001"」は、機器設定ＩＤを表しており、D001が機器設定編集プログラム３５０に渡されることを表している。「code="Code001"」は、コードを表しており、Code001が機器設定編集プログラム３５０に渡されることを表している。
【００８４】
＜td＞タグ１００３は、機器設定ＩＤがD002である機器設定の機器設定名を表している。機器設定名には＜a＞タグでリンクが付加されている。＜td＞タグ１００１のリンクと異なるのは、機器設定編集プログラム３５０にパラメーターとして渡す機器設定ＩＤがD002である点である。機器設定編集プログラム３５０にパラメーターとして渡すコードは＜td＞タグ１００１のリンクと同じで、Code001である。
【００８５】
＜td＞タグ１００４は、機器設定ＩＤがD003である機器設定の機器設定名を表している。機器設定名には＜a＞タグでリンクが付加されている。＜td＞タグ１００１のリンクと異なるのは、機器設定編集プログラム３５０にパラメーターとして渡す機器設定ＩＤがD003である点である。
【００８６】
このように、機器設定管理サーバ１０２は、機器設定編集プログラム３５０を起動するためのコマンドと図９のＳ９１２で発行したコードを含めたＷｅｂページを、Ｗｅｂブラウザ３００に応答する。
【００８７】
再び、図６の説明に戻る。
Ｓ６１７において、機器設定管理プログラム４００の通信部４０３は、クライアントコンピュータ１０１のＷｅｂブラウザ３００に機器設定一覧ページを応答する。この応答をＷｅｂブラウザ３００が受け取る。
Ｓ６１８において、Ｗｅｂブラウザ３００の表示部３０１は、上記Ｓ６１７で受信した応答に基づいて、機器設定一覧ページを表示する。
【００８８】
図１０（Ｂ）は、Ｓ６１８でＷｅｂブラウザ３００の表示部３０１が表示する機器設定一覧ページのＵＩの一例を示す図である。
図１０（Ｂ）において、ＵＩ１０５０で表示するテーブルは、カラム１０５１〜カラム１０５２から成る。
【００８９】
カラム１０５１は、機器設定ＩＤを表している。カラム１０５２は機器設定名を表しており、各機器設定名にはリンクが付与されている。このリンクは機器設定を編集するためのリンクであり、本リンクが押下されると、制御部３７０が機器設定編集プログラム３５０を起動し、押下したリンクの機器設定の編集画面が表示される。複数のリンクを押下することで、複数の機器設定の編集を行うことも可能である。カラム１０５３は、機器設定の更新日時を表している。
以上までが、Ｗｅｂブラウザ３００が、機器設定管理プログラム４００にアクセスして、機器設定一覧ページを表示するまでの処理である。
【００９０】
＜機器設定の編集画面の表示処理＞
次に、機器設定編集プログラム３５０の表示部３５１が機器設定の編集画面を表示するまでの処理を図１１〜図１３を用いて説明する。
図１１は、機器設定編集プログラム３５０が機器設定管理サーバ１０２に初回アクセスしたときの処理を示したシーケンス図である。このシーケンスでは、機器設定編集プログラム３５０が機器設定管理サーバ１０２に初回アクセスした時に、Ｗｅｂブラウザ３００で機器設定管理サーバ１０２にアクセスした際のトークンの有効期間も更新する。これらの処理を、図１１を用いて説明する。
【００９１】
図１１の処理シーケンスは、図１０で説明したＵＩ１０５０のカラム１０５２のいずれかが、ユーザにより押下されたことをＷｅｂブラウザ３００の表示部３０１が検知することに開始する。
【００９２】
まず、Ｓ１１０１において、Ｗｅｂブラウザ３００の表示部３０１は、制御部３７０を介して、機器設定編集プログラム３５０に起動要求を行う。より具体的には、Ｗｅｂブラウザ３００の表示部３０１は、図１０（Ａ）で説明した＜a＞タグで記載されたリンクを制御部３７０に伝える。制御部３７０は、前述したリンクのコマンドを実行し機器設定編集プログラム３５０の起動を行う。機器設定編集プログラム３５０を起動する際、制御部３７０は、リンクに記載された機器設定ＩＤとコードを機器設定編集プログラム３５０に渡す。
【００９３】
起動された機器設定編集プログラム３５０では、Ｓ１１０２において、表示部３５１が、認証画面を表示する。
ここで、図１２を用いて、Ｓ１１０２で機器設定編集プログラム３５０の表示部３５１が表示する認証画面のＵＩの一例について説明する。
図１２は、認証画面を表示する機器設定編集プログラムのＵＩを例示する図である。
【００９４】
認証画面１２００は、テキストボックス１２０１、１２０２、および、ボタン１２０３を有する。テキストボックス１２０１は、ユーザＩＤの入力を受け付けるものである。テキストボックス１２０２は、パスワードの入力を受け付けるものである。ボタン１２０３は、認証を行うためのものである。表示部３５１は、ボタン１２０３が押下されたことを検知すると、テキストボックス１２０１、１２０２に入力されているユーザＩＤとパスワードから成る認証情報を通信部３５５に渡す。通信部３５５は、渡された認証情報を用いて認証サーバ１０３の認証管理プログラム４５０に認証の要求を行う。
【００９５】
以下、図１１の説明に戻る。
表示部３５１が、ボタン１２０３を押下されたことを検知すると、Ｓ１１０３の処理に遷移する。
Ｓ１１０３において、機器設定編集プログラム３５０の通信部３５５は、認証サーバ１０３の認証管理プログラム４５０に認証の要求を行う。この要求を認証管理プログラム４５０が受け取る。認証の要求にはテキストボックス１２０１、１２０２に入力されていた認証情報が含まれる。
【００９６】
Ｓ１１０４において、認証サーバ１０３の認証管理プログラム４５０は、上記Ｓ１１０３で受け取った認証の要求に対応する認証処理を行う。なお、Ｓ１１０４で実行される認証処理は、図８（Ａ）で説明した処理と同じであるため、説明を省略する。また、図１１では、認証情報が正しかった場合について説明する。つまり、図８（Ａ）のＳ８０２での判断によりＳ８０３に遷移した場合について説明する。
【００９７】
Ｓ１１０５において、認証管理プログラム４５０の通信部４５３は、クライアントコンピュータ１０１の機器設定編集プログラム３５０に対して、認証結果の応答を行う。この応答を機器設定編集プログラム３５０が受け取る。
Ｓ１１０６において、機器設定編集プログラム３５０の通信部３５５は、機器設定管理サーバ１０２の機器設定管理プログラム４００に機器設定の実体の取得要求を行う。この要求を機器設定管理プログラム４００が受け取る。なお、機器設定の実体の取得要求には、上記Ｓ１１０１の機器設定編集プログラム３５０の起動時に渡された機器設定ＩＤ、および、コードが含まれる。また、上記Ｓ１１０５で受信した認証結果に含まれるトークンが含まれる。
【００９８】
Ｓ１１０７において、機器設定管理プログラム４００の通信部４０３は、認証サーバ１０３の認証管理プログラム４５０に、Ｓ１１０６で受信したトークンの検証を要求する。この要求を認証管理プログラム４５０が受け取る。
【００９９】
Ｓ１１０８において、認証サーバ１０３の認証管理プログラム４５０は、トークンの検証処理を行う。Ｓ１１０８で実行されるトークンの検証処理は、図８（Ｂ）を用いて説明した処理と同じであるため、説明を省略する。なお、図１２では、トークンが有効であった場合について説明する。つまり、Ｓ８５２での判断によりＳ８５３に遷移した場合である。
【０１００】
Ｓ１１０９において、認証管理プログラム４５０の通信部４５３は、トークンの検証結果を機器設定管理サーバ１０２の機器設定管理プログラム４００に応答する。この応答を機器設定管理プログラム４００が受け取る。
【０１０１】
Ｓ１１１０において、機器設定管理プログラム４００の通信部４０３は、認証サーバ１０３の認証管理プログラム４５０に対して、トークンを付加してユーザ情報の取得要求を行う。この要求を認証管理プログラム４５０が受け取る。ユーザ情報の取得要求を受信した認証管理プログラム４５０では、トークンから特定されるユーザＩＤに紐付くユーザ情報をデータ格納部４５６から取得する。
【０１０２】
Ｓ１１１１において、認証管理プログラム４５０の通信部４５３は、機器設定管理サーバ１０２の機器設定管理プログラム４００にユーザ情報を応答する。この応答を、機器設定管理プログラム４００が受け取る。
【０１０３】
Ｓ１１１２において、機器設定管理サーバ１０２の機器設定管理プログラム４００は、コードの発行と検証の処理を実行する。Ｓ１１１２で実行するコードの発行と検証の処理を、図９を用いて説明する。なお、Ｓ１１１２の処理では、上記Ｓ１１０６の機器設定の取得要求にコードが含まれるため、図９のＳ９０１でＹｅｓと判断され、Ｓ９０２に遷移することになる。ここで、図９のＳ９０１でＹｅｓと判断された場合の処理について説明する。
【０１０４】
図９のＳ９０１において、機器設定管理サーバ１０２の処理実行部４０１が、クライアントコンピュータ１０１などの外部装置からの要求にコードが含まれている判断した場合（Ｓ９０１でＹｅｓの場合）、Ｓ９０２に遷移する。図１１のＳ１１０６の要求にはコードが含まれているため、図１１のＳ１１１２で実行される場合には、Ｓ９０２に遷移する。
【０１０５】
Ｓ９０２において、コード管理部４０５で、外部装置（例えばクライアントコンピュータ１０１）からの要求に含まれていたトークンがコード管理テーブル５２０に存在するかを判断する。そして、トークンがコード管理テーブル５２０に存在すると判断した場合（Ｓ９０２でＹｅｓの場合）、Ｓ９０３に遷移する。
【０１０６】
Ｓ９０３において、コード管理部４０５は、該当のトークンの最終アクセス日時を更新し、Ｓ９０５に遷移する。より具体的には、コード管理部４０５は、コード管理テーブル５２０における該当のトークンのレコードのカラム５２４の最終アクセス日時をトークン検証した日時に更新する。
【０１０７】
一方、上記Ｓ９０２において、トークンがコード管理テーブル５２０に存在しないと判定した場合（Ｓ９０２でＮｏの場合）、Ｓ９０４に遷移する。
Ｓ９０４において、コード管理部４０５は、外部装置からの要求に含まれていたコードとトークン、および、ユーザ情報に含まれるユーザＩＤ、最終アクセス日時を紐付けてコード管理テーブルに格納し、Ｓ９０５に遷移する。なお、ユーザ情報は、例えば図６のＳ６１４や図１１のＳ１１１１等で取得したものを用いる。
【０１０８】
Ｓ９０５において、コード管理部４０５は、外部装置からの要求に含まれていたコードに一致しており、かつ、ユーザＩＤが一致する他のトークンが存在するかを判断する。より具体的には、コード管理部４０５は、外部装置からの要求に含まれていたコード、および、取得したユーザ情報に含まれるユーザＩＤの組み合わせと一致するがトークンが異なる組み合わせが、コード管理テーブル５２０の中に存在するかを確認する。
【０１０９】
そして、コードとユーザＩＤが一致する他のトークンが存在しないと判断した場合（Ｓ９０５でＮｏの場合）、コード管理部４０５は、本フローチャートの処理を終了する。
【０１１０】
一方、コードとユーザＩＤが一致する他のトークンが存在すると判断した場合（Ｓ９０５でＹｅｓの場合）、Ｓ９０６に遷移する。
Ｓ９０６は繰り返しの処理を表す。Ｓ９０６において、機器設定管理プログラム４００は、外部装置からの要求に含まれていたコードと、ユーザＩＤに一致する他のトークンの数だけ、Ｓ９０７〜Ｓ９１１の処理を繰り返すように制御する。つまり、ユーザＩＤに一致する全ての他のトークンに対してＳ９０７〜Ｓ９１１の処理を実行する。まず、機器設定管理プログラム４００は、ユーザＩＤに一致する全ての他のトークンのうち、Ｓ９０７〜Ｓ９１１の処理を未実行の他のトークンを１つ取得し（以下、処理対象の他のトークン）、Ｓ９０７に遷移する。
【０１１１】
Ｓ９０７において、機器設定管理プログラム４００の通信部４０３は、処理実行部４０１の指示により認証サーバ１０３の認証管理プログラム４５０に、処理対象の他のトークンの検証を要求し、Ｓ９０８に遷移する。処理対象の他のトークンの検証の要求を受信した認証サーバ１０３の認証管理プログラム４５０は、図８（Ｂ）で説明したトークン検証処理を実行する。つまり、コードとユーザＩＤが一致する、処理対象の他のトークンが有効である場合には、Ｓ８５３の処理が実行され、有効期間が延長される。また、この処理はコードとユーザＩＤが一致するすべてのトークンに対して実行されるため、コードとユーザＩＤが一致するすべてのトークンの有効期間が延長され、タイムアウトまでの時間が延長されることになる。
【０１１２】
次に、Ｓ９０８において、機器設定管理プログラム４００の通信部４０３は、認証サーバ１０３から、上記Ｓ９０７で要求した処理対象の他のトークンの検証結果を受信したかを監視する。そして、処理対象の他のトークンの検証結果を受信していない場合は、Ｓ９０８の監視を続ける。一方、処理対象の他のトークンの検証結果を受信した場合は、Ｓ９０９に遷移する。
【０１１３】
Ｓ９０９において、処理実行部４０１は、処理対象の他のトークンの検証の結果から他のトークンが有効であるかを判断する。そして、他のトークンが有効であると判断した場合（Ｓ９０９でＹｅｓの場合）、Ｓ９１０に遷移する。
【０１１４】
Ｓ９１０において、コード管理部４０５は、コード管理テーブル５２０における、処理対象の他のトークンの最終アクセス日時を更新し、Ｓ９０６に遷移する。より具体的には、コード管理部４０５は、コード管理テーブル５２０における該当するトークンのレコードのカラム５２４の最終アクセス日時をトークン検証した日時に更新する。
【０１１５】
一方、上記９０９において、処理対象の他のトークンが有効でない（無効である）
と判断した場合（Ｓ９０９でＮｏの場合）、Ｓ９１１に遷移する。
Ｓ９１１において、コード管理部４０５は、コード管理テーブル５２０における、処理対象の他のトークンのレコードを削除し、Ｓ９０６に遷移する。
【０１１６】
上記Ｓ９０６において、機器設定管理プログラム４００は、コードとユーザＩＤが一致する全ての他のトークンのうち、Ｓ９０７〜Ｓ９１１の処理を未実行の他のトークンが存在する場合には、そのうちの１つ取得し（以下、処理対象の他のトークン）、Ｓ９０７に遷移する。一方、Ｓ９０７〜Ｓ９１１の処理を未実行の他のトークンが存在しない場合、すなわち、全ての繰り返しを終えた場合、本フローチャートの処理を終了する。
【０１１７】
なお、上記Ｓ９０５では、コードとユーザＩＤの一致した他のトークンの存在を判断し、また、上記Ｓ９０６では、コードとユーザＩＤの一致した他のトークンについて、それぞれＳ９０６〜Ｓ９１１の処理を実行する構成について説明した。しかし、上記Ｓ９０５では、コードの一致した他のトークンの存在を判断し、また、上記Ｓ９０６では、コードの一致した他のトークンについて、それぞれＳ９０６〜Ｓ９１１の処理を実行するように構成してもよい。
【０１１８】
以上の処理により、コードとユーザＩＤが一致する他のトークンの有効期間も延長されることになる。なお、コードの一致を確認することにより、該機器設定の取得要求の要求元が、Ｗｅｂブラウザ３００のＵＩ操作により起動された機器設定管理プログラム４００であることがわかる。また、ユーザＩＤの一致まで確認することにより、同一ユーザがＷｅｂブラウザ３００と機器設定管理プログラム４００のＵＩを操作していることがわかる。
【０１１９】
以下、図１１の説明に戻る。
Ｓ１１１３において、機器設定管理プログラム４００の機器設定管理部４０４は、上記Ｓ１１０６の機器設定の取得要求に含まれていた機器設定ＩＤに一致する機器設定の実体を機器設定管理テーブル５００から取得する。
【０１２０】
次に、Ｓ１１１４において、機器設定管理プログラム４００の通信部４０３は、クライアントコンピュータの機器設定編集プログラム３５０に対して、Ｓ１１１３で取得した機器設定の実体を応答する。この応答を、機器設定編集プログラム３５０が受け取る。そして、Ｓ１１１５において、機器設定編集プログラム３５０の表示部３５１は、上記Ｓ１１１４で受信した機器設定の編集画面（例えば図１３）を表示する。
【０１２１】
図１３は、機器設定編集プログラム３５０の表示部３５１が表示するＵＩである機器設定の編集画面の一例を示す図である。
図１３に示すように、ＵＩ１３００は、テキストボックスやボタンなどのコントロール１３０１〜１３１３を有する。
【０１２２】
ラベル１３０１は、編集対象である機器設定の機器設定ＩＤを表している。
テキストボックス１３０２は、機器設定の名称を設定するためのテキストボックスである。
【０１２３】
ボタン１３０３は、機器に適用可能なファームウェア一覧を取得するためのボタンである。機器設定編集プログラム３５０の表示部３５１は、ボタン１３０３が押下されたことを検知すると、処理実行部３５２に通知する。通信部３５５は、処理実行部３５２からの指示を受けて機器設定管理サーバ１０２にファームウェア一覧の取得要求を行う。本取得要求には、図１１のＳ１１０１で受信したコードと、Ｓ１１０５で取得したトークンを付加する。そのため、図９で説明した機器設定管理サーバ１０２の機器設定管理プログラム４００のコードの発行と検証の処理において、コードとユーザＩＤが一致する他のトークンの有効期間も更新される。
【０１２４】
コンボボックス１３０４は、機器に適用するファームウェアを選択するためのコンボボックスである。コンボボックス１３０４には、前述したボタン１３０３の押下により取得したファームウェアの一覧を表示する。コンボボックス１３０４で選択されているファームウェアが機器に適用する対象のファームウェアとなる。
【０１２５】
ボタン１３０５は、ＩＰアドレス等の機器情報を設定するためのボタンである。表示部３５１は、ボタン１３０５が押下されたことを検知すると、機器情報を設定するための画面（不図示）を表示する。
【０１２６】
ボタン１３０６は、機器に適用可能なアプリケーション一覧を取得するためのボタンである。機器設定編集プログラム３５０の表示部３５１は、ボタン１３０６が押下されたことを検知すると、処理実行部３５２に通知する。通信部３５５は、処理実行部３５２からの指示を受けて機器設定管理サーバ１０２にアプリケーション一覧の取得要求を行う。本取得要求には、ボタン１３０３押下時と同様にＳ１１０１で受信したコードと、Ｓ１１０５で取得したトークンを付加する。そのため、コードとユーザＩＤが一致する他のトークンの有効期間も更新される。
【０１２７】
コンボボックス１３０７は、機器に適用するアプリケーションを選択するためのコンボボックスである。コンボボックス１３０７には、前述したボタン１３０６の押下により取得した機器に適用可能なアプリケーションの一覧を表示する。
【０１２８】
ボタン１３０８は、機器に適用するアプリケーションを追加するためのボタンである。機器設定編集プログラム３５０の表示部３５１は、ボタン１３０８の押下を検知すると、コンボボックス１３０７で選択されているアプリケーションを機器に適用するアプリケーションとして、後述するリスト１３０９に追加する。
【０１２９】
リスト１３０９は、機器に適用するアプリケーションを表すリストである。機器に適用する対象となるアプリケーションを表示する。機器には複数のアプリケーションを適用することが可能である。
ボタン１３１０は、機器に適用するアプリケーションを対象から外すためのボタンである。機器設定編集プログラム３５０の表示部３５１は、ボタン１３１０が押下されたことを検知すると、リスト１３０９で選択されているレコードを削除する。
【０１３０】
ボタン１３１１は、機器設定をＵＳＢストレージ２１２にエクスポートするためのボタンである。機器設定編集プログラム３５０の表示部３５１は、ボタン１３１１ボタンが押下されたことを検知すると、処理実行部３５２に通知する。ストレージ制御部３５３は、処理実行部３５２からの指示を受けてＵＳＢストレージ２１２に機器設定の書き込みを行う。
【０１３１】
ボタン１３１２は、機器設定管理サーバ１０２に機器設定を保存するためのボタンである。機器設定編集プログラム３５０の表示部３５１は、ボタン１３１２が押下されたことを検知すると、処理実行部３５２に通知する。通信部３５５は、処理実行部３５２からの指示を受けて機器設定管理サーバ１０２に機器設定の保存要求を行う。本保存要求には、ボタン１３０３押下時と同様にＳ１１０１で受信したコードと、Ｓ１１０５で取得したトークンを付加する。そのため、コードとユーザＩＤが一致する他のトークンの有効期間も更新される。
【０１３２】
以上までが、機器設定編集プログラム３５０の表示部３５１が機器設定の編集画面を表示するまでの処理である。以降、Ｗｅｂブラウザ３００、機器設定編集プログラム３５０それぞれが、機器設定管理プログラム４００に対する要求にコードを含める。これにより、いずれのアプリケーションからの要求であっても両方のトークンの有効期間が延長される。また、複数の機器設定の編集のために機器設定編集プログラム３５０を複数起動した場合でも同様に、一度認証した後の機器設定管理プログラム４００に対する要求にコードを含めることで、同一コードに紐付けられた他のトークンの有効期間も延長される。
【０１３３】
このような処理により、ネイティブアプリケーションのＵＩと、Ｗｅｂブラウザに表示されるＷｅｂアプリケーションのＵＩを相互に操作するような場合でも、どちらか一方のＵＩを操作している間に他方でタイムアウトが発生することを抑えることができる。
【０１３４】
＜無効なトークンの削除処理＞
次に、機器設定管理サーバ１０２の機器設定管理プログラム４００が管理する無効なトークンの削除について説明する。
図１４は、機器設定管理サーバ１０２の機器設定管理プログラム４００が実行する無効なトークンの削除処理を示したフローチャートである。本処理は、定期的に実行されるようにスケジュールされて実行する処理である。このフローチャートの処理は、機器設定管理サーバ１０２のＣＰＵ２５１が、ＨＤＤ２５４等に記憶されるプログラムを必要に応じてＲＡＭ２５３にロードして実行することにより実現される。
【０１３５】
Ｓ１４０１において、コード管理部４０５は、コード管理テーブル５２０で管理するトークンの中でカラム５２４に格納されている最終アクセス日時が所定期間を過ぎているトークンがあるかを判断する。所定期間は、例えば認証サーバの認証管理プログラム４５０が管理するトークンの有効期間である。
【０１３６】
そして、最終アクセス日時が所定期間を過ぎているトークンがないと判断した場合（Ｓ１４０１でＮｏの場合）、本フローチャートの処理を終了する。
【０１３７】
一方、コード管理テーブル５２０で管理するトークンの中でカラム５２４に格納されている最終アクセス日時が所定期間を過ぎているトークンがあると判断した場合（Ｓ１４０１でＹｅｓの場合）、Ｓ１４０２に遷移する。
【０１３８】
Ｓ１４０２は、繰り返しの処理を表す。Ｓ１４０２において、機器設定管理プログラム４００は、最終アクセス日時が所定期間を過ぎているトークンの数だけ、Ｓ１４０３の処理を繰り返すように制御する。まず、機器設定管理プログラム４００は、最終アクセス日時が所定期間を過ぎているトークンのうち、Ｓ１４０３の処理を未実行のトークンを１つ取得し（以下、処理対象のトークン）、Ｓ１４０３に遷移する。
【０１３９】
Ｓ１４０３において、コード管理部４０５は、最終アクセス日時が所定期間を過ぎている処理対象のトークンを、コード管理テーブル５２０から削除して、Ｓ１４０２に遷移する。
【０１４０】
そして、上記Ｓ１４０２において、機器設定管理プログラム４００は、最終アクセス日時が所定期間を過ぎているトークンのうち、上記Ｓ１４０３の処理を未実行のトークンが存在する場合には、そのうちの１つを処理対象のトークンとし、Ｓ１４０３に遷移する。一方、上記Ｓ１４０３の処理を未実行のトークンが存在しない場合、すなわち、全ての繰り返しを終えた場合、本フローチャートの処理を終了する。
【０１４１】
以上が、無効なトークンの削除処理である。これにより機器設定管理プログラム４００が管理するトークンが無効になった後も残り続けることを防ぐことができる。
【０１４２】
以上のように、機器設定管理サーバ１０２の機器設定管理プログラム４００は、Ｗｅｂブラウザ３００からの認証サーバ１０３により発行されたトークンと機器設定編集プログラム３５０からの認証サービス１０３により発行されたトークンとを紐付けて管理する。そして、Ｗｅｂブラウザ３００または機器設定編集プログラム３５０から要求を受信した場合に、該要求に対応するトークンと紐付けられて管理されている認証情報の検証要求を、認証サーバ１０３に対して行って、そのトークンの有効期間を更新させる構成を有する。このような構成により、Ｗｅｂブラウザ３００、ネイティブアプリケーションである機器設定編集プログラム３５０のどちらのＵＩを操作していても、両方のタイムアウトの発生を抑えることができる。
【０１４３】
なお、上記実施例では、クライアントコンピュータで動作するＷｅｂアプリケーションにアクセスする複数のアプリケーションプログラムの例として、Ｗｅｂブラウザとネイティブアプリケーションを用いる場合を説明した。しかし、この組み合わせに限定されるものではなく、両方がネイティブアプリケーションであってもよい。また、３つ以上のアプリケーションプログラムがＷｅｂアプリケーションにアクセスする構成でもよい。いずれの構成でもあっても、Ｗｅｂアプリケーションにアクセスする複数のアプリケーション（上記例ではＷｅｂブラウザ３００、機器設定編集プログラム３５０）のＵＩを相互に操作することが多い場合でも、どちらか一方のＵＩを操作している間に、他方でタイムアウトが発生してしまうことを抑え、ユーザの利便性を高めることができる。
【０１４４】
なお、上述した各種データの構成及びその内容はこれに限定されるものではなく、用途や目的に応じて、様々な構成や内容で構成されていてもよい。
以上、一実施形態について示したが、本発明は、例えば、システム、装置、方法、プログラムもしくは記憶媒体等としての実施態様をとることが可能である。具体的には、複数の機器から構成されるシステムに適用しても良いし、また、一つの機器からなる装置に適用しても良い。
また、上記各実施例を組み合わせた構成も全て本発明に含まれるものである。
【０１４５】
（その他の実施例）
本発明は、上述の実施例の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
また、本発明は、複数の機器から構成されるシステムに適用しても、１つの機器からなる装置に適用してもよい。
本発明は上記実施例に限定されるものではなく、本発明の趣旨に基づき種々の変形（各実施例の有機的な組合せを含む）が可能であり、それらを本発明の範囲から除外するものではない。即ち、上述した各実施例及びその変形例を組み合わせた構成も全て本発明に含まれるものである。
【符号の説明】
【０１４６】
１０１    クライアントコンピュータ
１０２    機器設定管理サーバ
１０３    認証サーバ
【図１】
2017167954.tif 000003
【図２】
2017167954.tif 000004
【図３】
2017167954.tif 000005
【図４】
2017167954.tif 000006
【図５】
2017167954.tif 000007
【図６】
2017167954.tif 000008
【図７】
2017167954.tif 000009
【図８】
2017167954.tif 000010
【図９】
2017167954.tif 000011
【図１０】
2017167954.tif 000012
【図１１】
2017167954.tif 000013
【図１２】
2017167954.tif 000014
【図１３】
2017167954.tif 000015
【図１４】
2017167954.tif 000016