(57)【要約】【課題】  計算機において動作するソフトウェアが利用する入出力インタフェース等の利用可否や、ソフトウェアの実行可否をソフトウェアの種類の組み合わせによって制御する際の、制御ルールの生成と制御手段への通知、及び制御ルールの管理を行う。制御ルールの生成と通知と管理とを行う方法及び管理システムを提供すること。【解決手段】  ソフトウェアの種類の組み合わせに基づいて計算機に搭載されるソフトウェアの動作を制御するソフトウェア起動制御管理装置であって、ソフトウェアの種類の組み合わせと制御内容と制御対象の計算機の情報を受け付ける手段と、  受け付けた情報に基づいてソフトウェアの動作を制御する計算機を選定する手段と、選定した計算機に当該ソフトウェアの種類の組み合わせと制御内容を通知する手段とを備えることを特徴とするソフトウェア起動制御管理装置を提供する。【選択図】  図４
2011107921.tif 000002
【特許請求の範囲】
【請求項１】
計算機において動作する、ソフトウェアＡとソフトウェアＢを含むソフトウェアの動作を制御するソフトウェア起動制御管理システムであって、
前記計算機は、
前記ソフトウェアＡと前記ソフトウェアＢとの並行動作の禁止または許可をソフトウェア制御条件として記憶する動作制御内容記憶手段と、
前記ソフトウェア制御条件に基づいて、前記ソフトウェアの実行を制御するソフトウェア管理手段と、を備え、
前記ソフトウェア管理手段は、
前記ソフトウェアＡの起動が要求された場合に、
前記ソフトウェア制御条件を参照して、並行動作の禁止または許可の対象となっている前記ソフトウェアＢが、当該計算機上で動作中であるか否かをチェックし、
前記ソフトウェアＢが動作中でなければ、前記起動要求されたソフトウェアＡの起動を許可し、
前記ソフトウェアＢが動作中であれば、前記ソフトウェア制御条件に従って、前記起動要求されたソフトウェアＡの起動を禁止または許可する
ことを特徴とするソフトウェア起動制御管理システム。
【請求項２】
請求項１に記載のソフトウェア起動制御管理システムにおいて、
前記ソフトウェア管理手段は、前記計算機で動作する基本ソフトウェアの処理を監視し、
前記基本ソフトウェアが、前記ソフトウェアＡの起動処理として前記ソフトウェアＡのプロセス生成処理を開始した場合に、前記基本ソフトウェアに対して、当該プロセス生成処理を一時停止させ、
前記ソフトウェア制御条件を参照して、前記ソフトウェアＢが動作中であることを示す前記ソフトウェアＢのプロセスが既に生成されているか否かをチェックし、
前記ソフトウェアＢのプロセスが既に生成されていなければ、前記基本ソフトウェアに、前記ソフトウェアＡのプロセス生成処理を再開させ、
前記ソフトウェアＢのプロセスが既に生成されていれば、前記ソフトウェア制御条件に従って、前記基本ソフトウェアに、前記ソフトウェアＡのプロセス生成処理を中止または再開させることにより、前記ソフトウェアＡの起動を禁止または許可する
ことを特徴とするソフトウェア起動制御管理システム。
【請求項３】
請求項１または２に記載のソフトウェア起動制御管理システムにおいて、
前記ソフトウェア制御条件は、制御開始時刻と制御終了時刻とを含む制御時刻情報を含み、
前記ソフトウェア管理手段は、現在時刻が、前記制御開始時刻と制御終了時刻で定義される制御有効期間内であれば、前記ソフトウェア制御条件に従った制御を行い、前記制御有効期間内でなければ、初期設定情報に従った制御を行う
ことを特徴とするソフトウェア起動制御管理システム。
【請求項４】
請求項１ないし３いずれか一に記載のソフトウェア起動制御管理システムにおいて、
前記計算機の前記動作制御内容記憶手段は、更に、前記計算機において動作する前記ソフトウェアが利用するデバイスの動作を制御するデバイス制御条件を記憶し、
前記計算機は、前記デバイス制御条件に基づいて、当該計算機に接続されるデバイスの動作を制御するデバイス管理手段を備え、
前記デバイス管理手段は、前記デバイス制御条件を参照して、指定されたデバイスの利用を許可または禁止する
ことを特徴とするソフトウェア起動制御管理システム。
【請求項５】
請求項４に記載のソフトウェア起動制御管理システムにおいて、
前記デバイス制御条件情報は、制御開始時刻と制御終了時刻とを含む制御時刻情報を含み、
前記デバイス管理手段は、現在時刻が、前記制御開始時刻と制御終了時刻で定義される制御有効期間内であれば、前記デバイス制御条件に従った制御を行い、前記制御有効期間内でなければ、初期設定情報に従った制御を行う
ことを特徴とするソフトウェア起動制御管理システム。
【請求項６】
請求項１ないし５いずれか一に記載のソフトウェア起動制御管理システムにおいて、
管理サーバを備え、
前記管理サーバは、
前記ソフトウェア制御条件を作成する組み合わせテーブル作成手段と、
作成した前記ソフトウェア制御条件の制御対象となる計算機を抽出し、抽出した前記計算機に、前記ソフトウェア制御条件を配付する制御条件管理手段と、
を備える
ことを特徴とするソフトウェア起動制御管理システム。
【請求項７】
クライアントとサーバとを含む、クライアント−サーバシステムにおいて、前記サーバで動作するソフトウェアの動作を制御するソフトウェア起動制御管理システムであって、
前記クライアントは、
前記ソフトウェアＡと前記ソフトウェアＢとの並行動作の禁止または許可をソフトウェア制御条件として記憶する動作制御内容記憶手段と、
前記ソフトウェア制御条件に基づいて、前記ソフトウェアの実行を制御するソフトウェアリンク管理手段と、を備え、
前記ソフトウェアリンク管理手段は、
前記ソフトウェアＡの起動が要求された場合に、
前記ソフトウェア制御条件を参照して、並行動作の禁止または許可の対象となっている前記ソフトウェアＢが、前記サーバ上で動作中であるか否かをチェックし、
前記ソフトウェアＢが動作中でなければ、前記起動要求されたソフトウェアＡの起動の許可を決定し、
前記ソフトウェアＢが動作中であれば、前記ソフトウェア制御条件に従って、前記起動要求されたソフトウェアＡの起動の禁止または許可を決定し、
許可を決定した場合は、前記ソフトウェアＡの起動要求を前記サーバに送信し、
禁止を決定した場合は、前記ソフトウェアＡの起動要求を前記サーバへ送信しない
ことを特徴とするソフトウェア起動制御管理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、計算機におけるソフトウェアの実行の可否を、制御する技術に関する。
【背景技術】
【０００２】
計算機における情報処理は、計算機が解釈可能なプログラムと呼ばれる複数の符号化した命令およびその集合を、情報処理の手順に対応して構成し、実行させることで、可能になる。
【０００３】
このプログラムの単体または集合体がいわゆるソフトウェアと呼ばれるものであり、計算機自体を動かす際に必要となる、いわゆるファームウェアや、デバイスドライバ、ＯＳ等と、これらを除くある特定の目的を持った情報処理を行うためのアプリケーションソフトウェアと、がある。
【０００４】
さらにアプリケーションソフトウェアは、前記デバイスドライバやＯＳを介して計算機資源を利用することが可能であり、処理手順中に、計算機がもつファイルシステム、入出力インタフェース、通信インタフェース、表示インタフェース、等の操作命令を明示的に含めることが可能である。
【０００５】
よって、計算機を用いて計算機資源の利用を含めた業務の情報処理を行う場合は、その業務手順に沿ったプログラムを記述したアプリケーションソフトウェアを計算機に組み込めばよい。近年の計算機は、複数のアプリケーションソフトウェアを組み込むことが可能であり、また、複数同時に処理可能であり、かつ、計算機資源を利用することが可能である。
【０００６】
このため、情報処理の手順が異なる複数の業務が存在するとしても、複数の業務の個々に対応する専用の計算機を準備する必要はなく、それぞれの業務毎のアプリケーションソフトウェアを同一の計算機に組み込めばよいため、計算機自体のコストの縮小、情報処理内容の追加、変更に伴うコストの縮小、計算機を設置するためのスペースの縮小、等の効果を得ることができるため、企業おける情報処理システムとして広く普及している。
【０００７】
こうした状況の中で、例えば、企業の業務を受託する、いわゆる代理店企業の計算機の環境において、複数の業務を受託する場合、複数のアプリケーションソフトウェアを代理店企業の計算機に共存させる必要がある。しかし、計算機に組み込むアプリケーションソフトウェアの利用条件が異なる場合がありえるため、計算機に組み込まれた複数のアプリケーションプログラムを利用する際に、アプリケーションソフトウェアの種類の組み合わせによって利用の可否を制御する技術が求められている。
【０００８】
利用条件とは、例えば、セキュリティ上の問題を回避するために、異なる会社のアプリケーションソフトウェアを並行して実行することを禁止する、等の条件である。企業の情報システムは、情報システムに関する法制度や各種ガイドライン、委託元のセキュリティポリシー、等の変化に対応して、アプリケーションソフトウェアの利用要件が変化し得るため、動的に前記アプリケーションソフトウェアの種類の追加や削除と、アプリケーションソフトウェアの組み合わせや利用可否の追加と削除と変更ができることが望ましい。
【０００９】
関連した技術としては、アプリケーションソフトウェアを利用する計算機の認証情報と、当該アプリケーションソフトウェアと組み合わせて利用可能とする他方のアプリケーションソフトウェアを認証するための認証プログラムを、アプリケーションソフトウェアに組み込んだ上で、利用する計算機に送付し、それぞれの認証を実施したうえで、認証に成功した場合において、アプリケーションソフトウェアの組み合わせ利用を許可する方法がある。（特許文献１参照）
また、アプリケーションソフトウェアが組み込まれた場所、アプリケーションソフトウェアの名称を明示的に指定して、当該アプリケーションソフトウェアの起動を抑止するアプリケーションソフトウェアがある。（非特許文献１、P5参照）
また、ＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）等の計算機に具備された外部入出力インタフェースの利用可否を制御するアプリケーションソフトウェアがある。（非特許文献２参照）
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開２００５−２７５８３９号公報
【非特許文献】
【００１１】
【非特許文献１】日立製作所、「統合システム運用管理ＪＰ１  Ｖｅｒｓｉｏｎ９  資産・配布管理／セキュリティ管理」、ＪＰ１  Ｖｅｒｓｉｏｎ９  カタログ、２００９年４月、［ｏｎｌｉｎｅ］、［２００９年７月２７日検索］、インターネット＜ＵＲＬhttp://www.hitachi.co.jp/Prod/comp/soft1/download/catalog/ca/ca743.pdf＞
【非特許文献２】日立ケーイーシステムズ、“情報流出防止不ソフトウェアＳＥＣＵＲＥＤＡ／ＳＥＣＵＲＥＤＡ  Ｐｒｏ”、［ｏｎｌｉｎｅ］、［２００９年７月２７日検索］、インターネット＜ＵＲＬ：ｈｔｔｐ：／／ｗｗｗ．ｈｋｅ．ｊｐ／ＰＲＯＤＵＣＴＳ／ｓｅｃｕｒｅｄａ／ｉｎｄｅｘ．ｈｔｍ＞
【発明の概要】
【発明が解決しようとする課題】
【００１２】
特許文献１に記載されている方法は、プラットフォームの信頼性に影響されることなく、或いは、プラットフォームの信頼性を確認した上で、複数のソフトウェアを組み合わせて利用する際の組み合わせ相手となるソフトウェア毎に、ソフトウェアの利用可否を制限することができることを可能とする。
【００１３】
ところが、本方法では、ソフトウェアの実行を許可する計算機のディジタル署名を生成し、収集し、収集したディジタル署名をアプリケーションに組み込む必要があり、予めディジタル署名を組み込むことができないアプリケーションソフトウェアでは利用できないし、既に計算機に導入したソフトウェアに対しても適用することができない。
【００１４】
また、非特許文献１に記載の方法は、利用計算機に組み込まれたアプリケーションソフトウェアの名称を判定条件として、当該アプリケーションの起動可否を制御することが可能であり、計算機毎にアプリケーションの起動可否の設定と管理を行うことが可能である。
【００１５】
ところが、本方法では、アプリケーションソフトウェアの組み合わせに応じて動的に起動の可否を制御することができない。
【００１６】
また、非特許文献２に記載の方法は、利用計算機の入出力ポート等のデバイスの利用可否を制御することが可能である。
【００１７】
ところが、本方法では、例えば、計算機の入出力ポート等のデバイスを利用するアプリケーションソフトウェアが計算機に導入されている場合に、アプリケーションソフトウェアが入出力ポート等のデバイスを利用する処理が行われている場合であっても、アプリケーションソフトウェアの処理とは独立して入出力ポート等のデバイスの利用可否を制御することができてしまうため、アプリケーションソフトウェアが入出力ポート等のデバイスを利用することができなくなってしまう可能性がある。
【課題を解決するための手段】
【００１８】
本発明は、アプリケーションソフトウェアに専用の情報を付加することなく、そのアプリケーションソフトウェアの組み合わせに基づきアプリケーションソフトウェアの起動制御を行うソフトウェア制御条件と、当該アプリケーションソフトウェアが利用する計算機が持つデバイスの利用可否制御を行うためのデバイス制御条件と、の設定と、設定したこれらの制御条件の送付と、管理を行うことができる技術を提供する。
【００１９】
上記課題を解決するために、ソフトウェアの種類の組み合わせに基づいて計算機に搭載されるソフトウェアの動作を制御するソフトウェア起動制御管理システムを、以下に開示する。
【００２０】
一つの態様として開示されるソフトウェア起動制御管理システムは、例えば、計算機において動作する、ソフトウェアＡとソフトウェアＢを含むソフトウェアの動作を制御するソフトウェア起動制御管理システムであって、
上記計算機は、上記ソフトウェアＡと上記ソフトウェアＢとの並行動作の禁止または許可をソフトウェア制御条件として記憶する動作制御内容記憶手段と、上記ソフトウェア制御条件に基づいて、上記ソフトウェアの実行を制御するソフトウェア管理手段と、を備え、
上記ソフトウェア管理手段は、上記ソフトウェアＡの起動が要求された場合に、上記ソフトウェア制御条件を参照して、並行動作の禁止または許可の対象となっている上記ソフトウェアＢが、当該計算機上で動作中であるか否かをチェックし、上記ソフトウェアＢが動作中でなければ、上記起動要求されたソフトウェアＡの起動を許可し、上記ソフトウェアＢが動作中であれば、上記ソフトウェア制御条件に従って、上記起動要求されたソフトウェアＡの起動を禁止または許可することを特徴とする。
【００２１】
さらに、上記ソフトウェア管理手段は、上記計算機で動作する基本ソフトウェアの処理を監視し、上記基本ソフトウェアが、上記ソフトウェアＡの起動処理として上記ソフトウェアＡのプロセス生成処理を開始した場合に、上記基本ソフトウェアに対して、当該プロセス生成処理を一時停止させ、上記ソフトウェア制御条件を参照して、上記ソフトウェアＢが動作中であることを示す上記ソフトウェアＢのプロセスが既に生成されているか否かをチェックし、上記ソフトウェアＢのプロセスが既に生成されていなければ、上記基本ソフトウェアに、上記ソフトウェアＡのプロセス生成処理を再開させ、上記ソフトウェアＢのプロセスが既に生成されていれば、上記ソフトウェア制御条件に従って、上記基本ソフトウェアに、上記ソフトウェアＡのプロセス生成処理を中止または再開させることにより、上記ソフトウェアＡの起動を禁止または許可してもよい。
【００２２】
さらに、上記ソフトウェア制御条件は、制御開始時刻と制御終了時刻とを含む制御時刻情報を含み、上記ソフトウェア管理手段は、現在時刻が、上記制御開始時刻と制御終了時刻で定義される制御有効期間内であれば、上記ソフトウェア制御条件に従った制御を行い、上記制御有効期間内でなければ、初期設定情報に従った制御を行ってもよい。
【００２３】
さらに、上記計算機の上記動作制御内容記憶手段は、更に、上記計算機において動作する上記ソフトウェアが利用するデバイスの動作を制御するデバイス制御条件を記憶し、上記計算機は、上記デバイス制御条件に基づいて、当該計算機に接続されるデバイスの動作を制御するデバイス管理手段を備え、
上記デバイス管理手段は、上記デバイス制御条件を参照して、指定されたデバイスの利用を許可または禁止してもよい。
【００２４】
さらに、上記デバイス制御条件情報は、制御開始時刻と制御終了時刻とを含む制御時刻情報を含み、上記デバイス管理手段は、現在時刻が、上記制御開始時刻と制御終了時刻で定義される制御有効期間内であれば、上記デバイス制御条件に従った制御を行い、上記制御有効期間内でなければ、初期設定情報に従った制御を行ってもよい。
【００２５】
さらに、上記ソフトウェア起動制御管理システムは、管理サーバを備え、
上記管理サーバは、上記ソフトウェア制御条件を作成する組み合わせテーブル作成手段と、作成した上記ソフトウェア制御条件の制御対象となる計算機を抽出し、抽出した上記計算機に、上記ソフトウェア制御条件を配付する制御条件管理手段と、を備えてもよい。
【００２６】
また、他の態様として開示されるソフトウェア起動制御管理システムは、クライアントとサーバとを含む、クライアント−サーバシステムにおいて、上記サーバで動作するソフトウェアの動作を制御するソフトウェア起動制御管理システムであって、
上記クライアントは、上記ソフトウェアＡと上記ソフトウェアＢとの並行動作の禁止または許可をソフトウェア制御条件として記憶する動作制御内容記憶手段と、上記ソフトウェア制御条件に基づいて、上記ソフトウェアの実行を制御するソフトウェアリンク管理手段と、を備え、
上記ソフトウェアリンク管理手段は、上記ソフトウェアＡの起動が要求された場合に、上記ソフトウェア制御条件を参照して、並行動作の禁止または許可の対象となっている上記ソフトウェアＢが、上記サーバ上で動作中であるか否かをチェックし、上記ソフトウェアＢが動作中でなければ、上記起動要求されたソフトウェアＡの起動の許可を決定し、上記ソフトウェアＢが動作中であれば、上記ソフトウェア制御条件に従って、上記起動要求されたソフトウェアＡの起動の禁止または許可を決定し、許可を決定した場合は、上記ソフトウェアＡの起動要求を上記サーバに送信し、禁止を決定した場合は、上記ソフトウェアＡの起動要求を上記サーバへ送信しないことを特徴とする。
【発明の効果】
【００２７】
本発明によれば、アプリケーションソフトウェアの組み合わせによる実行制御を行うことができる。また、アプリケーションソフトウェアの処理に対応して、デバイスの利用可否を制御することができる。
【図面の簡単な説明】
【００２８】
【図１】ソフトウェア実行制御管理システムの構成を例示する。
【図２】計算機管理情報テーブルおよび計算機機種情報テーブルの構成を例示する。
【図３】ソフトウェアリリース管理テーブルおよびソフトウェア情報テーブルの構成を例示する。
【図４】ソフトウェア組み合わせテーブルの構成を例示する。
【図５】制御条件管理テーブルの構成を例示する。
【図６】計算機機種情報設定モジュールの処理内容を例示する。
【図７】計算機管理情報設定モジュールの処理内容を例示する。
【図８】ソフトウェア情報設定モジュールの処理内容を例示する。
【図９】ソフトウェアリリース管理情報設定モジュールの処理内容を例示する。
【図１０】情報収集モジュールおよび収集情報受信モジュールの処理と各テーブルへの収集した情報を登録する処理内容を例示する。
【図１１】組み合わせテーブル生成モジュールおよび制御条件管理モジュールの処理内容を例示する。
【図１２】情報収集モジュールの処理構成を例示する。
【図１３】制御条件受信モジュールの処理内容を例示する。
【図１４】アプリケーションウィンドウ送信型シンクライアントシステムにおけるソフトウェア実行制御管理システムの構成を例示する。
【図１５】アプリケーションウィンドウ送信型シンクライアントシステムに対応したソフトウェアリリース管理情報テーブルおよびソフトウェア情報テーブルの構成を例示する。
【図１６】デスクトップ画面転送型シンクライアントシステムにおけるソフトウェア実行制御管理システムの構成を例示する。
【図１７】情報中継モジュールと制御条件要求モジュールの処理の構成を例示する。
【図１８】管理サーバおよび計算機のハードウェアの構成を例示する。
【発明を実施するための形態】
【００２９】
（実施例１）
図１は、本発明の一実施形態であるソフトウェア実行制御管理システム１のソフトウェア構成を示すブロック図である。
【００３０】
ソフトウェア実行制御管理システム1は、ソフトウェア実行制御管理サーバ装置１０と、少なくとも１つの計算機２０とが、ネットワーク３０を介して接続されることで構成される。
【００３１】
ソフトウェア実行制御管理サーバ装置１０（管理サーバ１０という）は、当該サーバ装置のハードウェアの制御と管理等を行うファームウェアやデバイスドライバやオペレーティングシステム等を含む基本ソフトウェア１２１と、ネットワーク３０を介して他の計算機と通信を行うための通信制御を行う通信モジュール１２０とを具備し、ソフトウェア実行制御サーバソフトウェア１１を具備する。
【００３２】
管理サーバ１０は、パーソナルコンピュータやワークステーションやいわゆる仮想型コンピュータなどにおいて、ソフトウェア実行制御サーバソフトウェア１１を搭載して構成してもよいし、ソフトウェア実行制御サーバソフトウェア１１と同等の機能をハードウェア的に実装して構成してもよい。
【００３３】
計算機２０は、ソフトウェア実行制御サーバクライアンソフトウェア２１を備える。なお、当該ソフトウェア２１が実施するソフトウェア実行制御機能は、ハードウェア的に実装して構成してもよいし、計算機の中央演算装置とは独立した専用のチップ、コントローラの形態で計算機に組み込んでもよい。
【００３４】
図１８は管理サーバ１０および計算機２０のハードウェア構成を説明する図である。
【００３５】
ハードウェアは、中央演算装置４００と主記憶装置４０１と外部記憶装置４０２と入出力インタフェース４０３とがバスなどの装置接続回路４０４を介して接続され、入出力インタフェース４０３を介してネットワーク３０や、キーボードやマウス、表示装置等の入出力機器と接続する。
【００３６】
なお、本実施例において、ソフトウェア実行制御管理サーバソフトウェア１１およびソフトウェア実行制御管理クライアントソフトウェア２１を構成する各モジュールのプログラムが行為主体であるかのように記載する場合があるが、実際には、それぞれの計算機が具備する中央演算装置（ＣＰＵ）が、当該プログラムを実行して処理を行う主体であることはいうまでもない。
【００３７】
また、各プログラムは、予め、外部記憶装置４０２に格納されていてもよいし、必要なときに、入出力インタフェース４０３と各計算機が利用可能な媒体を介して、他の装置から上記記憶装置に導入されてもよい。媒体とは、たとえば、入出力インタフェース４０３に着脱可能な記憶媒体、または通信媒体（ネットワーク３０、または当該ネットワーク３０を伝搬する搬送波やディジタル信号）を指す。
【００３８】
（サーバの説明）
管理サーバ１０は、データベース１００と、計算機機種情報設定モジュール１１１と、計算機管理情報設定モジュール１１２と、ソフトウェア情報設定モジュール１１３と、ソフトウェアリリース管理情報設定モジュール１１４と、組み合わせテーブル生成モジュール１１５と、制御条件管理モジュール１１６と、収集情報受信モジュール１１７を具備し構成される。
【００３９】
（データベースの説明）
データベース１００は、計算機機種情報テーブル（ＭＯＴＢＬ）１０１と、計算機管理情報テーブル（ＫＭＴＢＬ）１０２と、ソフトウェア情報テーブル（ＳＭＴＢＬ）１０３と、ソフトウェアリリース管理情報テーブル（ＳＲＴＢＬ）１０４と、ソフトウェア組み合わせテーブル（ＣＯＴＢＬ）１０５と、制御条件管理テーブル（ＰＯＴＢＬ）１０６を具備し構成される。
【００４０】
（データベース・テーブルの説明）
図２は、計算機機種情報テーブル（ＭＯＴＢＬ）１０１と計算機管理情報テーブル（ＫＭＴＢＬ）１０２を説明する図である。
【００４１】
計算機機種情報テーブル（ＭＯＴＢＬ）１０１は、制御管理対象とする計算機２０の機種（Ｍｏｄｅｌ）と、当該計算機２０が具備するハードウェアを一意に認識可能な情報（Ｉｎｔｅｒｆａｃｅ，ＤｉｓｋＤｒｉｖｅ等）と、当該計算機２０の機種とハードウェアの情報が、管理者６０によって登録されたか否かを示す値（ＲａｇｉｓｔｅｒｅｄＳｔａｔｕｓ）を対応付けて保持する構造を持つ。
【００４２】
計算機管理情報テーブル（ＫＭＴＢＬ）１０２は、制御管理対象とする計算機２０の所有者（ＣｏｍｐｕｔｅｒＯｗｎｅｒ）と、計算機２０の名称（ＨｏｓｔＮａｍｅ）と、ネットワーク３０を介してＩＰ（ＩｎｔｅｒｎｅｔＰｒｏｔｏｃｏｌ）通信を行うために計算機２０に付与したＩＰアドレス（ＩＰＡｄｄｒｅｓｓ）と、計算機２０の機種（Ｍｏｄｅｌ）を対応付けて保持する構造を持つ。
【００４３】
図３は、ソフトウェア情報テーブル（ＳＭＴＢＬ）１０３とソフトウェアリリース管理情報テーブル（ＳＲＴＢＬ）１０４を説明する図である。
【００４４】
ソフトウェア情報テーブル（ＳＭＴＢＬ）１０３は、「ソフトウェアの種類」を定義するテーブルであり、登録する種類と項目は任意である。
【００４５】
ソフトウェアの種類とは、図示したものを含め、ソフトウェアの名称、プロセスの名称、所有者、開発者、著作権所有者、ソフトウェアのサイズ、言語、保存場所、ディジタル署名の有無、ライセンス情報の有無、ソフトウェアライブラリの利用有無、通信処理の有無、プログラム実行環境の種類、等のソフトウェアが持つ特性や、例えば、「時刻１２時に起動するソフトウェア」、等といった動作自体のうち、任意の一つ以上を種類として定義できるようにしてもよい。
【００４６】
連携プログラムとは、例えば、Ｍｉｃｒｏｓｏｆｔ社のＷｉｎｄｏｗｓ（登録商標）ＯＳであれば、ダイナミックリンクライブラリ（Ｄｙｎａｍｉｃ  Ｌｉｎｋ  Ｌｉｂｌａｒｙ）と呼ばれる外部連携プログラム等がある。
【００４７】
プログラム実行環境とは、インタプリタや、オペレーティングシステムやハードウェアに依存しない中間言語やバイトコードと呼ばれる抽象的なプログラムコードで表現されるプログラムを実行するための仮想機械等がある。
【００４８】
本実施例では、ソフトウェアの種類として、ソフトウェアに対して一意に付与する名称（ＳｏｆｔｗａｒｅＮａｍｅ）と、当該ソフトウェアの情報がソフトウェア情報テーブル（ＳＭＴＢＬ）１０３に、管理者６０によって登録されたか否かを示す値（ＲａｇｉｓｔｅｒｅｄＳｔａｔｕｓ）と、ソフトウェアを利用するシステムの名称（ＳｙｓｔｅｍＮａｍｅ）と、ソフトウェアの実行プログラムもしくはプロセスを表す名称（ＰｒｏｃｅｓｓＮａｍｅ）と、ソフトウェアの開発または作成または提供または著作権を所有する所有者の名称（ＳｏｆｔｗａｒｅＯｗｎｅｒ）と、ソフトウェアが計算機で実行される際に利用する計算機２０の
当該計算機２０が具備するハードウェアを一意に認識可能な情報（Ｉｎｔｅｒｆａｃｅ，ＤｉｓｋＤｒｉｖｅ等）を対応付けて保持するものとする。
【００４９】
ソフトウェアリリース管理情報テーブル（ＳＲＴＢＬ）１０４は、計算機２０へのソフトウェアの組み込み、導入、インストール等のいわゆるリリース行為を管理するためのテーブルであり、リリースしたソフトウェアの名称（ＳｏｆｔｗａｒｅＮａｍｅ）と、リリースしたソフトウェアの開発または作成または提供または著作権を所有する所有者の名称（ＳｏｆｔｗａｒｅＯｗｎｅｒ）と、ソフトウェアのリリース先となる計算機２０のファイルシステムの場所をあらわす値（Ｐａｔｈ）を対応付けて保持する構造を持つ。
【００５０】
図４は、ソフトウェア組み合わせテーブル（ＣＯＴＢＬ）１０５を説明する図である。
【００５１】
ソフトウェア組み合わせテーブル（ＣＯＴＢＬ）１０５は、前記「ソフトウェアの種類」の組み合わせ（並行して実行すること）に対する「ソフトウェアの動作」を定義するテーブルであり、登録する種類と項目は任意である。
【００５２】
ソフトウェアの動作とは、ソフトウェアの起動や、停止や、起動抑止や、一時停止や、等がある。
【００５３】
本実施例では、リリースされたソフトウェアがソフトウェア実行制御管理システムのソフトウェア情報テーブル（ＳＭＴＢＬ）１０３と、管理者６０によって登録されたソフトウェアであるか否かを示す値（ＲｅｇｉｓｔｅｒｅｄＳｔａｔｕｓ）と、ソフトウェアの開発者や著作権を所有する所有者の名称（ＳｏｆｔｗａｒｅＯｗｎｅｒ）と、ソフトウェアの名称（ＳｏｆｔｗａｒｅＮａｍｅ）と、の集合として記載されている。
【００５４】
本実施例では、図4に示すように、これらのソフトウェアの組み合わせに対して、並行して実行することを許可することを表す「Ａｌｌｏｗ」と、並行して実行することを禁止することを表す「Ｄｅｎｙ」のいずれかの値を保持する構造を持つ。
【００５５】
図５は、制御条件管理テーブル（ＰＯＴＢＬ）１０６を説明する図である。
【００５６】
制御条件管理テーブル（ＰＯＴＢＬ）１０６は、管理者６０が条制御条件の情報を一意に認識するための制御条件番号（Ｎｏ）と、サブテーブル名称（ＳｕｂＴａｂｌｅＮａｍｅ）と、制御条件設定ファイルの名称（ＦｉｌｅＮａｍｅ）と、サブテーブルに設定された条件を投入した時刻（ＵｐｄａｔｅＴｉｍｅ）と、条件を作成もしくは編集を行った人物の名前（Ａｕｔｈｏｒ）を対応付けて保持する構造を持つ。
【００５７】
なお、データベース１００の実装形態としては、ソフトウェア実行制御サーバに内蔵してもよいし、データベース機能部のみを独立させてもよいし、他の計算機に独立して実装してもかまわない。
【００５８】
また、データベース１００内のテーブルを独立したデータベースとして保持してもかまわない。
【００５９】
（サーバ・モジュールの説明）
計算機機種情報設定モジュール１１１は、管理者６０から計算機機種情報設定ファイル４１を受けつけ、当該計算機機種情報設定ファイル４１に記載されている計算機２０のＭｏｄｅｌと、当該計算機２０が具備するハードウェアを一意に認識可能な情報（Ｉｎｔｅｒｆａｃｅ，ＤｉｓｋＤｒｉｖｅ等）等をＭＯＴＢＬ１０１に登録する処理を行う。
【００６０】
計算機管理委情報設定モジュール１１２は、管理者６０から計算機管理情報設定ファイル４２を受け付け、当該計算機管理情報設定ファイル４２に記載されている計算機２０のＣｏｍｐｕｔｅｒＯｗｎｅｒと、ＨｏｓｔＮａｍｅと、ＩＰＡｄｄｒｅｓｓと、Ｍｏｄｅｌ等をＫＭＴＢＬ１０２に登録する処理を行う。
【００６１】
ソフトウェア情報設定モジュール１１３は、管理者６０からソフトウェア情報設定ファイル４３を受け付け、当該ソフトウェア情報設定ファイル４３に記載されている、ＳｏｆｔｗａｒｅＮａｍｅと、当該ソフトウェア情報設定ファイル４３でソフトウェア実行制御管理システムのＳＭＴＢＬ１０３に登録されたＲｅｇｉｓｔｅｒｅｄＳｔａｔｕｓと、ＳｙｓｔｅｍＮａｍｅと、ＰｒｏｃｅｓｓＮａｍｅと、ＳｏｆｔｗａｒｅＯｗｎｅｒと、当該ソフトウェアが計算機２０で実行される際に利用する当該計算機２０が具備するハードウェアを一意に認識可能な情報（Ｉｎｔｅｒｆａｃｅ，ＤｉｓｋＤｒｉｖｅ等）を、ＳＭＴＢＬ１０３に登録する処理を行う。
【００６２】
ソフトウェア実行制御管理システムのＳＭＴＢＬ１０３に登録されたＲｅｇｉｓｔｅｒｅｄＳｔａｔｕｓは、計算機２０にソフトウェア２２３を導入する際に、運用管理者６０が許可したソフトウェアであることを示す値であり、管理者６０が許可したソフトウェアであれば、「Ｒｅｇｉｓｔｅｒｄ」を値として登録し、許可したソフトウェアではない場合は「ＮｏｎＲｅｇｉｓｔｅｒｄ」を値として登録する。
【００６３】
ソフトウェアリリース管理情報設定モジュール１０４は、管理者６０からソフトウェアリリース管理情報設定ファイル４４を受け付け、当該ソフトウェアリリース管理情報設定ファイル４４に記載されているＳｏｆｔｗａｒｅＮａｍｅと、ＳｏｆｔｗａｒｅＯｗｎｅｒと、Ｐａｔｈを、ＳＲＴＢＬ１０４に登録し、ソフトウェアリリース管理情報ファイル４４に記載されているＣｏｍｐｕｔｅｒＯｗｎｅｒが、ＣＯＴＢＬ１０５に存在するか否かをチェックし、
存在しなければ、ＣｏｍｐｕｔｅｒＯｗｎｅｒに対して一つのマスターサブテーブル１０５ａを新たに生成して参照し、
存在すれば、ＣｏｍｐｕｔｅｒＯｗｎｅｒに合致するサブテーブル１０５ａを参照し、
ＳＲＴＢＬ１０４を参照して、ＣｏｍｐｕｔｅｒＯｗｎｅｒが所有するソフトウェアの情報を抽出し、当該抽出したＳｏｆｔｗａｒｅＮａｍｅと、ＲｅｇｉｓｔｅｒｅｄＳｔａｔｕｓと、ＳｏｆｔｗａｒｅＯｗｎｅｒをマスターテーブル１０５ａの項目として登録する処理を行う。
【００６４】
組み合わせテーブル生成モジュール１１５は、管理者６０が作成した制御条件設定ファイル４５を受け付け、制御条件設定ファイル４５に記載されたＯｗｎｅｒと合致するサブテーブル１０５ｂを抽出し、設定条件を一意に識別するための制御条件番号を生成し、当該制御条件番号と、抽出したサブテーブルの名称と、受け付けた条件設定ファイルをそれぞれ、ＰＯＴＢＬ１０６のＮｏ、ＳｕｂｔａｂｌｅＮａｍｅに登録し、当該制御条件番号を制御条件管理モジュール１１６に通知する処理を行う。
【００６５】
もしくは、管理者６０は、既に生成された制御条件番号を組み合わせテーブル生成モジュール１１５に通知すると、組み合わせテーブル生成モジュール１１５は、管理者から受け付けた制御条件番号を検索キーとしてＰＯＴＢＬ１０６から、該当する制御条件番号（Ｎｏ）の項目を検索して抽出し、結果及び制御条件設定ファイル４５を管理者６に提示する処理を行う。
【００６６】
制御条件管理モジュール１１６は、組み合わせテーブル生成モジュール１１５から制御条件番号を受け付けると、受け付けた制御条件番号（Ｎｏ）を検索キーとして、ＰＯＴＢＬ１０６から該当する項目を検索して抽出（Ｓ１０４５）し、抽出した結果から制御条件を参照し、参照した制御条件に基づいてＫＭＴＢＬ１０２と、ＭＯＴＢＬ１０１と、ＳＲＴＢＬ１０４と、ＳＭＴＢＬ１０３から該当する情報を抽出し、制御条件２５０を生成し、制御対象の計算機２０へ通知する処理を行う。
【００６７】
もしくは、管理者が制御条件番号（Ｎｏ）を制御条件管理モジュール１１６に通知すると、当該制御条件番号（Ｎｏ）を検索キーとして、ＰＯＴＢＬ１０６の制御条件番号（Ｎｏ）を検索し、該当する制御条件番号（Ｎｏ）の項目を抽出し、制御条件２５０を管理者６０に提示する処理を行う。
【００６８】
収集情報受信モジュール１１７は、サーバ２１の収集情報受信モジュール１１７へ送付し、収集情報受信モジュール１１７が受信した情報に基づいて、設定情報群４０である、計算機機種情報設定ファイル４１−１と、計算機管理情報設定ファイル４２−２と、ソフトウェア情報４３−２と、ソフトウェアリリース情報４４−２を生成し、それぞれ、機種情報設定モジュール１１１と、計算機管理情報設定モジュール１１２と、ソフトウェア情報設定モジュール１１３と、ソフトウェアリリース管理情報設定モジュール１１４に通知し、それぞれのモジュールが、それぞれのテーブルに登録する処理を行う。
【００６９】
（計算機・クライアントの説明）
ソフトウェア実行制御管理クライアント２１は、制御条件受信モジュール２０２と、管理モジュール群２０３と、情報収集モジュール２０６と、計算機管理情報群２１０を具備し構成される。
【００７０】
管理モジュール群２０３は、ソフトウェア管理モジュール２０４と、デバイス管理モジュール２０５を具備し構成される。
【００７１】
計算機管理情報群２１０は、制御条件情報２１１と、インベントリ情報２１２とを具備し、ファイルシステムもしくは、データベースシステム、等の形態で、計算機２０に記憶できるならばいかなる形態で実現してもよい。
【００７２】
管理対象群２２２は、アプリケーションソフトウェア群２２３およびデバイスドライバソフトウェア群２２４で構成される。
【００７３】
アプリケーションソフトウェア群２２３は、独立した少なくとも一つのアプリケーションソフトウェアであり、計算機２０が解釈可能なプログラムと呼ばれる複数の符号化した命令およびその集合を使用して、情報処理の手順に対応して記述されたものである。
【００７４】
デバイスドライバソフトウェア群２２４は、計算機２０に具備もしくは外部接続されるハードウェアを制御管理するためのソフトウェアである。
【００７５】
計算機２０に具備もしく外部接続されるハードウェアの例としては、外部記憶装置、通信装置、等がある。
【００７６】
（クライアントに保持する情報とクライアントモジュールの詳細説明）
計算機管理情報群２１０は、制御条件情報２１１と、インベントリ情報２１２とを具備し構成される。
【００７７】
制御条件情報２１０は、管理サーバ１０から受信した制御条件と同一の情報を含む情報である。
【００７８】
インベントリ情報２１２は、計算機２０に具備もしくは外部接続されるハードウェア情報やソフトウェア情報を含み、ハードウェア情報は計算機２０に搭載される基本ソフトウェアやデバイスドライバソフトウェアは制御管理するハードウェアの情報であり、ソフトウェア情報とは、計算機２０に組み込まれたアプリケーションソフトウェアの名称やプロセス名称やインストール場所、等である。
【００７９】
制御条件受信モジュール２０２は、管理サーバ１０の制御条件管理モジュール１１６から制御条件２５０を受信し、受信した制御条件２５０を制御条件情報２１２として記録し、制御条件２５０に記載された内容を管理モジュール群２０３に通知する。
【００８０】
情報収集モジュール２０６は、計算機２０のインベントリ情報２１２を自計算機２０に記録し、当該インベントリ情報２１２を管理サーバ１０の情報収集受信モジュール１１７に通知する。
【００８１】
管理モジュール群２０３は、ソフトウェア管理モジュール２０４と、デバイス管理モジュール２０５を具備し構成される。
【００８２】
ソフトウェア管理モジュール２０４は、制御条件情報２１１のサブテーブル１０５ｂに記載された計算機２０に搭載されるソフトウェア２２３の組の実行状態と起動を監視し、条件と一致した場合は直ちに予め定めた制御を行い、制御結果を計算機２０の画面に表示して利用者６１に通知する。
【００８３】
デバイス管理モジュール２０５は、制御条件情報２１１に記載された計算機２０に搭載されるソフトウェア群２２３が利用するデバイスの利用を許可し、記載されないデバイスの利用をできないように制御し、もし、利用できないように制御したデバイスをソフトウェア２２３や利用者６１が利用しようとする場合は、計算機２０の画面に利用できないことを表示して利用者６１に通知する。
【００８４】
本実施例では、起動を許可しないソフトウェアの起動が指示された場合はソフトウェアの起動を抑止し、計算機２０の画面表示装置に、ソフトウェアの起動を抑止したことを計算機２０に表示して利用者６１に通知する。
【００８５】
デバイス管理モジュール２０５は、計算機２０に搭載される入出力インタフェースや外部接続装置等のデバイスドライバの有効および無効の切り替えを制御する。
【００８６】
（設定ファイルの説明）
次に、設定情報ファイル４０について説明する。
【００８７】
設定情報ファイル４０は、管理対象とする計算機２０の情報、ソフトウェアの情報を記述するファイル群であり、計算機機種情報設定ファイル４１と、計算機管理情報設定ファイル４２と、ソフトウェア情報設定ファイル４３と、ソフトウェアリリース管理情報設定ファイル４４と、制御条件設定ファイル４５から構成される。
【００８８】
本実施では、あらかじめ管理者６０によって記述された設定情報ファイル４０をシステムへ設定する場合について説明するが、画面ＧＵＩで行う場合であっても、画面ＧＵＩに入力された情報を基に設定ファイル４０が生成されシステムに設定できる構成とする。
【００８９】
また、以降で記載される名称で記される情報は、データベース１００の各テーブル内の名称に一致するカラムに登録されるものとする。
【００９０】
計算機機種情報設定ファイル４１は、Ｍｏｄｅｌと、当該計算機２０が具備するハードウェアを一意に認識可能な情報（Ｉｎｔｅｒｆａｃｅ，ＤｉｓｋＤｒｉｖｅ等）が記載された設定情報ファイルである。
【００９１】
計算機管理情報設定ファイル４２は、制御管理対象とする計算機２０のＣｏｍｐｕｔｅｒＯｗｎｅｒと、ＨｏｓｔＮａｍｅと、ＩＰＡｄｄｒｅｓｓと、Ｍｏｄｅｌが記載された設定情報ファイルである。
【００９２】
ソフトウェア情報設定ファイル４３は、ＳｏｆｔｗａｒｅＮａｍｅと、ＳｙｓｔｅｍＮａｍｅと、ＰｒｏｃｅｓｓＮａｍｅと、ＳｏｆｔｗａｒｅＯｗｎｅｒと、ソフトウェアが計算機２０で実行される際に利用する、当該計算機２０が具備するハードウェアを一意に認識可能な情報（Ｉｎｔｅｒｆａｃｅ，ＤｉｓｋＤｒｉｖｅ等）が記載された設定情報ファイルである。
【００９３】
ソフトウェアリリース管理情報設定ファイル４４は、計算機２０へリリースするソフトウェアのＳｏｆｔｗａｒｅＮａｍｅと、ＳｏｆｔｗａｒｅＯｗｎｅｒと、Ｐａｔｈが記載された設定情報ファイルである。
【００９４】
制御条件設定ファイル４５は、Ａｕｔｈｏｒと、制御管理対象とする計算機２０の属性（本実施例では、ＣｏｍｐｕｔｅｒＯｗｎｅｒ）と、起動可否の制御を行うための初期設定条件（Ｉｎｉｔｉａｌｉｚｅ）やソフトウェアの種類（ソフトウェア名称）の組み合わせ条件（本実施例では、Ｃｏｍｐａｎｙの組み合わせ）と、当該組み合わせに対する動作を表す値と、制御を開始する制御開始時刻（Ｓｔａｒｔ）と制御無効とする制御終了時刻（Ｅｎｄ）とを含む制御時刻情報が記載された設定ファイルである。
【００９５】
組み合わせに対する動作を表す値は、ソフトウェアの起動を許可すること、もしくは、ソフトウェアの起動を禁止することであり、それぞれ「Ａｌｌｏｗ」、もしくは、「Ｄｅｎｙ」を値として記載する。
【００９６】
（処理の概要（初期登録））
次に、ソフトウェアの実行状態と起動の監視と条件に合致した際の制御とデバイスの利用可否の制御を行う上で必要となる計算機機種情報と、計算機管理情報と、ソフトウェア情報と、ソフトウェアリリース管理情報をデータベース１０に登録するまでの処理動作を図６乃至図９を使って説明する。
【００９７】
計算機機種情報設定モジュール１１１と、計算機管理情報設定モジュール１１２と、ソフトウェア情報設定モジュール１１３と、ソフトウェアリリース管理情報設定モジュール１１４が、それぞれ、管理者６０からの計算機機種情報設定ファイル４１と、計算機管理情報設定ファイル４２と、ソフトウェア情報設定ファイル４３と、ソフトウェアリリース管理情報設定ファイル４４を受け付けることで、それぞれの処理が開始される。（Ｓ１００１，Ｓ１００３，Ｓ１００５，Ｓ１００８）
計算機機種情報設定モジュール１１１は、計算機機種情報設定ファイル４１を受け付けて（Ｓ１００１）、当該計算機機種情報設定ファイル４１に記載されている内容をＭＯＴＢＬ１０１への登録（Ｓ１００２）が完了すると処理が終了する。
【００９８】
計算機管理情報設定モジュール１１２は、計算機管理情報設定ファイル４２を受け付けて（Ｓ１００３）、ファイルに記載されている内容をＫＭＴＢＬ１０２への登録（Ｓ１００４）が完了すると処理が終了する。
【００９９】
ソフトウェア情報設定モジュール１１３は、ソフトウェア情報設定ファイル４３を受け付けて（Ｓ１００５）、ファイルに記載されている内容をＳＭＴＢＬ１０３への登録（Ｓ１００６）が完了すると処理が終了する。
【０１００】
ソフトウェアリリース管理情報設定モジュール１０４は、ソフトウェアリリース管理情報設定ファイル４４を受け付けると（Ｓ１００８）、ファイルに記載されている内容を、ＳＲＴＢＬ１０４への登録（Ｓ１０１０）と、ＳｏｆｔｗａｒｅＮａｍｅを検索キーとしてＳＭＴＢＬ１０３から、該当するソフトウェアのＳｏｆｔｗａｒｅＮａｍとＳｏｆｔｗａｒｅＯｗｎｅｒとＲｅｇｉｓｔｅｒｅｄＳｔａｔｕｓを抽出（Ｓ１００９）、抽出した情報のうち、さらにＣｏｍｐｕｔｅｒＯｗｎｅｒを検索キーとしてＣＯＴＢＬ１０５から該当するＣｏｍｐｕｔｅｒＯｗｎｅｒのソフトウェア組み合わせテーブルのマスターテーブル１０５ａを検索し、前記しＲｅｇｉｓｔｅｒｅｄＳｔａｔｕｓとＳｏｆｔｗａｒｅＯｗｎｅｒとＳｏｆｔｗａｒｅＮａｍｅを当該マスターテーブル１０５ａの組み合わせ項目として登録（Ｓ１０１１）すると処理が終了する。
【０１０１】
（インベントリ情報による情報収集）
図１０は、計算機２０が送付したインベントリ情報をデータベース１００に格納する処理を説明する図である。
【０１０２】
計算機２０が具備するハードウェアやソフトウェアの情報を収集し、インベントリ情報２１２として記録した収集した情報を、ソフトウェア起動制御管理サーバ２１の収集情報受信モジュール１１７へ送付（Ｓ１０２０）し、収集情報受信モジュール１１７が受信した情報に基づいて、設定情報群４０である、計算機機種情報設定ファイル４１−２と、計算機管理情報設定ファイル４２−２と、ソフトウェア情報設定４３−２と、ソフトウェアリリース情報設定ファイル４４−２を生成（Ｓ１０２１）し、それぞれ、機種情報設定モジュール１１１と、計算機管理情報設定モジュール１１２と、ソフトウェア情報設定モジュール１１３と、ソフトウェアリリース管理情報設定モジュール１１４に通知（Ｓ１０２２，Ｓ１０２４，Ｓ１０２７，Ｓ１０２９）し、それぞれのモジュールが、それぞれのテーブルに登録（Ｓ１０２３，Ｓ１０２５，Ｓ１０２６、Ｓ１０２８，Ｓ１０３１）する。
【０１０３】
ここで、各情報を登録する際は、共通して「ＲｅｇｉｓｔｅｒｅｄＳｔａｔｕｓ」の値は「ＮｏｎＲｅｇｉｓｔｅｒｅｄ」を登録し、その他の項目については各値の内容が明確でない場合は、「ｕｎｋｎｏｗｎ」を登録する。
【０１０４】
各値の内容が明確でないとは、計算機２０の情報収集モジュール２０６がインベントリ情報を収集することができずに前期各項目の内容が定まらない場合をいう。
【０１０５】
（処理の概要（制御条件設定から端末への配布）
図１１は組み合わせテーブル生成モジュール１１５が制御条件設定ファイル４５を受信してから計算機２０への制御条件２５０を送信するまでの処理について説明する図である。
【０１０６】
制御条件設定ファイル４５は、ファイルを編集した管理者６０等人物の情報を記す「Ａｕｔｈｏｒ」部と、ソフトウェアの実行状態と起動の監視の対象とするソフトウェアの種類を記す「Ｓｏｆｔｗａｒｅ」部と、ソフトウェアの実行状態と起動の監視および制御を行う計算機の情報を記す「Ｃｏｍｐｕｔｅｒ」部と、ソフトウェアの実行状態と起動の監視および制御条件の有効期間を表す「Ｔｉｍe」部からなる。
【０１０７】
「Ｓｏｆｔｗａｒｅ」部には、ＳＭＴＢＬ１０３に含まれる、ＲｅｇｉｓｔｅｒｄＳｔａｔｕｓもしくはＳｏｆｔｗａｒｅＮａｍｅもしくはＳｏｆｔｗａｒｅＯｗｎｅｒの、それぞれの組み合わせに対して起動を許可する場合は「Ａｌｌｏｗ」を、起動を禁止する場合は「Ｄｅｎｙ」を記載する。本実施例ではＣｏｍｐｕｔｅｒＯｗｎｅｒをソフトウェア組み合わせとして記載している。
【０１０８】
「Ｔｉｍｅ」は「Ｓｔａｒｔ」と「Ｅｎｄ」との一対から成り、「Ｓｔａｒｔ」は前記「Ｓｏｆｔｗａｒｅ」部に記載される制御内容が開始される時刻であり、「Ｅｎｄ」は無効となる時刻である。なお、「Ｓｔａｒｔ」の値として、時刻情報の代わりに「Ｎｉｌ」記載される場合は、ソフトウェア管理モジュール２０４がソフトウェア制御条件２５１を受信した後に直ちに制御を開始することを表し、「Ｅｎｄ」の値として、「Ｎｉｌ」が記載される場合は有効期間の無期限となる。
【０１０９】
組み合わせテーブル生成モジュール１１５は、管理者６０が作成（Ｓ１０４０）した制御条件設定ファイル４５を受け付け（Ｓ１０４１）、まず、ＣＯＴＢＬ１０５から、制御条件設定ファイル４５の「Ｃｏｍｐｕｔｅｒ」部に記載されＣｏｍｐｕｔｅｒＯｗｎｅｒに合致するソフトウェア組み合わせテーブル（ＣＯＴＢＬ）１０５のマスターテーブル１０５ａをコピーしてサブテーブル１０５ｂを生成する。（Ｓ１０４２）次に、制御条件設定ファイル４５の「Ｓｏｆｔｗａｒｅ」部の「Ｉｎｉｔｉａｌｉｚｅ  Ａｌｌ」で示されるソフトウェアの実行可否の初期条件（本実施例では「Ａｌｌｏｗ」）をサブテーブル１０５に書き込む。次に、「Ｓｏｆｔｗａｒｅ」部の記載されるソフトウェアの組み合わせに対する実行可否をサブテーブル１０５ｂに書き込む。本実施例では、ＳｏｆｔｗａｒｅＯｗｎｅｒがＣｏｍｐａｎｙ＿ＡのソフトウェアとＣｏｍｐａｎｙ＿Ｂのソフトウェアの組み合わせでの実行を禁止し、ＳｏｆｔｗａｒｅＮａｍｅがrerource001とmony001の組み合わせでの実行を許可している場合を示している。次に、サブテーブル１０５ｂと制御条件設定ファイル４５とこれらを一意に識別するための制御条件番号を対応付けてＰＯＴＢＬ１０６に登録する。（Ｓ１０４３）そして、当該制御条件番号（Ｎｏ）を制御条件管理モジュール１１６に通知（Ｓ１０４４）する。
【０１１０】
もしくは、管理者６０が、既に生成された制御条件番号（Ｎｏ）を組み合わせテーブル生成モジュール１１５に通知（Ｓ１０５０）すると、組み合わせテーブル生成モジュール１１５は、管理者６０から受け付けた制御条件番号（Ｎｏ）を検索キーとしてＰＯＴＢＬ１０６から、該当する制御条件番号（Ｎｏ）の項目とその制御条件番号に対応づけて登録されている制御条件設定ファイル４５を管理者６１に提示する。（Ｓ１０５１）
【０１１１】
制御条件管理モジュール１１６は、組み合わせテーブル生成モジュール１１５から制御条件番号（Ｎｏ）を受け付けると（Ｓ１０４４）、受け付けた制御条件番号（Ｓ１０４５）を検索キーとして、ＰＯＴＢＬ１０６からサブテーブル１０５ｂと制御条件設定ファイル４５を検索して抽出（Ｓ１０４５）する。  次に、ＳＭＴＢＬ１０３から、サブテーブル１０５ｂに記載されるＳｏｆｔｗａｒｅＮａｍｅに合致するソフトウェア名称かつ登録状況（ＲｅｇｉｓｔｅｒｅｄＳｔａｔｕｓ）の値が「Ｒｅｇｉｓｔｅｒｅｄ」であるソフトウェアの、ソフトウェアの利用入出力インタフェース（Ｉｎｔｅｒｆａｃｅ）と利用光学ドライブ（ＤｉａｋＤｒｉｖｅ）前記サブテーブル１０５ｂと抽出（実施例では「ＵＳＢ」と「ＬＡＮ」が抽出される）し、抽出した情報と、制御条件設定ファイル４５の「Ｔｉｍｅ」部に記載されている内容を制御条件２５０として格納する。そして、ＫＭＴＢＬ１０２からのＣｏｍｐｕｔｅｒＯｗｎｅｒの値が検索キーと一致する計算機のＩＰＡｄｒｅｓｓを抽出し、当該ＩＰＡｄｄｒｅｓｓを制御条件２５０の配布先として設定し、当該制御条件２５０を通知する。
これにより、計算機２０に登録状況（ＲｅｇｉｓｔｅｒｅｄＳｔｔａｕｓ）の値が「ＮｏｎＲｅｇｉｓｔｅｒｅｄ」のソフトウェアのみが存在する場合は、計算機２０が備える外部入出力ポートなどのデバイス２２４を利用することができず、管理者６０が許可しないソフトウェア２２３によりデバイス２２４が使われることによる情報の漏えいなどのセキュリティのリスクを軽減することが可能である。
【０１１２】
（端末における情報収集）
図１２は計算機２０のインベントリ情報２１２を収集する処理を説明する図である。
【０１１３】
情報収集モジュール２０６は、計算機２０の基本ソフトウェア２２１が管理するデバイス２２４やソフトウェア２２３の情報を取得（Ｓ１０６０）し、また、ソフトウェア２２３のインストール場所やプロセスの名称やデバイスやデバイスドライバの情報を直接取得し、インベントリ情報として２２１として自計算機２０に記録し、管理サーバ１０からの指示を契機に、もしくは、情報収集モジュール２０６が自律的に、管理サーバ１０の収集情報受信モジュール１１７へ通知（Ｓ１０６３）する。
【０１１４】
（制御条件を受信して制御するまで）
図１３は、計算機２０が管理サーバ１０から制御条件２５０を受信した後に、ソフトウェア２２３の実行状態と起動の監視と条件に基づく制御と、デバイス２２４の利用可否制御を実行する処理を説明する図である。
【０１１５】
制御条件受信ジュール２０２は、管理サーバ１０の制御条件管理モジュール１１６から制御条件２５０を受信（Ｓ１０７０）すると、受信した制御条件２５０を制御条件情報２１１として自計算機２０内に記録（Ｓ１０７１）し、受信した制御条件２５０から、ソフトウェア２２３に対する制御条件（ソフトウェア制御条件と記す）２５１とデバイス２２４に対する制御条件（デバイス制御条件と記す）２５２を分け、ソフトウェア制御条件２５１をソフトウェア管理モジュール２０４に、デバイス制御条件２５２とデバイス管理モジュール２０５へ通知する（Ｓ１０７２、Ｓ１０７３）。なお、制御条件２５０に「Ｄｅｖｉｃｅ」部の記載がない場合は、ソフトウェア制御条件２５１のみを抽出してソフトウェア管理モジュール２０４へ通知する。
【０１１６】
ソフトウェア管理モジュール２０４は、通知されたソフトウェア制御条件２５１に記載された内容に基づき、以下の通り、計算機２０に搭載されるソフトウェア２２３の実行状態と起動を監視し、条件に合致した場合にソフトウェア２２３の起動制御を実行する。
【０１１７】
ソフトウェア制御条件２５１は、監視と制御の対象とするソフトウェア２２３と監視するソフトウェア２２３の組み合わせ条件と制御内容から成るテーブル情報を含む「Ｓｏｆｔｗａｒｅ」部と、「Ｓｏｆｔｗａｒｅ」部に記載されるソフトウェアの監視と制御条件の有効期間（制御有効期間）を表す「Ｔｉｍe」部からなる。
【０１１８】
「Ｔｉｍｅ」は「Ｓｔａｒｔ」と「Ｅｎｄ」との１対から成り、「Ｓｔａｒｔ」は制御有効期間の開始時刻、すなわち、前記「Ｓｏｆｔｗａｒｅ」部に記載される監視と制御が開始される時刻であり、「Ｅｎｄ」は、制御有効期間の終了時刻、すなわち、監視と制御を停止する（終了する）時刻である。なお、「Ｓｔａｒｔ」の値として、時刻情報の代わりに「Ｎｉｌ」記載される場合は、ソフトウェア管理モジュール２０４がソフトウェア制御条件２５１を受信した後に直ちに監視と条件に合致した場合の制御を開始することを表し、「Ｅｎｄ」の値として、「Ｎｉｌ」が記載される場合は有効期間が無期限となる。
【０１１９】
ソフトウェア管理モジュール２０４は、最初に、ソフトウェア制御条件２５１の中の「Ｔｉｍe」部を参照し、ソフトウェア２２３の実行状態と起動の監視と制御を実施する時間帯を読み取る。さらに、現在時刻を取得し、もし、取得した時刻が制御有効期間内で無い場合は、「Ｓｏｆｔｗａｒｅ」部の参照による制御は行わず、初期設定に従う。
【０１２０】
取得した現在時刻が制御有効期間内であれば、ソフトウェア制御条件２５１に記載される「Ｓｏｆｔｗａｒｅ」部のサブテーブル１０５ｂを参照し、制御内容の初期状態と監視制御対象とするソフトウェアと組み合わせに対する制御内容を読み取る。
【０１２１】
監視対象のソフトウェアは、サブテーブルのＳｏｆｔｗａｒｅＮａｍｅに記載されているものとし、本実施例では「ｃｒｍ００１」と「ｒｅｓｏｕｒｃｅ００１」と「ｍｏｎｅｙ００１」が実行状態と起動の有無の監視対象となる。  
ソフトウェア監視モジュール２０４は、サブテーブル１０５ｂに従い、実行状態と起動を監視するソフトウェアとソフトウェアの組み合わせに対する制御内容を抽出し、たとえば、実行状態を監視するソフトウェア群のパスと実行ファイルの名称を格納する変数をＡ［ｎ］とし、起動を監視するソフトウェア群のパスと実行ファイルの名称を格納する変数をＢ［ｎ］とした場合、変数Ａ［１］とＢ［１］にはアプリケーションソフトウェア「crm.exe」が格納され、変数Ａ「２」Ｂ［２］にはアプリケーションソフトウェア「money.exe」が格納され、変数Ａ［３］とＢ［３］にはアプリケーションソフトウェア「resource.exe」が格納される。そして、サブテーブル１０５ｂに記載される制条件に従い、Ａ［１］とＢ［２］、Ａ［１］とＢ［３］、Ａ［２］とＢ［１］、Ａ［３］とＢ［１］の組み合わせである場合、
つまり、「c:\Program\crm.exe」と「c:\Program\money.exe」との組み合わせ、および、その逆の組み合わせ、「c:\Program\crm.exe」と「c:\Program\resource.exe」との組み合わせ、および、その逆の組み合わせでのソフトウェアの起動を許可しないことをあらわす。
【０１２２】
たとえば、あらかじめアプリケーションソフトウェア「crm.exe」が実行されているとき、利用者６１が計算機２０に対してアプリケーションソフトウェア「money.exe」を起動しようとすると、基本ソフトウェア２２１は、計算機２０内の主記憶装置４０１にアプリケーションソフトウェア「money.exe」のプロセスを生成するエリアを確保し、アプリケーションソフトウェア「money.exe」を計算機２０の主記憶装置４０１に展開し実行する。
【０１２３】
制御内容として、起動を「禁止」する場合は、プロセスの生成処理を行う段階で、ソフトウェア管理モジュール２０４が、基本ソフトウェア２２１が行うプロセス生成処理に割り込んでプロセス生成処理を一時停止し、「money.exe」との組み合わせで起動を制御するソフトウェアがあるか否かをチェックする。本例では、「money.exe」との組み合わせで監視制御するアプリケーションソフトウェアは「crm.exe」であるため、ソフトウェア管理モジュール２０４が「crm.exe」が既に実行中であるか否かを確認する。
【０１２４】
もし「crm.exe」が既に実行されていなければ「money.exe」プロセス生成処理を継続し、実行されていれば、プロセスの生成処理を停止するメッセージを基本ソフトウェア２２１に通知することでアプリケーションソフトウェア「money.exe」の起動を抑止する（Ｓ１７０４）。
【０１２５】
ソフトウェアの起動が抑止された場合は、計算機２０の画面上にアプリケーションソフトウェア「crm.exe」の起動を抑止したことを表示し利用者６１に通知する（Ｓ１０７６）。
【０１２６】
デバイス管理モジュール２０５は、通知されたデバイス制御条件２５２に基づき、計算機２０に備えるデバイスを利用できるように有効化し、それ以外のデバイスはデバイスドライバソフトウェアの処理を停止するなどして利用できないように無効化する。
【０１２７】
デバイス制御条件２５２は、制御対象とするデバイスの種別を表す「Ｄｅｖｉｃｅ」部と、「Ｄｅｖｉｃｅ」部に記載されるデバイスに対する制御条件の有効期間を表す「Ｔｉｍe」部からなる。「Ｔｉｍｅ」は「Ｓｔａｒｔ」と「Ｅｎｄ」との１対から成り、「Ｓｔａｒｔ」は「Ｓｏｆｔｗａｒｅ」部に記載される制御内容有効となる時刻であり、「Ｅｎｄ」は無効となる（終了する）時刻である。
【０１２８】
なお、「Ｓｔａｒｔ」の値として、時刻情報の代わりに「Ｎｉｌ」記載される場合は、デバイス管理モジュール２０５がデバイス制御条件２５２を受信した後に直ちに制御を開始することを表し、「Ｅｎｄ」の値として、「Ｎｉｌ」が記載される場合は有効期間が無期限となる。
【０１２９】
デバイス管理モジュール２０５は、上述したソフトウェア管理モジュール２０４と同様、デバイス制御条件２５２の中の「Ｔｉｍe」部を参照し、デバイス制御をおこなう時間帯を読み取る。現在時刻が制御有効期間内で無い場合は、「Ｄｅｖｉｃｅ」部の参照による制御は行わず、初期設定に従う。現在時刻が制御有効期間内であれば、「Ｄｅｖｉｃｅ」部の参照による制御を行う。
【０１３０】
図１３に示す例では、「Ｄｅｖｉｃｅ」部の「Ｉｎｉｔｉａｌｉｚｅ  Ａｌｌ」の値として「Ｄｅｎｙ」を記載した場合、つまり、「全てのデバイス利用を禁止する」ことを初期値とした場合を記載している。そして、「ＵＳＢ」デバイスと「ＬＡＮ」デバイスの利用を許可しているため、ＵＳＢデバイスとＬＡＮデバイスのドライバのみを有効化し、利用者やソフトウェアが利用できるようにする。（Ｓ１０７５）
【０１３１】
以上の処理により、管理サーバ１０と計算機２０は管理者６０の要求に基づいてソフトウェアの種類（本実施例では、ＳｏｆｔｗａｒｅＯｗｎｅｒ）の組み合わせによりソフトウェアの起動可否を制御し、また、ソフトウェアが利用するデバイスの利用の可否を制御することができる。
【０１３２】
（実施例２）
次に、本発明の実施例２のアプリケーションウィンドウ送信型のシンクライアントシステムにおけるソフトウェア利用制御管理システムについて説明する。
【０１３３】
本実施例では、実施例1との相違点について述べるが、その他は、実施例１と同様である。
【０１３４】
図１４は、アプリケーションウィンドウ送信型のシンクライアントシステムに対して本発明を適用したソフトウェア実行制御管理システム１−２を構成するソフトウェア実行制御管理サーバソフトウェア１１−２を具備する管理サーバ１０−２とソフトウェア実行制御管理クライアントソフトウェア２１−２を具備するシンクライアントサーバ７０およびシンクライアント端末８０の構成を示すブロック図である。
【０１３５】
ソフトウェア実行制御管理システム1−２は、ソフトウェア実行制御管理サーバソフトウェア１１−２を具備する管理サーバ１０−２とソフトウェア実行制御管理クライアントソフトウェア２１−２,２１−３を具備する少なくとも１つのシンクライアントサーバ７０とシンクライアント端末８０が、ネットワーク３０を介して接続されることで構成される。
【０１３６】
管理サーバ１０−２およびソフトウェア実行制御管理サーバソフトウェア１１−２は、それぞれ、図１に示す管理サーバ１０およびソフトウェア実行制御管理サーバソフトウェア１１に相当する。
【０１３７】
シンクライアントサーバ７０およびシンクライアント端末８０は、図１に示す、計算機２０に相当する。
【０１３８】
アプリケーションウィンドウ送信型シンクライアントシステムとは、シンクライアントサーバ７０に搭載されるアプリケーションソフトウェア２２３−２の動作をウィンドウ単位でシンクライアント端末８０に配信する形態のシンクライアントシステムである。アプリケーションソフトウェア２２３−２Ａや２２３−２Ｂはシンクライアントサーバ７０で実行されるが、利用者はそのアプリケーションソフトウェア２２３−２Ａや２２３−２Ｂがまるでシンクライアント端末８０側の一つのウィンドウで動いているように見える。
【０１３９】
利用者がシンクライアント端末８０側の一つのウィンドウに対して行った操作情報は、はネットワーク３０を介して、当該ウィンドウの配信元であるシンクライアントサーバ７０に送信され、シンクライアントサーバ７０で動作するアプリケーションソフトウェア２２３−３に反映され、実際に操作が行われる。
【０１４０】
シンクライアント端末８０からネットワーク３０を介して遠隔からシンクライアントサーバ７０に搭載されるソフトウェア２２３−２を起動できるようにするために、アプリケーションウィンドウ送信型シンクライアントサーバ７０はシンクライアント端末８０に対して、アプリケーションソフトウェア２２３−２の実体のない見かけ上の情報を提示する。この情報をアプリケーションソフトウェア２２３−２のソフトウェアリンク情報３０１と記す。
【０１４１】
通常のコンピュータでのソフトウェアは、利用者が、マウス等を使用して画面上に表示されるアプリケーションソフトウェア２２３−２のアイコンをクリックする等の操作を行うことによって起動するが、アプリーションウィンドウ送信型シンクライアントシステムでは、利用者は、シンクライアント端末８０に表示されるソフトウェアリンク情報３０１をクリックすると、そのクリックした情報がネットワーク３０を介してシンクライアントサーバ７０に送信され、シンクライアントサーバ７０においてアプリケーションソフトウェア２２３−３が起動する。
【０１４２】
シンクライアントサーバ７０からシンクライアント端末８０に対して、ソフトウェアリンク情報を通知する方法としては、例えば、シンクライアントサーバ７０にインストールされているソフトウェア２２３−２の場所を記した設定ファイルを送付する方法や、Ｗｉｎｄｏｗｓ（登録商標）ＯＳではレジストリ情報を送付する等の方法や、ソフトウェアリンク情報３０１を通知するための専用の通信ソフトウェアを用いる方法、等がある。
【０１４３】
本システムにおいて、利用者６１が直接操作するのはシンクライアント端末８０であり、シンクライアント端末８０側に保持されるソフトウェアリンク情報３０１をマウスでクリックする等の操作を行うことによって、ソフトウェア２２３−２の処理が開始されるため、ソフトウェア２２３−３が起動されようとするか否かを監視するためには、シンクライアント端末８０に保持されるソフトウェアリンク情報３０１からがシンクライアントサーバ７０に対してソフトウェア２２３−２の起動を通知する際の処理を監視する必要がある。
【０１４４】
シンクライアント端末８０側でのソフトウェアの起動監視と実行制御を行うためには、管理サーバ１０のＳＲＴＢＬ１０５のソフトウェアのインストール場所を示す「Ｐａｔｈ」を、シンクライアント端末８０に保持されるソフトウェアリンク情報が保持されるパス等情報に変更（「ＬｉｎｋＰａｔｈ３０３」と記載する）し、制御対象とするソフトウェア２２３−２のプロセス名称（ＰｒｏｃｅｓｓＮａｍｅ）を当該ソフトウェアリンク情報３０１に置き換える。（ＬｉｎｋＮａｍｅ３０４と記載する）。
【０１４５】
シンクライアント端末８０側には、ソフトウェアリンク管理モジュール３００をインストールし、複数のシンクライアントサーバ（７０Ａ，７０Ｂ）のソフトウェア（２２３−２Ａ，２２３−２Ｂ）のソフトウェアリンク情報３０１から起動されたソフトウェア（２２３−２Ａ、２２３−２Ｂ）の実行状態の管理と、制御条件受信モジュール２０２から通知されたソフトウェア制御条件に基づいて、シンクライアント端末８０に搭載されるソフトウェア情報３０１からのソフトウェア（２２３−２Ａ、２２３−２Ｂ）の起動要求の検知、ソフトウェア制御条件に合致した場合のソフトウェアリンク情報３０１に対する制御を行う。
【０１４６】
ソフトウェアリンク管理モジュール３００が行う、シンクライアント端末８０に搭載されるソフトウェアリンク情報３０１からのソフトウェア（２２３−２Ａ、２２３−２Ｂ）の起動要求の検知、ソフトウェア制御条件に合致した場合のソフトウェアリンク情報３０１に対する制御は、たとえば、利用者６１がシンクライアント端末８０においてソフトウェア２２３−２のソフトウェアリンク情報３０１を操作して、シンクライアントサーバ７０にあるソフトウェア２２３−２に対して発行される起動要求メッセージを、割り込んで取得し、当該ソフトウェアと組み合わせての実行を禁止するソフトウェアで実行中であるか否かをチェックする。実行中である場合は、シンクライアントサーバ７０へのメッセージ送信をブロックして、アプリケーションソフトウェア２２３−２への起動要求の発行を抑止する。その結果、ソフトウェア２２３−２は起動されない。そして、シンクライアント８０の画面上では、ソフトウェアの起動を抑止したことを表示して利用者６１へ通知する。
【０１４７】
前述のとおりソフトウェアリンク情報３０１は、ファイルや、レジストリ等の情報としてシンクライアント端末８０に保持される場合があるので、その際は、ソフトウェアリンク管理モジュール３００が監視制御を実行する際には、ファイルやレジストリを参照してこれらの情報からリンク情報を抽出した後に、監視制御を実行する。
【０１４８】
図１５に、アプリケーションウィンドウ送信型シンクライアントシステムにおける管理サーバ１０−２のＳＭＴＢＬ１０３−２と、ＳＲＴＢＬ１０４−２を図１５に示す。
【０１４９】
これらのテーブルを導入することにより、アプリケーションウィンドウ送信型シンクライアントシステムの管理サーバ１０−２とシンクライアントサーバ７０とシンクライアント端末８０は管理者６０が指定した、ソフトウェア２２３−２の組み合わせに対して、シンクライアント端末８０から起動要求されるソフトウェア２２３−２の起動を監視し、条件に応じた制御を行い、また、シンクライアント端末８０に搭載されるデバイスの利用の可否を通常の計算機６０と同様に制御管理することができる。
【０１５０】
（実施例３）
実施例３として、画面転送型のシンクライアントシステムにおけるソフトウェア利用制御管理システムについて説明する。
【０１５１】
本実施例では、実施例1との相違点について述べるが、その他は、実施例１と同様である。
【０１５２】
図１６は、画面転送型のシンクライアントシステムに適用したソフトウェア実行制御管理システム１−３の構成を示すブロック図である。
【０１５３】
ソフトウェア実行制御管理システム1−３は、ソフトウェア実行制御管理サーバソフトウェア１１−３を具備するソフトウェア実行制御管理サーバ装置１０−３とソフトウェア実行制御管理クライアントソフトウェア２１−４、２１−５を具備する少なくとも１つのシンクライアントサーバ７０−２とシンクライアント端末８０−２が、ネットワーク３０を介して接続されることで構成される。
【０１５４】
ソフトウェア実行制御管理サーバ装置１０−３およびソフトウェア実行制御管理サーバソフトウェア１１−３は、それぞれ、図１に示す、管理サーバ１０および管理サーバソフトウェア１１に相当する。
【０１５５】
シンクライアントサーバ７０−２およびシンクライアント端末８０−２は、図１に示す、計算機２０に相当する。
【０１５６】
画面転送型シンクライアントシステムは、利用者６１がシンクライアント端末８０−２を操作して入力した操作情報がシンクライアントサーバ７０−２に送信され、シンクライアントサーバ７０−２において、操作情報に基づいて、ソフトウェア２２３−３が実行され、当該ソフトウェアの実行結果に基づく画面情報がシンクライアント端末８０−２に送信され、表示されるシステムである。
【０１５７】
本システムにおける、ソフトウェア２２３−３はシンクライアントサーバ７０−２で実行されるため、ソフトウェア２２３−３の実行を制御するためには、シンクライアントサーバ７０−２に搭載されるソフトウェア２２３−３を制御する必要がある。一方で、デバイス２２４に対する制御はシンクライアント端末８０−２側に対して行う必要がある。
【０１５８】
シンクライアント端末８０−２は、接続先のシンクライアントサーバ７０−２に搭載されるソフトウェア２２３−３の利用要件に対応してデバイス２２４の利用可否を制御する必要があるため、シンクライアント端末８０−２に対して事前に制御条件を通知しても、利用要件を満足できない。
【０１５９】
よって、シンクライアント端末８０−２に対しては、シンクライアントサーバ７０−２に接続する際に、接続したシンクライアントサーバ７０−２に搭載されるソフトウェアの利用要件に合うデバイスの制御条件を設定する。
【０１６０】
図１７は、画面転送型シンクライアントシステムにおけるソフトウェア実行制御管理システム１−３の、制御条件要求モジュール２６１と、情報中継モジュール２６０の処理について説明する図である。
【０１６１】
情報中継モジュール２６０は、制御条件情報２１０から制御条件を抽出し保持し、制御条件要求モジュール２６１からの要求の受け付けを待つ。
【０１６２】
制御条件要求モジュール２６１は、シンクライアント端末８０−２が、シンクライアントサーバ７０−２に接続し、画面転送等のシンクライアント通信が行われる前に、情報中継モジュール２６０に対して、制御条件を要求すると、情報中継モジュール２６０は、制御条件をシンクライアント端末８０−２に送信し、シンクライアント端末８０−２側では、受信した制御条件に従い、デバイス２２４を制御する。
【０１６３】
このとき、制御条件に設定する「計算機の機種情報」はシンクライアント端末８０−２とし、ＭＯＴＢＬ１０１には、シンクライアント端末８０−２に情報を登録しておく。
【０１６４】
また、シンクライアント端末８０−２のインベントリ情報は情報中継モジュール２６０を介して、シンクライアントサーバ７０−２の管理情報群２１０に蓄積することで、サーバ１０−３では、ＫＭＴＢＬ１０２で管理される情報のうち、ＣｏｍｐｕｔｅｒＯｗｎｅｒと、ＨｏｓｔＮａｍｅと、ＩＰＡｄｄｒｅｓｓは、シンクライアントサーバ７０−２の情報が保持され、Ｍｏｄｅｌはシンクライアント端末８０−２の情報が保持される。
【０１６５】
情報中継モジュール２１０と制御条件要求モジュール２６１を導入することにより、画面転送型シンクライアントシステムのサーバ１０−３とシンクライアントサーバ７０−２とシンクライアント端末８０−２は管理者６０の要求に基づいてソフトウェア２２３−３の種類の組み合わせによりシンクライアント端末８０−２から起動要求されるソフトウェアの起動を制御し、また、シンクライアント計算機８０−２に搭載されるデバイス２２４の利用の可否を通常の計算機６０と同様に制御することができる。
【符号の説明】
【０１６６】
１…ソフトウェア実行制御管理システム、１０…ソフトウェア実行制御管理サーバ装置、１１…ソフトウェア実行制御管理サーバソフトウェア、２０…計算機、２１…ソフトウェア実行制御クライアントソフトウェア、３０…ネットワーク、４０…設定を行うための情報を含む設定ファイル、４１…計算機機種情報設定ファイル、４２…計算機管理情報設定ファイル、４３…ソフトウェア情報設定ファイル、４４…ソフトウェアリリース管理情報設定ファイル、４５…制御条件設定ファイル、５０…設定を行うためのＧＵＩ（グラフィカルユーザインタフェース）、６０…管理者、６１…計算機利用者、１００…データベース、１０１…計算機機種情報テーブル（ＭＯＴＢＬ）、１０２…計算機管理情報テーブル（ＫＭＴＢＬ）、１０３…ソフトウェア情報テーブル（ＳＭＴＢＬ）、１０４…ソフトウェアリリース管理情報テーブル（ＳＲＴＢＬ）、１０５…ソフトウェア組み合わせテーブル（ＣＯＴＢＬ）、１０６…制御条件管理テーブル（ＰＯＴＢＬ）、１１１…計算機機種情報設定モジュール、１１２…計算機管理情報設定モジュール、１１３…ソフトウェア情報設定モジュール、１１４…ソフトウェアリリース管理情報設定モジュール、１１５…組み合わせテーブル生成モジュール、１１６…制御条件管理モジュール、１１７…収集情報受信モジュール、１２０…通信モジュール、１２１…基本ソフトウェア、２０２…制御条件受信モジュール、２０３…管理モジュール群、２０４…ソフトウェア管理モジュール、２０５…デバイス管理モジュール、２０６…情報収集モジュール、２１０…計算機管理情報群、２１１…制御条件情報、２１２…インベントリ情報、２２０…通信モジュール、２２１…基本ソフトウェア、２２２…管理対象群、２２３…アプリケーションソフトウェア群、２２４…デバイスドライバソフトウェア群、２５０…制御条件、２５１…ソフトウェア制御条件、２５２…デバイス制御条件、２６０…情報中継モジュール、２６１…制御条件要求モジュール、７０…アプリケーションウィンドウ送信型シンクライアントサーバ、８０…シンクライアント端末、７０−２…画面転送型シンクライアントサーバ、８０−２…シンクライアント端末、３００…ソフトウェアリンク管理モジュール、３０１…ソフトウェアリンク情報、３０３…リンクパス（ＬｉｎｋＰａｔｈ）、３０４…リンク名（ＬｉｎｋＮａｍｅ）、４００…中央演算装置、４０１…主記憶装置、４０２…外部記憶装置、４０３…入出力インタフェース、４０４…装置接続回路。
【図１】
2011107921.tif 000003
【図２】
2011107921.tif 000004
【図３】
2011107921.tif 000005
【図４】
2011107921.tif 000006
【図５】
2011107921.tif 000007
【図６】
2011107921.tif 000008
【図７】
2011107921.tif 000009
【図８】
2011107921.tif 000010
【図９】
2011107921.tif 000011
【図１０】
2011107921.tif 000012
【図１１】
2011107921.tif 000013
【図１２】
2011107921.tif 000014
【図１３】
2011107921.tif 000015
【図１４】
2011107921.tif 000016
【図１５】
2011107921.tif 000017
【図１６】
2011107921.tif 000018
【図１７】
2011107921.tif 000019
【図１８】
2011107921.tif 000020