(57)【要約】  クラウド環境で利用者のプログラムを実行させる場合のセキュリティ確保などを実現する。本システムは、利用者の端末２と、パブリッククラウド（ＣＬ）３と、認証サーバ１とを有し、ＣＬ３内には、利用者のプログラム（ＵＰ）を実行させる対象となるサーバ（３１）と、コントローラ３０とを有する。認証サーバ１は、認証制御部１３とライブラリ５０とを有する。ライブラリ５０は、利用者の情報（ｄ２）、ＵＰの情報（ｄ３）、ＣＬ３の情報（ｄ４）、サーバの情報（ｄ５）、ＵＰとサーバとの実行の関連付けを管理する許可情報（ｄ１）を格納する。認証制御部１３は、ＵＰ認証情報（Ｆ１）を作成する処理、サーバ認証情報（Ｆ２）を作成する処理、ＵＰをＣＬ３のサーバで実行させる際に認証情報（Ｆ１，Ｆ２）及び許可情報（ｄ１）を参照して実行許可を判定する処理などを行う。
2013179383.tif 000002
【特許請求の範囲】
【請求項１】
利用者の端末と、複数のサーバを含むパブリッククラウドと、認証サーバとを含む要素がネットワークで接続され、
前記パブリッククラウド内には、前記利用者のプログラムを実行させる対象となるサーバと、当該実行に関する制御処理を行うコントローラとが設けられ、
前記認証サーバは、認証制御部と、記憶部とを有し、
前記記憶部は、前記利用者のＩＤを含む情報と、前記利用者のプログラムのＩＤを含む情報と、前記パブリッククラウドのＩＤを含む情報と、前記サーバのＩＤを含む情報と、前記利用者のプログラムと前記パブリッククラウドのサーバとの実行の関連付けを管理するための許可情報と、を格納し、
前記認証制御部は、
前記利用者のプログラムを認証するための第１の認証情報を作成し、前記利用者のプログラムに前記第１の認証情報を同梱させる、第１の処理部と、
前記パブリッククラウドのサーバを認証するための第２の認証情報を作成し、前記パブリッククラウドのサーバに提供する、第２の処理部と、
前記利用者の端末からの入力に応じて前記許可情報の内容を設定する第３の処理部と、
前記利用者のプログラムを前記パブリッククラウドのサーバで実行させる際に、前記コントローラと連携して、前記第１の認証情報、前記第２の認証情報、及び前記許可情報を参照し、当該利用者のプログラムを当該パブリッククラウドのサーバで実行許可するか判定して許可の場合は実行させる、第４の処理部と、を有すること、を特徴とするクラウドセキュリティ管理システム。
【請求項２】
請求項１記載のクラウドセキュリティ管理システムにおいて、
前記認証サーバの認証制御部の第１の処理部は、前記利用者の端末から指定される第１のパスワード情報を用いて前記第１の認証情報を暗号化し、前記利用者のプログラムに当該暗号化された第１の認証情報及び第１のパスワード情報を同梱させ、
前記パブリッククラウドのサーバで前記利用者のプログラムを実行させる際、前記コントローラは、前記サーバに格納されている前記第２の認証情報に含まれているサーバのＩＤを参照し、前記利用者のプログラムに同梱されている前記第１の認証情報及び第１のパスワード情報を参照し、当該第１の認証情報を第１のパスワード情報を用いて復号化し、当該第１の認証情報に含まれているプログラムのＩＤを参照し、当該サーバのＩＤ及びプログラムのＩＤを含む認証の要求を前記認証サーバへ送信し、
前記認証サーバの認証制御部の第４の処理部は、前記認証の要求に含まれているサーバのＩＤ及びプログラムのＩＤを用いて該当する許可情報を参照し、前記実行許可の判定をすること、を特徴とするクラウドセキュリティ管理システム。
【請求項３】
請求項１記載のクラウドセキュリティ管理システムにおいて、
前記パブリッククラウド内には、前記利用者のプログラムを実行させる対象となる複数の第１のサーバと、前記利用者のプログラムの処理のための各機能を提供する複数の第２のサーバとを有し、各々のサーバに第２の認証情報が格納され、
前記認証サーバの第４の処理部は、前記第１のサーバから前記第２のサーバへのアクセスごとに、前記コントローラと連携して、前記利用者のプログラムに対応した第１の認証情報、前記アクセス先の第２のサーバに対応した第２の認証情報、及び前記許可情報を参照し、当該第２のサーバの機能の利用許可の判定をすること、を特徴とするクラウドセキュリティ管理システム。
【請求項４】
請求項１記載のクラウドセキュリティ管理システムにおいて、
複数の利用者の端末を有し、複数のパブリッククラウドを有し、
前記パブリッククラウド内には、前記複数の利用者のプログラムを共用で実行させる候補となる１つ以上の共用サーバと、当該共用サーバを管理するための制御処理を行う前記コントローラとが設けられ、
前記許可情報は、前記利用者のプログラムと前記パブリッククラウドの共用サーバとの実行の関連付けが設定されること、を特徴とするクラウドセキュリティ管理システム。
【請求項５】
請求項１記載のクラウドセキュリティ管理システムにおいて、
前記認証サーバは、登録部と、実行制御部とを有し、
前記登録部は、前記利用者の端末からの指示に基づき、前記利用者のプログラムのデータを前記記憶部に格納する処理を行い、
前記実行制御部は、前記利用者の端末からの指示に基づき、前記記憶部に登録されている前記利用者のプログラムのデータを対象のパブリッククラウドのサーバで実行させる制御処理を前記コントローラと連携して行い、
前記認証制御部の前記第１の処理部は、前記利用者のプログラムを認証するための第１の認証情報を作成し、前記利用者のプログラムに前記第１の認証情報を同梱して前記記憶部に登録すること、を特徴とするクラウドセキュリティ管理システム。
【請求項６】
請求項１記載のクラウドセキュリティ管理システムにおいて、
前記認証サーバは、前記利用者の端末に対して画面を提供するユーザインターフェイス部を有し、
前記ユーザインターフェイス部による画面で前記利用者は前記利用者のプログラムを実行させる対象となるパブリッククラウドのサーバ及び機能を直接的に指定可能であり、
前記第３の処理部は、上記指定に応じて前記許可情報の内容を設定すること、を特徴とするクラウドセキュリティ管理システム。
【請求項７】
請求項１記載のクラウドセキュリティ管理システムにおいて、
前記認証サーバは、前記利用者の端末に対して画面を提供するユーザインターフェイス部を有し、
前記ユーザインターフェイス部による画面で前記利用者は前記利用者のプログラムを実行させる対象となるパブリッククラウドのサーバ及び機能を、性能または料金体系の選択の形式で間接的に指定可能であり、
前記第３の処理部は、上記指定に応じて、前記利用者のプログラムを実行させる対象となるパブリッククラウドのサーバ及び機能の関連付けを決定し、前記許可情報の内容を設定すること、を特徴とするクラウドセキュリティ管理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クラウドコンピューティング等の情報処理の技術に関する。特に、利用者のプログラムをクラウド環境で実行させる場合のセキュリティ管理に関する。
【背景技術】
【０００２】
クラウドコンピューティングシステムとして、各種のパブリッククラウドが存在する。例えばＷｉｎｄｏｗｓ  Ａｚｕｒｅ（登録商標）、Ａｍａｚｏｎ  ＥＣ２（登録商標）、等がある。不特定の一般の利用者は、パブリッククラウド（そのリソース・サービス処理等）を利用する場合、利用者の端末等からパブリッククラウドのサーバ等にアクセスし、仮想サーバにより提供されるサービス処理やストレージのデータ等を利用して、利用者の所望のソフトウェアプログラム処理（Ｗｅｂアプリケーション処理やバッチ処理など）を実現する。利用者は、パブリッククラウド（そのサービス）との契約に基づき、利用者のプログラムをパブリッククラウドのサーバ（仮想サーバ）で実行させることができる。各種のパブリッククラウド及びその各種のサービスに応じて、利用方法や課金方式は様々である。【０００３】
上記のように利用者のプログラムをパブリッククラウド等のクラウド環境で実行させる場合、利用者のプログラムの実行の正当性を確認して成りすまし等を防止しセキュリティを確保することが必要である。【０００４】
プログラム（ソフトウェア）の認証・セキュリティ管理などに係わる先行技術例として、特開２００４−４６６０６号公報（特許文献１）などがある。特許文献１などでは、プログラム（ソフトウェア）のライセンスをチェックしてマシン（利用者の端末）でのプログラムの実行を許可するか判断する旨の技術が記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−４６６０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
前記特許文献１などの先行技術例では、利用者の端末でのプログラムの実行の権限を確認することができるが、クラウド環境に対応した技術（例えば利用者プログラムの処理を実行するサーバ（仮想サーバ）等まで含めた認証や認可などを行う技術）ではないため、クラウド環境でのセキュリティの確保のためには不十分である。【０００７】
また、パブリッククラウド等のクラウド環境において利用者プログラム（その処理）をサーバ（仮想サーバ）で実行させるサービスを提供する従来システムは、サーバでの利用者プログラムの実行の正当性を確認する手段（機能）が不十分である。即ち、従来のパブリッククラウド等では、仮想サーバのレベルでみると、１つの仮想サーバでは特定の利用者のプログラムのみ実行されるように占有利用する形態であり、１つの仮想サーバで複数の利用者のプログラムを実行させようとした場合には、セキュリティの確保が不十分となる（図８）。言い換えると、ある利用者のプログラム（例えばＷｅｂアプリケーション処理用のプログラムやバッチ処理用のプログラム）を、あるパブリッククラウドのサーバ（仮想サーバ）を利用して実行させる場合、セキュリティを確保するために、その利用者のプログラムをそのパブリッククラウドのサーバで本当に実行してもよいかどうか、実行の正当性を確認することが必要である。しかしその手段（機能）が不十分であり、クラウド環境でのセキュリティ確保などに関して検討余地がある。より詳しくは以下に例示する問題（課題）がある。【０００８】
例えばクライアントからサーバへのアクセスやサーバ間でのアクセスが発生する場合、一般的にはＷｅｂサービスなどのＡＰＩ呼び出しの形式であり、その際にＩＤ及びパスワードをベースとした認証ないし認可が行われることでセキュリティが向上できる。【０００９】
例えば従来システムのパブリッククラウド（例えばＷｉｎｄｏｗｓ  Ａｚｕｒｅ）では、仮想サーバ（例えばＷｅｂロールやＷｏｒｋｅｒロール）を利用者に対して公開して当該仮想サーバで利用者プログラムを実行させることができる。このような従来システムでは、利用者プログラムを利用者端末からクラウド環境（サーバ）へアップロード（登録）する際に、当該利用者プログラムの認証（ＩＤ及びパスワードをベースとした認証（権限確認など））を行っている。しかしながらそのアップロード（及び認証）以降では、その利用者プログラムをクラウド環境内にある各サーバで実行してもよいかどうかに関する認証・認可は行われないか、あるいは行われてもそのための処理及び作業に手間がかかっている。即ちクラウド環境での効果的な制御・セキュリティ管理が実現できていない。【００１０】
上記従来システム例で、アップロード以降、パブリッククラウド内で利用者プログラムの処理を実行させる第１のサーバから更に他の機能やリソースを持つ第２のサーバにアクセスして処理を行う場合、その際のアクセスごとに及び第２のサーバの種類ごとに、上記ＩＤ及びパスワードによる認証・認可を要している。例えば利用者は、利用者プログラムのコード内に、上記各サーバへのアクセスごとのＩＤ及びパスワード等を記述する煩雑な作業を要し、管理コストが高い。【００１１】
また特に、インターネット上、複数の利用者の複数のプログラム（利用者プログラム）、複数のパブリッククラウドの複数のサーバ（仮想サーバ）等が存在し、パブリッククラウドのサーバを共用して複数の利用者のプログラムを実行させる形態が考えられる。その場合、どの利用者のプログラムをどのパブリッククラウドのサーバ（共用サーバ）で実行させるかを制御・管理することになるが、この場合にも上記同様に、各サーバへのアクセス時などに本当にその利用者プログラムをそのサーバで実行してもよいかどうか、実行の正当性を確認してセキュリティを確保することが必要になってくると考えられる。【００１２】
なお本発明者による関連する出願として、ＰＣＴ／ＪＰ２０１２／０５６０３９（クラウド共用型リソース提供システム）がある。この出願では、複数の利用者（端末）と複数のパブリッククラウドとの間に、利用者に対しパブリッククラウドのサーバによる共用リソース（共用サーバ）を提供する事業者（リソースプロバイダ）を設け、当該共用サーバで複数の利用者プログラムを実行可能とする技術について記載している。このシステムでも上記のように、どの利用者のプログラムをどのパブリッククラウドの共用サーバで実行するかに関するセキュリティ管理の問題が生じる。【００１３】
以上を鑑み、本発明の主な目的は、上記クラウド環境（仮想サーバ等）で利用者のプログラムを実行させる場合（１つの仮想サーバで複数の利用者のプログラムを実行させる場合）のセキュリティ確保などの問題を解決できる技術を提供することである。特に複数の利用者と複数のパブリッククラウド等を含むクラウド環境で、どの利用者のプログラムをどのパブリッククラウドのサーバ（共用サーバ等）で実行するかに関する認証・認可（正当性、権限の確認など）を行うことでセキュリティ確保や効果的な制御・管理が実現できる技術を提供することである。
【課題を解決するための手段】
【００１４】
上記目的を達成するため、本発明のうち代表的な形態は、インターネット上、パブリッククラウド等のクラウド環境（仮想サーバ等）で利用者のプログラムを実行させ、その際のセキュリティ管理を行うコンピュータシステム（「クラウドセキュリティ管理システム」）であって、以下に示す構成を有することを特徴とする。【００１５】
本形態のシステムは、例えば、利用者の端末と、複数のサーバを含むパブリッククラウドと、認証サーバとを含む要素がネットワークで接続される。前記パブリッククラウド内には、前記利用者のプログラムを実行させる対象となるサーバと、当該サーバを管理するための制御処理を行うコントローラとが設けられる。前記認証サーバは、認証制御部と、記憶部とを有する。前記記憶部は、前記利用者のＩＤを含む情報と、前記利用者のプログラムのＩＤを含む情報と、前記パブリッククラウドのＩＤを含む情報と、前記サーバのＩＤを含む情報と、前記利用者のプログラムと前記パブリッククラウドのサーバとの実行の関連付けを管理するための許可情報と、を格納する。前記認証制御部は、前記利用者のプログラムを認証するための第１の認証情報を作成し、前記利用者のプログラムに前記第１の認証情報を同梱させる、第１の処理部と、前記パブリッククラウドのサーバを認証するための第２の認証情報を作成し、対象のパブリッククラウドのサーバに提供する、第２の処理部と、前記利用者の端末からの入力に応じて前記許可情報の内容を設定する第３の処理部と、前記利用者のプログラムを前記パブリッククラウドのサーバで実行させる際に、前記コントローラと連携して、前記第１の認証情報、前記第２の認証情報、及び前記許可情報を参照し、当該利用者のプログラムを当該パブリッククラウドのサーバで実行許可するか判定して許可の場合は実行させる、第４の処理部と、を有する。
【発明の効果】
【００１６】
本発明のうち代表的な形態によれば、上記クラウド環境（仮想サーバ等）で利用者のプログラムを実行させる場合（１つの仮想サーバで複数の利用者のプログラムを実行させる場合）のセキュリティ確保などの問題を解決できる。特に複数の利用者と複数のパブリッククラウド等を含むクラウド環境で、どの利用者のプログラムをどのパブリッククラウドのサーバ（共用サーバ等）で実行するかに関する認証・認可（正当性、権限の確認など）を行うことでセキュリティ確保や効果的な制御・管理が実現できる。結果、利用者はパブリッククラウド等のリソースを容易・安価に利用することができる。
【図面の簡単な説明】
【００１７】
【図１】本発明の一実施の形態のシステム（クラウドセキュリティ管理システム）の全体の構成を示す図である。
【図２】本システムでの要素間の処理シーケンス例を示す図である。
【図３】本システムでのパブリッククラウド側の登録時の構成例を示す図である。
【図４】本システムでの利用者側の登録時の構成例を示す図である。
【図５】本システムでの実行制御時及び認証時の構成例を示す図である。
【図６】本システムでの管理情報の構成例を示す図である。
【図７】本システムでの共用例を示す図である。
【図８】（ａ）従来の仮想サーバの利用の形態、（ｂ）本システムでの仮想サーバ（共用サーバ）の利用の形態を示す図である。
【発明を実施するための形態】
【００１８】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一部には原則として同一符号を付し、その繰り返しの説明は省略する。
【００１９】
［概要等］
本実施の形態のシステム（クラウドセキュリティ管理システム）は、図１のシステム構成において、図２（図３〜図５）のような処理を行い、図６のようなデータ情報を管理し、図７のようにクラウド環境でのリソース共用を可能とする。
【００２０】
前提として、図８で、（ａ）は、従来のパブリッククラウド例での仮想サーバの利用の形態を示し、（ｂ）は、本実施の形態のシステムでの仮想サーバ（共用サーバ）の利用の形態を示す。（ａ）で、物理サーバ及びそのＯＳ上に、複数の仮想サーバ（＃１〜＃Ｍ）が構成されている。仮想サーバのレベルでみると、１つの仮想サーバでは、特定の利用者（Ｕ）の１つ以上のプログラム（ＵＰ）のみが実行されるように、一対一の関係付けで占有利用する形態である。一方、（ｂ）で、本システムでは、パブリッククラウドにおける物理サーバ（３３）及びそのＯＳ（３２）上に構成される複数の仮想サーバ（３１）において、共用サーバとなる１つの仮想サーバ（３１）では、複数の利用者（Ｕ）のプログラム（ＵＰ）が実行（許可）されるように、共同利用する形態である。本システムではこの利用の形態におけるセキュリティを確保する機能を備える。
【００２１】
図１等のように、本システムでは、特に、複数の利用者Ｕ２（端末２）と複数のパブリッククラウド３との間に介在する事業者のシステム（認証局１）を設ける。認証局（認証サーバ）１では、利用者のプログラムをパブリッククラウド３のサーバ（仮想サーバ）で実行させる際の認証・認可など（実行の正当性の確認、権限確認など）の処理を行う機能（認証制御部１３）を備える。これにより、クラウド環境でのセキュリティ確保／向上や、複数の利用者Ｕ２と複数のパブリッククラウド３との間での効果的な関連付けの制御・管理などを実現する。特に、本システムは、パブリッククラウド３のサーバを共用して複数の利用者のプログラムを実行させる機能（共用リソース提供サービス）を提供する。本機能では、利用者の要求・契約や、パブリッククラウド３の要求・契約や、特有の制御方式・課金方式や、通信・負荷の状況などに応じて、認証局（認証サーバ）１は、どの利用者Ｕ２のプログラム（ＵＰ）をどのパブリッククラウド３の仮想サーバ（共用サーバ３１）で実行させるかその関連付けを制御・管理する。本システムは、上記パブリッククラウド３のサーバ（共用サーバ３１）で利用者のプログラム（ＵＰ）を実行させる際、認証サーバ１の認証制御部１３を用いて認証処理を行う（当該サーバで当該利用者プログラムの処理を実行してもよいか、実行の正当性、権限を確認する）。
【００２２】
本システムでは、第１の認証情報（Ｆ１）を用いて利用者のプログラム（ＵＰ）の認証を行って成りすまし等を防止しセキュリティを高め、第２の認証情報（Ｆ２）を用いてパブリッククラウド３の共用サーバ３１の認証を行って成りすまし等を防止しセキュリティを高め、そして第１、第２の認証情報、及び許可情報（ｄ１）を用いて、利用者プログラム（ＵＰ）と共用サーバ３１との関係付けでの実行に関する認証（確認）を行ってセキュリティを確保する。
【００２３】
［（１）システム構成］
図１において、本実施の形態のシステム（クラウドセキュリティ管理システム）の全体の構成を示している。なお図１に示す本システムは、基本（前提）となるシステムとしてクラウド共用リソース提供システムを含んでおり、その上にクラウドセキュリティ管理システムを統合的に実装した形態である。言い換えると、本システムは、クラウド共用リソース提供機能（サービス）と、その機能に関するクラウドセキュリティ管理機能（サービス）とを有する構成である。
【００２４】
本システムの全体は、認証局（認証サーバ）１と、複数の利用者Ｕ２の端末（利用者端末）２と、複数の各種のパブリッククラウド（ＣＬと略す）３とを有し、これらは通信網（インターネット）で接続される。図１ではＣＬ３の例として、ＣＬ−Ａ，Ｂ，Ｃを有する。なおＣＬ３は、認証局１の事業者が運営するＣＬと、他の各社が運営するＣＬとを含んでもよい。
【００２５】
（１）  認証局１は、複数の利用者Ｕ２（端末２）と複数のＣＬ３との間に介在して、クラウド共用リソース提供機能及びそれに関連するクラウドセキュリティ管理機能を提供する事業者によるコンピュータシステムであり、認証サーバを含んで構成される。
【００２６】
認証局（認証サーバ）１は、ＵＩ部１０と、登録部１１と、実行制御部１２と、認証制御部１３と、ライブラリ５０（記憶部）とを有し、これら各部は例えばＬＡＮ等で接続される。認証制御部１３は、ＵＰ（利用者プログラム）認証情報作成処理１３１と、サーバ認証情報作成処理１３２と、許可情報設定処理１３３と、認証処理１３４（権限確認、許可判定処理）と、を含む各処理を行う処理部を有する。ライブラリ５０は、利用者端末２から登録されるＵＰ（利用者プログラム）データ１０２と、管理情報６０とを有する。管理情報６０として、許可情報ｄ１、利用者情報ｄ２、ＵＰ（利用者プログラム）情報ｄ３、ＣＬ（パブリッククラウド）情報ｄ４、及びサーバ情報ｄ５を有する（図６）。登録されるＵＰデータ１０２は、ＵＰ認証情報ファイルＦ１が含まれている（同梱されている）。なおライブラリ５０のデータ情報は認証局１によりセキュアに管理される。
【００２７】
認証サーバ１の各処理部（１０〜１３）は、例えば認証サーバ１に備える図示しないプロセッサ、メモリ、通信インタフェース、ＯＳ、入力装置、出力装置、等の公知の要素を用いたソフトウェアプログラム処理で実現される。ライブラリ５０（記憶部）は、例えば認証サーバ１によりアクセス可能なメモリ、ストレージ、ＤＢ及びその入出力制御処理を用いて実現される。
【００２８】
認証局１は、クラウド共用リソース提供機能として、登録部１１及び実行制御部１２等を用いて、複数の利用者Ｕ２に対し、利用契約に基づき、複数のＣＬ３によるリソース（共用リソース）を提供する。このリソースとして、各ＣＬ３内に設置（設定）される共同利用型の仮想サーバである共用サーバ３１を含む。利用者Ｕ２は、認証局１（ライブラリ５０）に利用者プログラム１０１（１０２）を登録することができる。そして共用サーバ３１上で複数の利用者Ｕ２のプログラム（ＵＰ１０３）を実行させることができる。なお本明細書では、「リソース」とは、利用者（利用者プログラム）から見て利用可能（候補）となる、すべてのＣＬ３と共用サーバ（仮想サーバ）３１を含む全体を指すこととする。複数の利用者Ｕ２が共用リソース（共用サーバ３１）を利用する仕組みにより安価で利用できる。
【００２９】
ＵＩ部１０は、利用者Ｕ２、ＣＬ３の事業者（管理者など）、及び認証局１の事業者（管理者など）の各者に対して、本システムのユーザインタフェース（ＵＩ）を提供する処理部であり、例えばＷｅｂサーバで実装される。１，２，３の各者は、端末などから認証サーバ１のＵＩ部１０の提供するＷｅｂページにアクセスしてログインし、その画面で各種の設定（登録）や、データ情報の参照や、指示入力などに関する操作が可能である。なお各者は上記ログインのためにＷｅｂユーザとしての専用の氏名、ＩＤ等（後述の認証情報のＩＤ及びパスワード等とは別）を登録し、認証サーバ１は当該Ｗｅｂユーザ情報を管理する。
【００３０】
登録部１１は、利用者Ｕ２によりライブラリ５０に各種情報（ｄ２，ｄ３）やＵＰデータ１０２を登録する処理や、ＣＬ３の事業者（または認証局１の事業者）によりライブラリ５０に各種情報（ｄ４，ｄ５）を登録する処理などを行う。
【００３１】
実行制御部１２は、利用者Ｕ２からの指示に基づき、ライブラリ５０に登録済みのＵＰデータ１０２を、対象のＣＬ３の共用サーバ３１で実行させる制御処理を行う。
【００３２】
認証制御部１３は、クラウド共用リソース提供機能に関連したクラウドセキュリティ管理機能を実現する。ＵＰ認証情報作成処理１３１では、利用者Ｕ２側による登録時（図３）に、ＵＰ認証情報Ｆ１を作成し、利用者Ｕ２（利用者端末２）に対して提供する処理などを行う。サーバ認証情報作成処理１３２では、ＣＬ３側による登録時（図２）に、サーバ認証情報Ｆ２を作成し、ＣＬ３の事業者（共用サーバ３１）に対して提供する処理などを行う。許可情報設定処理１３３では、利用者Ｕ２側による登録時（図３）に、許可情報ｄ１などを設定する処理を行う。認証処理１３４では、ＵＰ１０２（１０３）を共用サーバ３１で実行しようとする際（実行制御時及び認証時（図４））に、上記のＦ１，Ｆ２，ｄ１等を参照して認証処理（実行の正当性、権限を確認する処理）を行う。
【００３３】
（２）  利用者端末２は、不特定の一般の利用者Ｕ２が使用するコンピュータシステムないしＰＣ等の端末である。例えば利用者Ｕ２は企業のプログラム開発者などである。利用者端末２に、利用者Ｕ２により作成・用意される利用者プログラム（ＵＰ）１０１を有する。利用者端末２は、図示しないプロセッサ、メモリ、通信インタフェース、ＯＳ，Ｗｅｂブラウザ、入力装置、出力装置、等の公知の要素を用いて実現され、ソフトウェアプログラム処理により、認証局１とのやりとりの処理（図４）などを行う。
【００３４】
ＵＰ１０１は、対象のＣＬ３の共用サーバ３１に対して実行させる所定の処理（例えばＷｅｂアプリケーション処理やバッチ処理など）のためのプログラム（コード）のデータ（ファイル群）である。なおＵＰ１０１は構成設定情報（configuration）ファイルなどを含む。なお１０１，１０２，１０３は対応した内容である。
【００３５】
利用者Ｕ２は利用者端末２から、認証局１（そのサービス）を介して、ＣＬ３のリソース（共用サーバ３１）を利用し、ＵＰ１０１（１０２，１０３）を共用サーバ３１上で実行させる。
【００３６】
（３）  パブリッククラウド（ＣＬ）３は、当該ＣＬ３全体を制御する制御部３５と、複数の物理サーバ等のＨＷ（ハードウェア）３３と、その他図示しない公知要素（ストレージ・ＤＢやネットワーク機器など）とを有し、これらはネットワークで接続される。ＨＷ３３で稼動するＯＳ３２を有し、ＯＳ３２上で稼動する１つ以上の共用サーバ（仮想サーバ）３１を有する。ＯＳ３２は仮想化ソフトウェアやミドルウェア等を含む。共用サーバ３１上で１つ以上の利用者プログラム（ＵＰ）１０３が実行される。また共用サーバ３１上（又はＯＳ３３上）で稼動するコントローラ３０を有する。共用サーバ３１（又は対応するコントローラ３０）は、サーバ認証情報ファイルＦ２を有する。
【００３７】
制御部３５は、ＣＬ３ごとに元々備える制御部（公知技術）であり、ＣＬ３内のＨＷ３３を含むリソース等を管理・制御する。例えば、３５は、ＨＷ３３や仮想サーバ３１等の起動や停止を制御し、複数の物理サーバや仮想サーバから成るサーバグループを管理する。なお一般的には複数（多数）の物理サーバ及び仮想サーバを有し、それらがサーバグループの単位で管理される場合が多いので、図示する１つの共用サーバ３１を１つのサーバグループと捉えてもよい（そのサーバグループの単位内ではどのサーバが使用されてもよい）。
【００３８】
共用サーバ３１は、ＨＷ３１、ＯＳ３２上に、仮想化ソフトウェアによるリソースの多重化により構成される仮想サーバないし仮想マシンであり、共用サーバとして設定され公開される。ＵＰ１０３の処理は、適宜、ＣＬ３の共用サーバ３１等のリソースを使用（参照）しながら行われる。
【００３９】
コントローラ（エージェント）３０は、認証サーバ１と連携して制御処理を行うプログラム処理モジュールであり、対応する共用サーバ３１と共に設置（インストール）される。コントローラ３０は、共用サーバ３１でのＵＰ１０３の実行の際の認証などに関する処理を認証サーバ１（認証制御部１３）との連携で行う。
【００４０】
また認証局１は、図示しないが、各ＣＬ３の共用サーバ３１等の状況（ＵＰ１０３の実行状況など）をコントローラ３０との連携に基づきモニタして課金計算処理などを行うサブシステムを有してもよい。これにより例えば共用サーバ３１でのＵＰ１０３（例えばバッチ処理）の実行の実績に応じた課金などが可能である。
【００４１】
［（２）処理シーケンス］
図２は、本システム（図１）での各要素（１，２，３）間の処理シーケンスを示す。S101等は処理ステップを表す。大きくは、ＣＬ３側登録時（図３）の処理と、利用者Ｕ２側登録時（図４）の処理と、実行制御・認証時（図５）の処理とを有する。
【００４２】
○ＣＬ３側登録時（図３）：
（S301）  まずＣＬ３側の基本登録処理として、ＣＬ３事業者と認証局１との契約に基づき、ＣＬ３事業者の管理者等（または代わりの認証局１事業者の管理者等）は、端末から、認証サーバ１のＵＩ部１０及び登録部１１を通じて、ＣＬ３及びその共用サーバ３１に関する情報を登録する。認証サーバ１は、管理情報６０に、対応するＣＬ情報ｄ４、サーバ情報ｄ５を登録する（図６）。
【００４３】
（S101）  認証制御部１３は、サーバ認証情報作成処理１３２で、上記ＣＬ３及び共用サーバ３１に関するサーバ認証情報Ｆ２（ＳＶ−ＩＤ等を含む）を作成し、対象のＣＬ３の共用サーバ３１（コントローラ３０）へ提供（送信）する。
【００４４】
（S302）  対象のＣＬ３の共用サーバ３１にはコントローラ３０がインストールされると共に、共用サーバ３１（コントローラ３０）は、上記サーバ認証情報Ｆ２を受信して格納・管理する。
【００４５】
○利用者Ｕ２側登録時（図４）：
（S201）  利用者Ｕ２（利用者端末２）側の基本登録（設定）処理として、利用者Ｕ２と認証局１との契約（利用者Ｕ２からの申請）に基づき、利用者Ｕ２（または代わりの認証局１事業者の管理者等）は、認証サーバ１のＵＩ部１０及び登録部１１を通じて、利用者Ｕ２及びそのＵＰ１０１に関する情報を登録する。認証サーバ１は、管理情報６０に、対応する利用者情報ｄ２、ＵＰ情報ｄ３を登録する（図６）。なおＵＰ情報ｄ３の登録を後で行ってもよい。
【００４６】
（S202）  また、利用者Ｕ２により、ＵＩ部１０及び登録部１１を通じて、許可情報ｄ１を設定する。例えば画面で利用者Ｕ２が許可情報ｄ１の設定のための情報（どのリソース（ＣＬ３、共用サーバ３１、機能など）を利用するか、あるいは所望の性能や料金などの情報）を選択する。なお許可情報ｄ１の設定を後で行ってもよい。例えばジョブ情報を作成・登録する際に許可情報を設定してもよい。
【００４７】
（S102）  認証サーバ１の認証制御部１３の許可情報設定処理１３３では、S202の利用者Ｕ２による設定（選択）に基づき、管理情報６０に、対応する許可情報ｄ１の内容を設定する（図６）。ＵＰ１０１と共用サーバ３１との関係付けを利用者Ｕ２が直接的に指定する形式も可能であるし、間接的な形式、即ち認証局１が利用者Ｕ２の所望の性能や料金体系などに応じて具体的な関係付けを決定することも可能である。
【００４８】
（S203）  利用者Ｕ２（利用者端末２）から、ＵＩ部１０を介して登録部１１に対し、ＵＰ１０１のデータ（セット１０１ｂ）を事前登録するための指示（要求）を行う。なおＵＰ１０１（１０２）の登録のためにＵＰ認証情報Ｆ１を必要とする仕組みであるため、まずＦ１を要求して取得（ダウンロード）する流れになる。
【００４９】
（S103）  認証サーバ１は、S203に従い、認証制御部１３に連携し、ＵＰ認証情報作成処理１３１では、該当の利用者情報ｄ２、ＵＰ情報ｄ３を用いて、ＵＰ認証情報Ｆ１（ＵＰ−ＩＤを含む）を作成する。ここで例えば利用者Ｕ２に対し、Ｆ１の暗号化のためのＩＤ及びパスワード（ＰＷ）等を要求する。
【００５０】
（S204）  利用者Ｕ２は、S103に従い、Ｆ１を暗号化するためのＩＤ及びＰＷ等を設定（指定入力）する。
【００５１】
（S104）  認証制御部１３（１３１）は、S204のＩＤ及びＰＷ等を用いてＵＰ認証情報Ｆ１を暗号化し、暗号化したＦ１（ファイル）を、利用者Ｕ２（利用者端末２）へ提供（送信）する。
【００５２】
（S205）  利用者Ｕ２（利用者端末２）は、S104のＦ１（暗号化状態）を取得（ダウンロード）すると、作成・用意したＵＰ１０１に当該Ｆ１を同梱してセット１０１ｂ（ＰＷ付き）を構成し、当該セット１０１ｂを認証サーバ１へアップロードして登録する。
【００５３】
（S105）  認証サーバ１（１３１）は、S205のセット１０１ｂを受信し、ライブラリ５０内にＵＰデータ１０２として登録する。
【００５４】
○実行制御及び認証時（図５）：
（S206）  上記登録後、適宜、利用者Ｕ２は、利用者端末２から、認証サーバ１のＵＩ部１０を通じて、登録済みのＵＰ１０２の実行に関するジョブ情報を登録（設定）することができる。
【００５５】
（S106）  認証サーバ１の実行制御部１２は、S206のジョブ情報をライブラリ５０にジョブ情報６５として格納する。
【００５６】
（S207）  利用者Ｕ２は、利用者端末２から、適宜、ＵＩ部１０を通じて実行制御部１２に対し、登録済みのＵＰ１０２の実行を指示する。また例えばS206で登録済みのジョブを指定してジョブ実行指示をすることができる。
【００５７】
（S107）  認証サーバ１の実行制御部１２は、S207のＵＰ（ジョブ）の実行指示を受けると、ライブラリ５０内の該当のＵＰデータ１０２、ＵＰ情報ｄ３、ジョブ情報６５等を参照し、当該ＵＰ（ジョブ）を実行する対象となるＣＬ３の共用サーバ３１（対応するコントローラ３０）を判断し、当該ＣＬ３の共用サーバ３１へ、ＵＰ実行指示（実行ジョブ情報）を送信する。
【００５８】
（S304）  対象のＣＬ３の共用サーバ３１（コントローラ３０）は、S107の認証サーバ１からの指示・情報を受け、キューに格納し、順に参照して処理する。
【００５９】
（S108）  また認証サーバ１の実行制御部１２は、S207の該当ＵＰデータ１０２（Ｆ１を含む）を、対象のＣＬ３の共用サーバ３１のコントローラ３０へ送信する。
【００６０】
（S305）  対象のＣＬ３の共用サーバ３１のコントローラ３０は、S108の認証サーバ１からのＵＰデータ１０２を受信（取得）する。
【００６１】
（S306）  対象のＣＬ３の共用サーバ３１のコントローラ３０は、取得したＵＰデータ１０２に含まれているＩＤ及びパスワード等の情報を用いて、ＵＰデータ１０２に含まれているＵＰ認証情報Ｆ１を復号化（解凍）し、そのＦ１に含まれているＵＰ−ＩＤ等の情報を取り出して参照する。
【００６２】
また、同コントローラ３０は、予めS302で当該共用サーバ３１に格納されているサーバ認証情報Ｆ２を参照する。そしてＦ１の処理と同様に、コントローラ３０は、Ｆ２を復号化し、Ｆ２に含まれているＳＶ−ＩＤ等の情報を取り出して参照する。
【００６３】
（S307）  対象の共用サーバ３１のコントローラ３０は、S306でＦ１，Ｆ２から得たＵＰ−ＩＤ，ＳＶ−ＩＤ等の情報を用いて、認証処理（当該共用サーバ３１で当該ＵＰ１０２を実行してもよいかどうかの確認）のために、認証サーバ１（認証制御部１３）へ、認証の要求を送信する。
【００６４】
（S109）  認証サーバ１の認証制御部１３（権限確認処理１３４）は、S307の要求を受けると、当該要求に含まれているＵＰ−ＩＤ，ＳＶ−ＩＤ等の情報を参照して、ライブラリ５０内の該当の許可情報ｄ１を参照し（図６）、認証処理を行い、その結果情報を、対象のＣＬ３の共用サーバ３１（コントローラ３０）へ応答送信する。
【００６５】
（S308）  対象の共用サーバ３１のコントローラ３０は、S109の結果情報を受け、その情報が実行の許可を示している場合は、当該共用サーバ３１上で当該ＵＰ１０２（１０３）の処理を実行し、不許可を示している場合は実行しない。
【００６６】
なおＵＰ１０３及び共用サーバ３１がバッチ処理用である場合、そのバッチ処理は所定の日時で起動する。また必要に応じて、当該共用サーバ３１でのＵＰ１０３の処理から、他のリソース（ＣＬ３，共用サーバ３１）へアクセスが発生する。その場合は、当該アクセスごとに、上記同様に認証処理などが行われる。
【００６７】
［（３）ＣＬ側登録時の処理］
図３は、本システムでのＣＬ３側の登録時の構成・処理例を示す。認証局１事業者とＣＬ３事業者との契約に基づき、予め対象のＣＬ３内に共用サーバ３１が設置（設定）される。認証サーバ１（認証制御部１３）は、ＣＬ３事業者（管理者などのユーザＵ３）に対し、共用サーバ３１の認証情報（ＳＶ−ＩＤを含む）であるサーバ認証情報Ｆ２のファイルを作成・提供する。特にＦ２は、対応するＣＬ３の認証情報（ＣＬ−ＩＤを含む）を含めた形としてもよい。なおサーバ認証情報Ｆ２の仕組みは基本的にＵＰ認証情報Ｆ１の仕組み（図４等）と同様であるため簡易説明とする。共用サーバ３１は、種別（Ｗｅｂアプリ／バッチ等）や機能（ＰＤＦ／メール等）などに応じて複数設けることができ、それぞれにサーバ認証情報Ｆ２が格納される。各共用サーバ３１間では必要に応じてアクセスが発生し連携して処理が行われる。共用サーバ３１として、例えば＃Ａ１はＷｅｂアプリケーションサーバ、＃Ａ２はバッチサーバである。
【００６８】
（ａ１）ＣＬ３事業者（Ｕ３）は、端末３６などから認証サーバ１にアクセスし、ＵＩ部１０及び登録部１１の処理を介して、前述のようにＣＬ情報ｄ４、サーバ情報ｄ５を登録する。（ａ２）予め共用サーバ３１のセットアップ時に、認証制御部１３は、コントローラ３０となるプログラムを対象のＣＬ３の共用サーバ３１に提供しインストールさせる。各共用サーバ３１の稼動時に一緒にコントローラ３０を稼動させる。（ａ３）認証制御部１３のサーバ認証情報作成処理１３２では、ＣＬ情報ｄ４、サーバ情報ｄ５を用いて、ＳＶ−ＩＤ等を含むサーバ認証情報Ｆ２（Ｕ３のパスワードによる暗号化）を作成し、対象のＣＬ３の共用サーバ３１（コントローラ３０）へ提供し格納させる。
【００６９】
［（４）利用者側登録時の処理］
図４は、本システムでの利用者Ｕ２（端末２）側の登録時の構成・処理例を示す。認証サーバ１は、利用者Ｕ２（端末２）に対し、ＵＰ認証情報Ｆ１（ＵＰ−ＩＤを含む）のファイルを作成・提供する。Ｆ１は利用者Ｕ２の認証情報（Ｕ−ＩＤを含む）を含めた形としてもよい。
【００７０】
利用者Ｕ２の端末２では、認証サーバ１のＵＩ部１０及び登録部１１等の処理を通じて、ＵＰ登録処理２０１（ＵＰ１０１の登録に関する処理）を行う。例えばＵＩ部１０により提供されるＷｅｂページの画面でＵＰ登録処理２０１を行う。ＵＰ登録処理２０１として、利用者情報（ｄ２）の登録と、ＵＰ情報（ｄ３）の登録と、ＵＰデータ（１０２）の登録と、認証設定（パスワードの設定）と、許可情報（ｄ１）の設定と、を有する。
【００７１】
（ｂ１）利用者Ｕ２は、必要に応じて、画面で、利用者情報（ｄ２）の登録と共にＵＰ情報（ｄ３）を登録する。利用者Ｕ２は、ＵＰ１０１を作成／用意し、ＵＰ情報（ｄ３）の登録と共に、ＵＰ１０１に関するＵＰ認証情報Ｆ１を認証サーバ１からダウンロード（取得）する。（ｂ２）その際、利用者Ｕ２は、ＵＰ認証情報作成処理１３１に対し、認証設定（ＵＰ認証情報Ｆ１の暗号化のためのパスワードの設定）を行い、（ｂ３）ＵＰ認証情報作成処理１３１により暗号化されたＵＰ認証情報Ｆ１をダウンロード（取得）する。（ｂ４）利用者Ｕ２は、ＵＰ１０１にＵＰ認証情報Ｆ１を同梱（添付）してセット１０１ｂを構成し、（ｂ５）認証サーバ１のライブラリ５０へＵＰデータ１０２としてアップロード（登録）する。
【００７２】
なお上記で所定形式のセット１０１ｂにまとめて登録する作業・処理は、既存の汎用的なツール（例えば複数ファイルを１つのＺＩＰファイルに圧縮・暗号化するソフトウェア）を使用してもよいし、本システムで専用ツールを用意してもよい。なお必要とするセキュリティレベルに応じたツール・形式を利用すればよい。
【００７３】
（ｂ６）また利用者Ｕ２は、各情報（ｄ２，ｄ３）の登録と共に、ＵＩ部１０及び認証制御部１３の許可情報設定処理１３３を通じて、ＵＰ１０１（１０２）に関する許可情報（ｄ１）を設定する。利用者Ｕ２は、例えば画面で、ＵＰ１０１ごとに、候補の中から利用対象となるリソース（ＣＬ３、共用サーバ３１、その機能）、利用方式（料金体系）などを選択する。許可情報設定処理１３３は、利用者Ｕ２の選択に応じて、許可情報ｄ１及び利用者情報ｄ２などの内容（関連付け等）を設定する。料金体系は例えば性能としてＣＰＵ（プロセッサ）１秒あたりの単価などを提示して選択可能とする。
【００７４】
（ｂ７）また利用者Ｕ２（端末２のジョブ登録処理２０４）は、適宜、ジョブ情報６５を登録することができる。ジョブ情報６５は、ジョブの名称、識別情報（一意のコード等）、当該ジョブで使用するＵＰ１０２のＩＤ（ＵＰ−ＩＤ）及び許可情報ｄ１の指定、実行日時、等の情報を含む。ジョブ情報を登録しておけば、利用者Ｕ２は、ＵＰ１０２を実行させる際に、ＵＩ部１０からジョブを指定して実行することにより、対応するＵＰ１０２を実行させることができる（図５）。なおジョブを登録せずに直接・個別的にＵＰ１０２の実行指示をしてもよい。
【００７５】
なお他の構成例として、ＵＰ１０１とＦ１とのセット１０１ｂ（ＵＰデータ１０２）を認証サーバ１のライブラリ５０に登録する構成については、セット１０１ｂの構成を認証サーバ１側で行うなど、利用者Ｕ２及びＵＰ１０１の成りすまし等を防止できる方式であればよい。
【００７６】
［（５）実行制御・認証時の処理］
図５は、本システムでの認証サーバ１及びＣＬ３による実行制御時及び認証時の構成・処理例を示す。
【００７７】
（ｃ１）利用者Ｕ２の端末２では、認証サーバ１のＵＩ部１０及び実行制御部１２に対して、ＵＰ実行処理２０２を行う。ＵＰ実行処理２０２として、ジョブ登録（図４の２０４と同様）や、個別のＵＰ実行指示や、ジョブ実行指示などを有する。例えば利用者Ｕ２はジョブを登録してそのジョブの実行指示を与える。認証サーバ１の実行制御部１２は、端末２（ＵＰ実行処理２０２）からの指示・要求（ｃ１）を受け、ライブラリ５０にジョブ情報６５を登録したり、ＵＰ実行指示やジョブ実行指示に対応したＵＰデータ１０２を参照してその実行制御を行う。
【００７８】
（ｃ２）実行制御部１２は、利用者Ｕ２からの指示（ｃ１）に従い、該当のＵＰデータ１０２を対象のＣＬ３の共用サーバ３１で実行させるために、対象のＣＬ３の共用サーバ３１のコントローラ３０と連携し、実行指示を送信する。例えばジョブ情報６５による指示の場合は、認証サーバ１からＣＬ３またはコントローラ３０の管理するキューへ実行ジョブ情報を送信し格納させる。（ｃ３）上記指示と併せて、実行制御部１２はライブラリ５０のＵＰデータ１０２を取り出して対象の共用サーバ３１へ送信する。
【００７９】
共用サーバ３１（コントローラ３０）は、実行制御部１２からの指示（ｃ２）に従い、対象のＵＰ１０２（１０３）の処理を対象の共用サーバ３１上で稼働させる。その際、実行の正当性（権限）を確認するために、認証サーバ１（認証制御部１３）と連携して認証処理を行う。例えば共用サーバ３１は、キューを参照して自分が実行すべきジョブ情報がある場合は順に処理する。
【００８０】
（ｃ４）コントローラ３０は、上記共用サーバ３１でのＵＰ１０３の実行の前に、当該共用サーバ３１のサーバ認証情報Ｆ２を参照すると共に、ＵＰ１０３に同梱されているＵＰ認証情報Ｆ１を参照する。その際、Ｆ１は暗号化状態であるので、ＵＰ１０３に含まれている復号化のパスワード情報を取り出して当該パスワードでＦ１を復号化（解凍）して参照する。コントローラ３０は、復号化したＦ１に含まれているＵＰ−ＩＤ等の情報を参照し、復号化したＦ２に含まれているＳＶ−ＩＤ等の情報を参照する。
【００８１】
（ｃ５）コントローラ３０は、上記Ｆ１，Ｆ２から得たＵＰ−ＩＤ，ＳＶ−ＩＤ等の情報を用いて、認証サーバ１へ認証の要求を送信する。（ｃ６）認証サーバ１の認証制御部１３は、認証処理１３４において、コントローラ３０からの要求を受け、そのＵＰ−ＩＤ，ＳＶ−ＩＤ等の情報を用いて、該当する許可情報ｄ１を参照する（図６）。そして、１３４は、該当の利用者Ｕ２（Ｕ−ＩＤ）のＵＰ１０３（ＵＰ−ＩＤ）を該当のＣＬ３（ＣＬ−ＩＤ）の共用サーバ３１（ＳＶ−ＩＤ）で実行してもよいかどうか権限確認（許可判定）する。（ｃ７）認証サーバ１（１３）は、認証処理１３４の結果情報をコントローラ３０へ応答送信する。コントローラ３０は、結果情報から許可／不許可を確認し、許可である場合は、当該共用サーバ３１でＵＰ１０３の処理を実行する。
【００８２】
（ｃ８）また上記許可された共用サーバ３１でのＵＰ１０３の処理において、更に当該ＣＬ３内の他の共用サーバ３１（その機能ｆ１等）へのアクセスが発生する場合には、上記同様に、ＵＰ認証情報Ｆ１と、アクセス先の共用サーバ３１のサーバ認証情報Ｆ２とを用いて認証処理が行われる。（ｃ９）また他のＣＬ３へのアクセスが発生する場合にも上記同様に、ＵＰ認証情報Ｆ１と、アクセス先のＣＬ３の共用サーバ３１のサーバ認証情報Ｆ２とを用いて認証処理が行われる。
【００８３】
上記のように、各共用サーバ３１へのアクセス時の自動的な認証処理でＵＰ１０３と共用サーバ３１の正当性及びその関連付けでの権限を確認した上で実行させることができるので、クラウド環境でのセキュリティを確保できる。
【００８４】
［（６）管理情報］
図６は、本システムでの認証サーバ１のライブラリ５０（記憶部）に格納・管理される管理情報６０（ｄ１〜ｄ５）の構成例を示す。各情報（ｄ１〜ｄ５）は図示の例のように相互にリンク・関連付けられる。リソース情報としてＣＬ情報ｄ４とサーバ情報ｄ５を含む。
【００８５】
許可情報ｄ１は、認証局１として、どの利用者Ｕ２のどのＵＰ１０１（１０２）をどのＣＬ３のどの共用サーバ３１（その種別や機能）で実行を許可するかについての関連付けを制御・管理するための設定情報であり、認証処理時に実行の許可／不許可（権限）を判定（確認）する際に参照される。
【００８６】
利用者情報ｄ２は、複数の各々の利用者Ｕ２の管理情報である。利用者情報ｄ２として、利用者Ｕ２の名称、識別情報（一意のコード等。Ｕ−ＩＤとする）、各種の属性（例えば会社名、連絡先、Ｗｅｂユーザ情報など）、利用方式（料金体系）、などの情報を有する。利用方式は例えば認証局１が提示するサービス項目や料金体系（課金方式）などから利用者Ｕ２が選択したものを示す。なおＵ−ＩＤの例を「利用者Ａ」「Ｕ＃１」等で示す。
【００８７】
プログラム（ＵＰ）情報ｄ３は、利用者Ｕ２（Ｕ−ＩＤ）（ｄ２）に関連付けられる、複数の各々のＵＰ１０１（１０２）の管理情報である。ＵＰ情報ｄ３として、ＵＰ１０１の名称、識別情報（一意のコード等。ＵＰ−ＩＤとする）、プログラム種別｛例えばＷｅｂアプリ処理用／バッチ処理用など｝、利用機能・リソース（種類）｛例えばＰＤＦ／メール／ＤＢなど｝、等を有する。なおＵＰ−ＩＤの例を「ＵＰ＃Ａ１」等で示す。ＵＰ情報ｄ３は、ＵＰ−ＩＤによりＵＰ認証情報Ｆ１と関連付けられる。
【００８８】
パブリッククラウド（ＣＬ）情報ｄ４は、複数の各々のＣＬ３の管理情報である。ＣＬ情報ｄ４として、ＣＬ３の名称、識別情報（一意のコード等。ＣＬ−ＩＤとする）、各種の属性（例えば事業者情報、地域（位置）など）、サーバグループ情報、課金方式（単価）、等の情報を有する。サーバグループ情報は、当該ＣＬ３内に有するサーバグループ（共用サーバ３１のグループを含む）の管理情報である。課金方式（単価）は、当該ＣＬ３（共用サーバ３１）ごとにおける課金方式（単価）の情報である。なおＣＬ−ＩＤの例を「ＣＬ−Ａ」等で示す。
【００８９】
サーバ情報ｄ５は、ＣＬ３（ＣＬ−ＩＤ）（ｄ４）に関連付けられる、複数の各々の共用サーバ３１の管理情報である。サーバ情報ｄ５としては、サーバ（共用サーバ３１）の名称、識別情報（一意のコード等。ＳＶ−ＩＤとする）、サーバ種別｛例えばＷｅｂアプリ用／バッチ用など｝、提供機能・リソース（種類）｛例えばＰＤＦ／メール／ＤＢ等｝、等の情報を有する。なおＳＶ−ＩＤの例を「ＳＶ＃Ａ１」等で示す。
【００９０】
許可情報ｄ１は、例えば利用者Ｕ２ごとに１つ以上を設定することができ、複数設定した場合は選択利用可能である。許可情報ｄ１は、例えば、利用者Ｕ２を示すＵ−ＩＤと、当該利用者Ｕ２による利用（アクセス）を許可するＣＬ３を示すＣＬ−ＩＤと、当該ＣＬ３内で利用（アクセス）を許可する機能（例えばＰＤＦ等）と、の関連付けの情報を含む。あるいは、許可情報ｄ１は、各ＩＤ（Ｕ−ＩＤ，ＵＰ−ＩＤ，ＣＬ−ＩＤ，ＳＶ−ＩＤ）の関連付け（許可を示す）の情報を含む。よって、許可情報ｄ１を参照すれば、どの利用者Ｕ２（Ｕ−ＩＤ）のどのプログラム（ＵＰ−ＩＤ）をどのＣＬ３（ＣＬ−ＩＤ）のどの共用サーバ３１（ＳＶ−ＩＤ）で実行してよいかが確認（判定）できる。
【００９１】
なお関連付けの仕方として、Ｕ−ＩＤとＣＬ−ＩＤとを関連付けることで、その利用者Ｕ２の全ＵＰ１０２をそのＣＬ３内の全共用サーバ３１で実行許可する形式としてもよいし、個々のＵＰ−ＩＤとＳＶ−ＩＤとを関連付けることで、その組合せのみ実行許可する形式としてもよい等、各種が可能である。
【００９２】
［（７）認証情報］
ＵＰ認証情報Ｆ１は、対象のＵＰ１０１及びその所有者（オーナ）である利用者Ｕ２に関する認証用の情報である。ＵＰ認証情報Ｆ１の構成例としては、少なくともＵＰ−ＩＤを含む形式であり、更にＵ−ＩＤ（当該ＵＰ１０１を持つ利用者Ｕ２を示す）等の情報を含ませてもよい。少なくともＵＰ−ＩＤがあれば、関連付けにより、ＵＰ情報ｄ３を参照し利用者情報ｄ２を参照し許可情報ｄ１を参照することができる。
【００９３】
サーバ認証情報Ｆ２は、対象の共用サーバ３１及びその所有者（オーナ）であるＣＬ３に関する認証用の情報である。サーバ認証情報Ｆ２の構成例としては、少なくともＳＶ−ＩＤを含む形式であり、更にＣＬ−ＩＤ（当該共用サーバ３１を持つＣＬ３を示す）等の情報を含ませてもよい。少なくともＳＶ−ＩＤがあれば、関連付けにより、サーバ情報ｄ５を参照しＣＬ情報ｄ４を参照し許可情報ｄ１を参照することができる。
【００９４】
なお図４のセット１０１ｂの構成例としては、ＵＰ１０１（ＵＰデータファイル群）にＵＰ認証情報Ｆ１（暗号化状態）及びそのパスワード情報が同梱されたセットである。パスワード情報は例えばＵＰデータファイル群のうちの構成設定情報ファイルに記述される。
【００９５】
［（８）共用例］
図７では、本システムでのリソースの共用の具体例を示している。例えば、第１の利用者Ａは、端末２に２つのＵＰ１０１である＃Ａ１，＃Ａ２を有する。例えば＃Ａ１はＷｅｂアプリ処理用のプログラム、＃Ａ２はバッチ処理用のプログラムである。第２の利用者Ｂは、端末２に、１つのＵＰ１０１である＃Ｂ１を有する。例えば＃Ｂ１はＷｅｂアプリ処理用のプログラムである。それぞれのＵＰ１０１が認証局１のライブラリ５０に登録され、対応して図示の例のように許可情報ｄ１などが設定される。例えば利用者ＡのＵＰ＃Ａ１の処理は、ＣＬ−Ａ（例えば東京）の第１の共用サーバ３１であるＳＶ＃Ａ１（Ｗｅｂアプリ処理用）で実行許可され、ＵＰ＃Ａ２の処理は、ＣＬ−Ｂ（例えば北米）の第１の共用サーバ３１であるＳＶ＃Ｂ１（バッチ処理用）で実行許可される。利用者ＢのＵＰ＃Ｂ１の処理は、ＣＬ−Ａの第１の共用サーバ３１であるＳＶ＃Ａ１（Ｗｅｂアプリ処理用）で実行許可される。またＵＰ＃Ａ１の処理では、機能ｆ１（例えばＰＤＦ生成処理）が利用（許可）され、ＳＶ＃Ａ１から機能ｆ１を持つ共用サーバ３１であるＳＶ＃Ａ３へのアクセスが許可される。同様にＵＰ＃Ｂ１の処理では、機能ｆ２（例えばメール送信処理）が利用（許可）され、ＳＶ＃Ａ１から機能ｆ２を持つ共用サーバ３１であるＳＶ＃Ａ４へのアクセスが許可される。
【００９６】
このように各利用者Ｕ２は所望のリソース（ＣＬ３、共用サーバ３１）を利用してＵＰ１０１の実行ができると共に、各共用サーバ３１での処理時に前述の認証がされるのでセキュリティも確保される。
【００９７】
また、各ＣＬ３（Ａ，Ｂ，Ｃ）は、位置（地域）及び利用者Ｕ２（端末２）との距離が異なり、性能や機能が異なる。各種のＣＬ３、共用サーバ３１、及び機能（ｆ１等）ごとに、課金方式（利用単価）などが異なる。認証局１でそれらの利用の組合せに応じて統合的なサービス項目・料金体系を設定して利用者Ｕ２に提供することで、利用者Ｕ２は容易・安価にクラウド環境を利用できる。例えばＵＩ部１０の画面で、性能あたりの単価や、機能ごとの料金などを提示し、利用者Ｕ２により選択して利用契約が可能である。利用者Ｕ２は特定のＣＬ３等を指定して利用することもできるし、要求性能などを指定して特定のＣＬ３等によらずに利用することもできる。
【００９８】
また例えばＳＶ＃Ｂ１でのＵＰ＃Ａ２のバッチ処理は所定の日時に実行されるので、コントローラ３０によりそのバッチ処理の状況（稼動時間など）をモニタすれば、そのモニタ情報に応じた課金計算処理が認証局１で可能である。
【００９９】
［効果等］
以上説明したように、本実施の形態によれば、利用者（ＵＰ１０１）とＣＬ３（共用サーバ３１）の双方の認証情報（Ｆ１，Ｆ２）、及び許可情報ｄ１を用いた確認などにより、特に複数の利用者Ｕ２と複数のＣＬ３を含むクラウド環境で、どの利用者Ｕ２のプログラム（ＵＰ）をどのＣＬ３の共用サーバ３１等で実行するかに関する認証・認可（実行の正当性の確認、権限確認など）を行うことで、１つの仮想サーバで複数の利用者のプログラムを実行させる場合におけるセキュリティ確保や効果的な制御・管理が実現できる。結果、利用者Ｕ２はＣＬ３等のリソースを容易・安価に利用でき、Ｗｅｂアプリ処理やバッチ処理などを容易・安価に実現できる。
【０１００】
特に、利用者Ｕ２側は、ＵＰ１０１にＵＰ認証情報Ｆ１を同梱して認証サーバ１側にアップロード（登録）するだけで、それ以降のこと（認証サーバ１及び各ＣＬ３側での制御や認証等）を考える必要無く、セキュリティを確保できる。利用者Ｕ２は、ＵＰ１０１のコード内でセキュリティを意識して前述の各リソースへのアクセスごとのＩＤ及びパスワード等を記述する手間も必要無く、作業負担が小さく、コードも簡素化できる。
【０１０１】
また特に、認証局（認証サーバ）１を提供する事業者は、各ＣＬ３に共用サーバ３１を設置（設定）し、複数の利用者Ｕ２（ＵＰ１０１）と複数のＣＬ３（共用サーバ３１）とにおける実行の関係付けの制御及びその際の認証（セキュリティ管理）を行うサービスが可能である。利用者Ｕ２の要求や契約、ＣＬ３の要求や契約、特有の課金方式や制御方式、通信状況などに応じて、効果的で柔軟な関係付けの制御を実現すると共に、その際のセキュリティを確保・向上できる。
【０１０２】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることは言うまでもない。
【産業上の利用可能性】
【０１０３】
本発明は、パブリッククラウド等に利用可能である。
【図１】
2013179383.tif 000003
【図２】
2013179383.tif 000004
【図３】
2013179383.tif 000005
【図４】
2013179383.tif 000006
【図５】
2013179383.tif 000007
【図６】
2013179383.tif 000008
【図７】
2013179383.tif 000009
【図８】
2013179383.tif 000010
【国際調査報告】
2013179383.tif 000011
2013179383.tif 000012
2013179383.tif 000013
2013179383.tif 000014