(57)【要約】【課題】異なった企業が提供した業務を連携させて実行する場合の信頼性を向上する。【解決手段】企業が提供した業務ごとに認証サーバを割当て、障害が発生した場合に認証サーバから送られてくる認証結果を、サービス提供サーバのイベント処理部と企業業務実行部で受け、それぞれ受けた認証結果が一致した場合に、障害の通知を別の業務へ通知する。【選択図】　図１
2004046659.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータによって管理された複数の業務の運用を管理する業務運用管理方法であって、
前記コンピュータは、ある業務で事象が発生した場合に、前記業務によって提供されるサービスと関連付けられた業務の実行に必要な認証サーバを特定し、特定された認証サーバに対して前記事象の情報を送信し、送信した前記事象の情報に対して送られてくる認証の情報に基づいて前記サービスと関連付けられた前記業務の実行内容を変更することを特徴とする業務運用管理方法。
【請求項２】
請求項１の業務運用管理方法において、複数の前記業務は複数のグループに分類され、それぞれのグループごとに特定の認証サーバが対応付けられ、あるグループの業務で発生した事象により他のグループの業務の実行内容を変更する場合に、対応付けられた前記認証サーバへ認証の要求を行うことを特徴とする業務運用管理方法。
【請求項３】
請求項２の業務運用管理方法において、それぞれの業務はグループごとに異なった実行空間によって実行され、前記認証サーバから実行空間を介して送られてきた認証結果と、前記実行空間を介さないで送られてきた認証結果とを照合し、その結果に応じて業務の実行内容を変更することを特徴とする業務運用管理方法。
【請求項４】
請求項３の業務運用管理方法において、前記認証サーバから送られてくる認証結果は暗号化されたものであって、前記実行空間を介して送られてきた認証結果と、前記実行空間を介さないで送られてきた認証結果とは異なった暗号化処理が施されたものであることを特徴とする業務運用管理方法。
【請求項５】
複数のコンピュータで管理された業務の運用を管理する業務運用管理方法であって、
第１のコンピュータによって実行されている第１の業務で事象が発生した場合に前記第１の業務によって提供されるサービスと関連付けられ第２のコンピュータで実行可能な第２の業務の実行に必要な認証サーバを特定し、特定された前記認証サーバから前記第１のコンピュータと前記第２のコンピュータに送られた認証結果とを比較し、比較結果に応じて前記事象を前記第２のコンピュータに送ることを特徴とする業務運用管理方法。
【請求項６】
請求項５の業務運用管理方法において、前記認証サーバから送られてくる認証結果は暗号化された認証結果であって、前記第１のコンピュータと前記第２のコンピュータとは異なった暗号化処理が施された認証結果が送られることを特徴とする業務運用管理方法。
【請求項７】
請求項６の業務運用管理方法において、認証サーバから受け取った認証結果を前記第２のコンピュータによって前記認証サーバから前記第１のコンピュータに送られた認証結果と同じ暗号化処理が施された認証結果を前記第１のコンピュータに送ることを特徴とする業務運用管理方法。
【請求項８】
複数の業務を実行するサービス提供サーバと、認証サーバとを有する業務運用管理システムにおいて、
前記サービス提供サーバは、ある業務でイベントが発生した場合に前記業務によって提供されるサービスから認証が必要な認証サーバを特定し、特定された認証サーバに対してイベントの情報を送信し、送信した前記イベントの情報に対して送られてくる認証の情報に基づいて前記イベントの情報を他の業務に通知することを特徴とする業務運用管理システム。
【請求項９】
業務を実行する複数のサービス提供サーバと、認証サーバとを有する業務運用管理システムにおいて、
第１のサービス提供サーバは、ある業務でイベントが発生した場合に前記業務によって提供されるサービスから認証が必要な認証サーバを特定し、特定された認証サーバに対してイベントの情報を送信し、前記認証サーバから送られてくる認証の情報と第２のサービス提供サーバから送られてくる認証の情報に基づいて前記イベントの情報を他の業務に通知することを特徴とする業務運用管理システム。
【請求項１０】
複数の業務の運用を管理するコンピュータ実行可能な業務運用管理プログラムであって、
ある業務で事象が発生した場合に、前記業務によって提供されるサービスと関連付けられた業務の実行に必要な認証サーバを特定し、特定された認証サーバに対して前記事象の情報を送信し、送信した前記事象の情報に対して送られてくる認証の情報に基づいて前記サービスと関連付けられた前記業務の実行を制御することを特徴とする業務運用管理プログラム。
【請求項１１】
請求項１０の業務運用管理プログラムにおいて、複数の前記業務は複数のグループに分類され、それぞれのグループごとに特定の認証サーバが対応付けられ、あるグループの業務で発生した事象により他のグループの業務の実行内容を変更する場合に、対応付けられた前記認証サーバへ認証の要求を行うことを特徴とする業務運用管理プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、計算機上で実行される業務運用管理システムの認証システムに係り、特に複数企業の業務運用管理システムを統合する場合の認証システムに関するものである。
【０００２】
【従来の技術】
例えば、従来の技術として複数のアプリケーションを１つのコンピュータで実行するものとして特開２００１−２０２２５７号公報に記載された技術がある。
【０００３】
このような技術を基盤として、ネットワークに接続されたコンピュータで複数のアプリケーションを実行できる環境を提供し、ユーザに対してサービスを提供する技術がある。
【０００４】
【発明が解決しようとする課題】
このような環境において、より高度なサービスを提供することを考えると、より多くのアプリケーションを用意して、これらを組み合わせて利用することが考えられる。しかしながら、このサービスを提供する管理者が全てのアプリケーションを提供するといったことは限界がある。
【０００５】
そこで、様々なアプリケーションの提供を受けてサービスを提供することが考えられる。しかしながら、提供を受けたアプリケーションを組み合わせてサービスを提供することを考えると、アプリケーションの信頼性が問題になってくる。つまり、アプリケーションを組み合わせてサービスを提供する場合、あるアプリケーションの処理結果によって次のアプリケーションの処理が変わってしまったり、あるいはアプリケーションの障害の発生によって、次に実行されるアプリケーションの内容が変わってしまう場合がある。それぞれのアプリケーションの信頼性が高い場合には、アプリケーションの障害や処理結果を次のアプリケーションに伝えても良いが、信頼性が低い場合、サービスへの影響が出てしまう。
【０００６】
本発明は、複数のアプリケーションを実行するコンピュータを有するシステムにおいて、アプリケーションの連携の信頼性を向上させたシステムを提供することにある。
【０００７】
【課題を解決するための手段】
上記目的を達成するために、ある業務でイベントが発生した場合に業務によって提供されるサービスと関連付けられた業務から認証が必要な認証サーバを特定し、特定された認証サーバに対してイベントの情報を送信する。送信したイベントの情報に対して送られてくる少なくとも２つの認証の情報を受け取り、この認証の情報に基づいてイベントの情報を他の業務に通知するようにする。
【０００８】
【発明の実施の形態】
図１は、サービスを提供する情報処理システムの構成を示したものである。本システムは、サービスを提供するサービス提供サーバ１００、業務を提供した企業が利用する企業Ａサーバ１２０、企業Ｂサーバ１３０、企業Ｃサーバ１４０とを有している。尚、企業Ａサーバ、企業Ｂサーバ、企業Ｃサーバと区別しない場合には、「企業サーバ」と称して以下説明する。企業Ａサーバ１２０、企業Ｂサーバ１３０、企業Ｃサーバ１４０には、それぞれユーザ端末が接続され、サービス提供サーバ１００のサービスを利用する。また、ユーザ端末をネットワークに直接接続して、サービス提供サーバ１００のサービスを利用してもよい。このようなシステムにおいて、サービス提供サーバ１００は、複数の企業から提供された業務を組み合わせたサービスを提供する。サービスの一例として、例えば資材取引といったものがある。これは、ある企業が提供する資材の発注を行う資材発注業務と、ある企業が提供する資材の注文を受けて資材の配達を管理する販売管理業務とを結びつけたサービスである。これにより、企業間において資材の発注、販売、配達が行われることになる。サービス提供サーバ１００は、これに限らず複数のサービスを提供することができる。尚、ここで業務は、ソフトウェアとして提供される一種のアプリケーションである。
【０００９】
本システムは、このように複数の企業によって提供された業務を組み合わせてサービスを提供するものであり、そのサービスの信頼性をより高くするものである。例えば、先に説明した資材取引といったサービスにおいて、資材発注業務の障害の発生により、引き続き実行される販売管理業務の停止あるいは販売管理業務の実行内容を変更する場合がある。この場合、販売管理業務を提供している企業の認証を行って、障害の通知を行うようにする。より具体的に、企業Ｂサーバ１３０が販売管理業務を提供している場合、サービス提供サーバ１００は障害の発生により企業Ｂサーバ１３０へ認証を依頼する。企業Ｂサーバ１３０は認証を行い、認証に成功すると認証を成功したことを示す認証トークンがサービス提供サーバ１００へ送られる。サービス提供サーバ１００は、この認証トークンを受け取って、障害の通知を販売管理業務へ通知する。このように認証を行った後に障害の発生を通知するようにしているので、信頼性が高いサービスを提供することができる。尚、ここでは障害の発生を例に説明したが、業務の処理結果を次の業務に通知する場合にも認証を行うことでサービスの信頼性をより向上させることができる。
【００１０】
以下、本システムの構成及び動作について具体的に説明する。
【００１１】
サービス提供サーバ１００は、イベント処理部１０１、業務実行制御部１０２、業務登録部１０３、企業Ａ業務実行部１０４、企業Ｂ業務実行部１０７、企業Ｃ業務実行部１１０とを有している。尚、企業Ａ業務実行部１０４、企業Ｂ業務実行部１０７、企業Ｃ業務実行部１１０は例示的に示したものであり、この３つに限られるものではない。また以下説明において、企業Ａ業務実行部１０４、企業Ｂ業務実行部１０７、企業Ｃ業務実行部１１０と区別しない場合は、「企業業務実行部」と称して説明する。
【００１２】
それぞれの企業業務実行部は、業務を実行する業務実行部１０５、１０８、１１１、認証の処理を行う認証処理部１０６、１０９、１１２とを有している。企業業務実行部は、企業ごとに設けられており、利用するメモリの領域を別々にすることによって企業ごとに独立した実行空間を形成している。尚、１つの企業業務実行部では、同じ企業によって提供された複数の業務を実行することができる。
イベント処理部１０１は、ある企業業務実行部から他の企業業務実行部への通知を制御するものである。業務実行制御部１０２は、予め定義されたスケジュールに従って企業業務実行部へ業務の実行を指示するものである。業務登録部１０３は、企業サーバからの要求によって業務を登録する処理を行うものである。
【００１３】
また、サービス提供サーバ１００は、サービスと業務との対応関係を示したサービステーブル１１３、イベントの発生に対して認証が必要な企業サーバを定義した認証テーブル１１４、イベントの発生により生成されるイベントテーブル１１５、企業業務実行部の間での認証の状態を管理するためのトークンテーブル１１６、サービス提供サーバ１００で実行される業務を管理する業務管理テーブル１１７とを有している。
【００１４】
それぞれの企業サーバは、業務処理部１２１、１３１、１４１、業務状態表示部１２２、１３２、１４２、イベント状態表示部１２３、１３３、１４３、認証部１２４、１３４、１４４とを有している。業務処理部は、サービス提供サーバ１００に対して業務の実行を依頼するための処理を行う。業務状態表示部は、サービス提供サーバ１００で実行されているサービス又は業務の状態を表示するものである。イベント表示部は、サービス提供サーバ１００でイベントが発生した場合に、そのイベントを表示するものである。認証部は、サービス提供サーバ１００からの要求によって認証を行うものである。また、企業サーバは、認証に必要な情報が登録された認証テーブル１２５、１３５、１４５を有している。ここで示した企業サーバは、業務の登録処理、業務の実行依頼、認証処理を行うものであるが、後述するように認証だけを行うものであってもよい。この場合の企業サーバは認証部、認証テーブルによって構成される。
【００１５】
図２は、サービステーブルの一例を示したものである。ここでは、サービス名２０１と、そのサービスで実行される業務２０２、企業業務実行部２０３とが登録されている。この図に示されるように企業Ａ業務実行部ではＡ１、Ａ２の業務が、企業Ｂ業務実行部ではＢ１、Ｂ２の業務が、企業Ｃ業務実行部ではＣ１の業務がそれぞれ実行される。また、サービス毎に見ると、サービスＸにより業務Ａ１、Ｂ１、Ｃ１、サービスＹにより業務Ｂ２、Ｃ１、サービスＺにより業務Ａ２、Ｂ２が実行される。サービステーブル１１３は、業務の実行スケジュールも意味しており、サービス毎に業務が実行される順に登録されている。業務実行制御部１０２は、サービスが指定されると、このサービステーブル１１３に登録された企業業務実行部へ業務の実行を通知する。
【００１６】
図３は、認証テーブルの一例を示したものである。認証テーブル１１４は、アプリケーション３０１、業務３０２、認証サーバ３０３とが登録できるようになっている。アプリケーション３０１は、業務の実行が管理されるアプリケーションの名称あるいは識別子が登録されている。ここではサービス管理サーバ１００の業務実行制御部１０２を実行するアプリケーションである。認証サーバ３０３は、認証を行うサーバのアドレスが登録されている。尚、認証が不要の場合は認証サーバ３０３へは登録されない。図３では、業務Ａ１でイベントが発生した場合に、企業Ｂサーバに対して認証を依頼し、業務Ｂ１でイベントが発生した場合に企業Ｃサーバに対して認証を依頼することになる。また、この認証テーブル１１４は企業サーバから登録要求に基づいて業務登録部１０３によって生成される。
【００１７】
図４は、イベントテーブルの一例を示したものである。イベントテーブルは、認証トークン４０１、イベントＩＤ４０２、メッセージ４０３、重要度４０４、日付４０５、業務４０６、企業サーバ４０７、プロダクト４０８、ＩＰアドレス４０９、サービス４１０とが登録される。認証トークン４０１は、認証サーバの認証部により発行された認証トークンが登録されている。認証トークンは、イベントの正当性を示すものである。イベントＩＤ４０２は、個別のイベントに対して一意に与えられたＩＤである。メッセージ４０３は、イベントが発生した業務の状態を示すものである。重要度４０４は、イベントの重要性の度合を示すものである。日付４０５は、イベントの発生した日時を示すものである。業務４０６は、イベントが発生した業務の名称あるいは識別子が登録されている。企業サーバ４０７は、イベントが発生した業務を提供した企業サーバの名称が登録されている。プロダクト４０８は、イベントが発生した業務を実行している企業名を示すものである。ＩＰアドレス４０９は、イベントが発生したサーバのＩＰアドレスを示すものである。イベントが発生した場合、認証トークン４０１を除いたデータが登録される。サービス４１０は、イベントが発生した業務のサービス名が登録される。
【００１８】
図５は、トークンテーブルの一例を示したものである。トークンテーブル１１６は、サービス５０１、認証サーバ５０２、認証トークン５０３、有効期限５０４が登録されている。トークンテーブル１１６は、認証が得られた場合に生成され、有効期限を過ぎると削除される。ここに登録されると、サービスで定義された業務の間でイベントを通知する際に、認証サーバによる認証が不要となる。尚、トークンテーブル１１６に業務を登録してもよい。
【００１９】
図６は、業務管理テーブル１１７の一例を示したものである。業務管理テーブル１１７は、業務６０１、業務が実行される企業業務実行部６０２、業務を提供した企業の名称であるプロダクト６０３、業務を提供した企業サーバ６０４、業務を提供した企業が指定する認証サーバ６０５とが登録される。尚、この図では企業サーバ６０４と認証サーバ６０５とが同じサーバとなっているが、別のサーバでも良い。
【００２０】
以上、サービス提供サーバ１００の各テーブルの構成を示したが、複数のテーブルで重複したデータが登録されている。本実施例では、テーブルの一例を示したもので、それぞれのデータがテーブルに示したように関連付けて管理されていればよい。従って、一つのデータベースにデータを登録しておき、データの関連性だけを管理するテーブルによって構成してもよい。
【００２１】
図７は、企業サーバの認証テーブルの一例を示したものである。認証テーブルは、企業の名称であるプロダクト７０１、企業が利用している企業サーバのアドレス７０２、業務７０３、サービス７０４が登録されている。
【００２２】
このような構成において、イベントが発生した場合の動作について説明する。
【００２３】
図８は、本システムにおいてサービス提供サーバ１００でイベントが発生した時のシステム全体の動作を示したものである。
【００２４】
ここでは、企業Ａ業務実行部１０４で実行されている業務でイベントが発生した場合を例に説明する。
【００２５】
企業Ａ業務実行部１０３の業務実行部１０５は、業務の実行とともに、その業務の実行状態を監視しており、障害が発生するとイベントテーブル１１４を生成する（８０１）。ここでは、認証トークンを除いた情報４０２〜４１０が登録される。次に、業務実行部１０５は、イベントの発生を認証処理部１０６へ通知する（８０２）。イベントの通知を受けた、認証処理部１０６は、イベントテーブル１１５、認証テーブル１１４を参照して、認証が必要な認証サーバを特定する（８０３）。具体的に図３、４に示した認証テーブル１１４、イベントテーブル１１５で説明する。認証処理部１０６は、図４に示したイベントテーブルに登録された業務「Ａ２」から、図３に示した認証テーブルを利用して企業Ｂサーバを認証サーバとして特定する。
【００２６】
次に、認証処理部１０６はトークンテーブル１１６を参照する（８０４）。ここで、イベントテーブルに登録された業務、サービス、処理８０３で特定された認証サーバと同じものがトークンテーブル１１６に登録されていれば、既に認証が行われているので、認証処理部１０６は業務実行部１０５に対してイベントの通知を許可する。トークンテーブル１１６に特定された認証サーバが登録されていない場合には、認証処理部１０６は特定された企業Ｂサーバ１３０に対してイベントテーブルに登録されたデータを送り、認証を要求する（８０５）。認証の要求を受けた企業Ｂサーバ１３０の認証部１３４は認証を行い（８０６）、認証に成功すると認証トークンをサービス提供サーバ１００へ送る（８０７）。企業Ｂサーバ１３０の認証部１３４は、送られてきた業務、サービス、プロダクト、サーバが企業Ｂサーバの認証テーブル１３５に登録されているかを確認することによって認証を行う。尚、認証に失敗すると、その旨をサービス提供サーバ１００に通知する。
【００２７】
サービス提供サーバ１００のイベント処理部１０１は、企業Ｂサーバ１３０から送られてきた認証トークンを受信すると、企業Ｂサーバ１３０に対して認証トークンを受信したことを通知する（８０８）。企業Ｂサーバ１３０は、認証トークンを受信した通知を受けると、再び認証トークンをサービス提供サーバ１００へ送る（８０９）。サービス提供サーバ１００の企業Ａ業務実行部１０３の認証処理部１０６は送られてきた認証トークンを含んだイベントをイベント処理部１０１へ送る（８１０）。ここでは、認証トークンと、イベントＩＤとをイベント処理部１０１へ送る。イベント処理部１０１では、イベントＩＤと共に送られてきた認証トークンと、企業サーバから受取った認証トークンとを照合し（８１１）、一致した場合にトークンテーブル１１５を作成する（８１２）。また、イベント処理部１０１は、企業Ａ業務実行部１０３の業務実行部１０５にイベントの通知を許可する（８１３）。通知を受けた業務実行部１０５は、認証トークンをイベントテーブルに登録しする。次に、サービステーブル１１３を参照し、企業Ｂ業務実行部１０７へイベントＩＤを送る。尚、イベントＩＤを受取った企業Ｂ業務実行部１０７の業務実行部１０８は、イベントＩＤにより業務の実行を制御する。例えば、イベントＩＤに基づいて実行する業務の内容を変更したり、業務を停止させたりする。
【００２８】
また、イベントテーブルの内容については、業務実行部１０５により業務管理テーブル１１７が参照され、企業Ａサーバ１２０に送られる。企業Ａサーバは送られてきたイベントテーブルの内容をイベント状態表示部１２３により画面に表示する。
【００２９】
図９は、認証処理部の処理を示した図である。
【００３０】
認証処理部１０６は、イベントの通知を受けると処理を開始する。認証処理部１０６は、イベントテーブル１１５、認証テーブル１１４を参照して、認証が必要な認証サーバを特定する（９０１）。次に、認証処理部１０６はトークンテーブル１１６を参照し、トークンテーブル１１６に特定された認証サーバが登録されていれば（処理９０２で「Ｙ」）、業務実行部１０５に対してイベントの通知を指示する（９０３）。トークンテーブル１１６に特定された認証サーバが登録されていない場合には（処理９０２で「Ｎ」）、認証処理部１０６は特定された企業Ｂサーバ１３０に対してイベントテーブルに登録されたデータを送り、認証を要求し（９０４）、イベント処理部１０１に対して認証要求した旨を通知する（９０５）。認証トークンを受けると（処理９０６で「Ｙ」）、認証処理部１０６は送られてきた認証トークンを含んだイベントをイベント処理部１０１へ送り（９０７）、処理を終了する。認証に失敗した旨の通知を受けた場合には（処理９０６で「Ｎ」）、そのまま処理を終了する。
【００３１】
図１０は、イベント処理部の処理を示した図である。
【００３２】
イベント処理部１０１は、認証処理部１０６からの通知によって処理を開始する。イベント処理部１０１は、企業Ｂサーバ１３０から認証トークンを受け取ると（処理１００１で「Ｙ」）、認証トークンを受信した旨の通知を企業Ｂサーバ１３０へ通知する（１００２）。次に、認証処理部１０６から送られてくる認証トークンを待つ。認証処理部１０６からの認証トークンを受け取ると（処理１００３で「Ｙ」）、２つの認証トークンを比較する。一致している場合（処理１００４で「Ｙ」）、トークンテーブルへサービス、業務、認証サーバ、認証トークン、期限日を登録し（１００５）、業務実行部１０５に対してイベントの通知を許可する（１００６）。企業Ｂサーバ１３０から認証に失敗した旨の通知を受けた場合（処理１００１で「Ｎ」）、業務実行部１０５に認証失敗を通知し（１００７）、業務実行制御部１０２に実行しているサービスを停止するよう通知する（１００８）。また、認証トークンが一致しない場合も同様に、認証失敗を通知し（１００７）、サービスを停止するよう通知する（１００８）。認証失敗の通知を受けた業務実行部１０５は、イベントの通知を行わない。またサービスの停止の通知を受けた業務実行制御部１０２は、実行しているサービスを停止するとともに、サービスを利用している企業サーバに対して、業務を停止した旨を通知する。尚、本実施例では認証サーバが１つの場合について説明したが、複数の認証サーバの認証が必要な場合がある。この場合、認証トークンが一致したものに対して、イベントを送るようにしてもよいが、認証が一致しないものが含まれている場合、サービスを停止する方がサービス全体の信頼性を高めることができる。
【００３３】
図１１は、業務登録部１０３により新たに業務を登録する場合の処理を示したものである。本システムにおいて、ユーザは業務を登録してサービスを利用したり、既に登録されている業務あるいはサービスを利用したりと様々である。ここでは、新たに登録する業務と既に登録されている業務とを組み合わせてサービスを利用する場合について説明する。例えば、サービス提供サーバ１００に販売管理業務が登録され、ユーザは資材発注業務を登録するとともに販売管理業務と組み合わせた資材取引といったサービスを利用するような場合である。
【００３４】
ここでは、ユーザが企業Ａサーバ１２０を利用して、業務を登録する場合について説明する。ユーザは企業Ａサーバ１２０から業務Ａ２を登録し、企業Ｂサーバ１３０が提供している業務Ｂ３と組み合わせたサービスＺを利用する場合について説明する。
【００３５】
ユーザは、企業Ａサーバ１２０の業務処理部１２１により、サービス提供サーバ１００に登録された業務の一覧を要求する（１１０１）。要求を受けたサービス提供サーバ１００の業務登録部１０３は、業務管理テーブル１１７に登録されている業務の一覧を企業Ａサーバ１２０へ送る（１１０２）。企業Ａサーバ１２０の業務処理部１２１は、送られてきた業務一覧を表示する（１１０３）。ユーザは、表示された業務一覧から利用する業務を選択する（１１０４）。ここで、ユーザは業務Ｂ３を選択する。また、ユーザは選択した業務に組み合わせて利用する新たな業務Ａ２、組み合わせて提供されるサービスＺ、認証サーバとを入力する（１１０５）。
【００３６】
企業Ａサーバ１２０は、業務Ａ２、認証サーバ名及びアドレス、サービス名Ｚ、選択された業務Ｂ３などの登録情報をサービス提供サーバ１００へ送る（１１０６）。業務登録部１０３は、送られてきた登録情報の中で選択された業務Ｂ３に対する認証サーバを登録情報業務管理テーブル１１７から特定する（１１０７）。ここでは企業Ｂサーバ１３０が認証サーバとして特定される。特定された企業Ｂサーバ１３０に対して、登録を要求してきた企業名、企業Ａサーバのアドレス、業務名、サービス名とを送る（１１０８）。企業Ｂサーバ１３０の業務処理部１３１は、送られてきた企業名、業務名、サービス名とを表示する（１１０９）。企業Ｂサーバ１３０のユーザは、表示された内容から業務の利用を許可する場合には、送られてきた企業名、業務名、サービス名、企業Ａサーバのアドレスとを認証テーブル１３５に登録し（１１１０）、サービス提供サーバ１００へ利用許可の通知を送る（１１１１）。利用許可の通知を受けた業務登録部１０３は、データの登録を行う（１１１２）。つまり、業務管理テーブル１１７に企業名「Ａ」、業務Ａ２、企業Ａサーバの名称及びアドレス、認証サーバとを登録する。また、認証テーブル１１４に、業務Ａ２、認証サーバである企業Ｂサーバとを登録する。更に、業務Ａ２を企業Ａ業務実行部１０４へ登録し、サービステーブル１１３にサービス名、業務Ａ２、Ｂ３とを登録する。尚、企業業務実行部がない場合には新たに生成する。登録が完了すると業務登録部１０３は、企業Ａサーバに対して登録した旨の通知を行う（１１１３）。
【００３７】
尚、ユーザが業務をサービス提供サーバで代行して行わせるといった場合には、単に業務をサービス提供サーバ１００に登録するだけでよく、他の企業サーバへ認証を依頼する必要がない。具体的には、処理１１０５で業務Ａ２、企業Ａサーバとを入力し、登録情報としてサービス提供サーバ１００へ送る（１１０６）。サービス提供サーバの業務登録部１０３では、送られてきた登録情報を各テーブルに登録する（１１１２）。具体的には、企業名、業務名、企業Ａサーバ名及びアドレス、認証サーバとを業務管理テーブル１１７に、サービス名、登録された業務とをサービステーブル１１３に登録する。また、業務Ａ２を企業Ａ業務実行部１０４へ登録する。登録が完了すると業務登録部１０３は、企業Ａサーバに対して登録した旨の通知を行う（１１１３）。
【００３８】
尚、認証を依頼した認証サーバから許可されなかった場合は、業務登録部１０３は、許可されない旨の通知を企業Ａサーバに送り、処理を終了する。登録に関連する処理１１１２は実行しない。
【００３９】
以上説明したように、複数の企業ごとに提供された業務を組み合わせて信頼性が高い運用を行うことができる。尚、図１に示したシステムにおいて複数の企業から提供された業務を１つのサービス提供サーバ１００が運用する構成を示したが、サービス提供サーバ１００が企業ごとに分かれたり、業務毎に分かれた場合でも適用することができる。
【００４０】
次に、他の実施例について説明する。
【００４１】
図１２は、サービスを提供する他の情報処理システムを示したものである。本システムは複数のサービス提供サーバ１００−１、１００−２、企業Ａサーバ１２０、企業Ｂサーバ１３０、企業Ｃサーバ１４０とを有している。このシステムは業務を実行する複数のサービス提供サーバを有しており、サービステーブル１１３に従って、業務実行制御部１０２が複数のサービス提供サーバの業務の実行を制御する。尚、認証を行うデータを暗号化することと、認証を行った企業の認証処理部へ認証トークンを送ることが図１に示したシステムの処理と相違する。この点について図１３、１４を使って説明する。
【００４２】
先と同様に、企業Ａ業務実行部１０４で実行されている業務でイベントが発生した場合を例に説明する。
【００４３】
企業Ａ業務実行部１０４の業務実行部１０５は、業務の実行とともに、その業務の実行状態を監視しており、障害が発生するとイベントテーブル１１５を生成する（１３０１）。次に、業務実行部１０５は、イベントの発生を認証処理部１０６へ通知する（１３０２）。イベントの通知を受けた、認証処理部１０６は、イベントテーブル１１５、認証テーブル１１４を参照して、認証が必要な認証サーバを特定する（１３０３）。次に、認証処理部１０６はトークンテーブル１１６を参照する（１３０４）。次に、認証処理部１０５は特定された企業Ｂサーバ１３０に対してイベントテーブルに登録されたデータを送り、認証を要求する（１３０５）。ここまでは、図８の処理８０１〜８０５までの処理と同じである。認証の要求を受けた企業Ｂサーバ１３０の認証部１３４は認証を行い（１３０６）、認証に成功すると秘密鍵Ａで暗号化し（１３０７）、認証トークンの要求を受けたサービス提供サーバ１００−１へ暗号化された認証トークンを送る（１３０８）。暗号化に用いる秘密鍵Ａは、サービス提供サーバ１００−１のイベント処理部１０１の共通鍵に対応するものである。
【００４４】
サービス提供サーバ１００−１のイベント処理部１０１は、企業Ｂサーバ１３０から送られてきた認証トークンを受信すると、復号化を行う（１３０９）。このときイベント処理部１０１は、復号化した認証トークンが所定のフォーマットであるかを確認する。所定のフォーマットであることを確認すると、企業Ｂサーバ１３０に対して認証トークンを受信したことを通知する（１３１０）。企業Ｂサーバ１３０は、認証トークンを受信した通知を受けると、秘密鍵Ｂで認証トークンを暗号化し（１３１１）、企業Ｂが提供した業務を運用するサービス提供サーバ１００−２に暗号化された認証トークンを送る（１３１２）。この秘密鍵Ｂは、企業Ｂ業務実行部１０７の認証処理部１０９の共通鍵に対応するものである。また、ここでは、サービス提供サーバ１００−１が受信した旨の通知と認証トークンとを併せて暗号化する。サービス提供サーバ１００−２の企業Ｂ業務実行部１０７の認証処理部１０９は暗号化された認証トークンを復号化し、サービス提供サーバ１００−１が受信した旨の通知が含まれていることを確認した後、認証トークンとを秘密鍵Ａで暗号化してサービス提供サーバへ送る（１３１３、１３１４）。尚、秘密鍵Ａはサービス提供サーバ１００−１のイベント処理部の共通鍵に対応するものである。
【００４５】
イベント処理部１０１では、サービス提供サーバ１００−２から送られてきた認証トークンを復号化し、企業Ｂサーバから受け取った認証トークンとを照合する（１３１５）。認証トークンが一致した場合、トークンテーブル１１５を作成する（１３１６）。また、イベント処理部１０１は、企業Ａ業務実行部１０３の業務実行部１０５にイベントの通知を許可する（１３１７）。通知を受けた業務実行部１０５は、サービステーブル１１３を参照し、企業Ｂ業務実行部１０７へイベントＩＤを送る。
【００４６】
尚、この処理を行うためのイベント処理部１０１は、図１０で示した処理において、認証トークンを受信した場合に復号化の処理を追加すれば実現することができる。
【００４７】
以上説明した情報処理システムによれば、異なった企業で提供された業務を組み合わせて信頼の高いサービスを提供することができる。尚、本実施例では障害が発生した場合について説明したが、ある業務の処理結果を別の業務で利用する場合に適用することもできる。この場合、処理結果の発生を一つのイベントとすれば、既に説明した内容で実現することができる。
【００４８】
尚、情報処理システムの構成は図１、図１２に示したものに限られるものではなく、例えば、イベント処理部１０１、業務実行制御部１０２、業務登録部１０３、サービステーブル１１３、認証テーブル１１４、イベントテーブル１１５、トークンテーブル１１６、業務管理テーブル１１７でサービス提供サーバを構成し、企業業務実行部を別のサービス提供サーバで構成したものであってもよい。この場合にも、上述した処理により信頼性の高いサービスを提供することができる。尚、本実施例では業務を企業といった単位で分類して説明したが、これは業務を提供するユーザごとに分類してもよいし、業務の内容によって分類したものでもよく、換言すれば、グループ単位で業務が管理され、ことなったグループの業務を組み合わせて実行されるシステムに適用できるものである。
【００４９】
また、図１３、１４で示した認証結果の暗号化については、図１に示したシステムに適用することもできる。
【００５０】
また、図１、図２で示した各サーバはプログラムやデータを記憶する記憶部と、プログラムを実行する処理部とを有する計算機、あるはコンピュータによって構成することができる。この場合、イベント処理部、業務実行制御部、業務登録部、業務事項部、認証処理部、業務処理部、業務状態表示部、イベント状態表示部、認証部などの各処理部は既に説明した処理を実行可能なソフトウェアプログラムで構成することができる。また、ソフトウェアプログラムは、複数の処理部の機能を含めて一つのプログラムとしてもよいし、処理部ごとに別々のプログラムで構成してもよい。
【００５１】
【発明の効果】
本発明によれば、複数のアプリケーションを実行するコンピュータを有するシステムにおいて、アプリケーションの連携の信頼性を向上させたシステムを提供することができる。
【図面の簡単な説明】
【図１】システムの構成を示した図である。
【図２】サービステーブルの一例を示した図である。
【図３】認証テーブルの一例を示した図である。
【図４】イベントテーブルの一例を示した図である。
【図５】トークンテーブルの一例を示した図である。
【図６】業務管理テーブルの一例を示した図である。
【図７】認証テーブルの一例を示した図である。
【図８】イベントが発生した場合のシステムの動作を示した図である。
【図９】認証処理部の処理を示した図である。
【図１０】イベント処理部の処理を示した図である。
【図１１】業務を登録する動作を示した図である。
【図１２】システムの他の構成を示した図である。
【図１３】イベントが発生した場合のシステムの動作を示した図である。
【図１４】イベントが発生した場合のシステムの動作を示した図である。
【符号の説明】
１００　サービス提供サーバ
１２０　企業Ａサーバ
１３０　企業Ｂサーバ
１４０　企業Ｃサーバ
【図１】
2004046659.tif 000003
【図２】
2004046659.tif 000004
【図３】
2004046659.tif 000005
【図４】
2004046659.tif 000006
【図５】
2004046659.tif 000007
【図６】
2004046659.tif 000008
【図７】
2004046659.tif 000009
【図８】
2004046659.tif 000010
【図９】
2004046659.tif 000011
【図１０】
2004046659.tif 000012
【図１１】
2004046659.tif 000013
【図１２】
2004046659.tif 000014
【図１３】
2004046659.tif 000015
【図１４】
2004046659.tif 000016