(57)【要約】  本発明は、仮想化された環境においてライセンスサーバーを確認するための方法、システム、およびコンピュータープログラム製品に及ぶ。本発明の諸実施形態は、クラウドコンピューティング環境において取得される、または構築される一連の特徴を活用して、クラウドでホストされるライセンスサーバーの一意性および不変性を提供するソフトウェアベースのソリューションを容易にする。背景にあるハードウェアシステムの特徴を避けることにより、ライセンスサーバーをホストするためのはるかに柔軟で信頼できるプラットフォームがもたらされる。クラウドストレージサービスの特徴を使用して、ライセンスサーバーの固有のＩＤを作成することができる。パブリッククラウド環境でホストされるライセンスサーバーの安全性および信頼性もまた向上する。
2015513145.tif 000002
【特許請求の範囲】
【請求項１】
１つまたは複数のプロセッサーおよびシステムメモリーを含む背景にあるコンピューターシステムで実行中の、ライセンスサーバーをホストしている、クラウドコンピューティング環境におけるクラウドインスタンスで、前記ライセンスサーバーをソフトウェアライセンスの対象のライセンスサーバーとして確認するための方法であって、前記方法が、
前記ライセンスサーバーに対する確認イベントを検出する動作であって、前記確認イベントが、前記ライセンスサーバーが前記ソフトウェアライセンスの前記対象のライセンスサーバーとしてステータスをチェックしようとしていることを示し、前記ソフトウェアライセンスが、固有の識別子を有するライセンスサーバーにインストール可能であり、前記固有の識別子が、前記クラウドコンピューティング環境内のクラウドベースのオブジェクトと関連する固有の名前に基づく、動作と、
前記確認イベントに応答して、ライセンスサーバーが前記クラウドベースのオブジェクトの排他的所有権を用いるよう要求する動作であって、前記クラウドベースのオブジェクトが、いつでも単一のラインセンスサーバーが前記クラウドベースのオブジェクトを所有することができるように、所有権の排他性を有する、動作と、
前記ライセンスサーバーが前記クラウドベースのオブジェクトの排他的所有権を与えられる動作と、
前記ライセンスサーバーが前記固有の名前を使用して、前記ライセンスサーバーの前記識別子として前記固有の識別子を確立する動作と、
を含む、方法。
【請求項２】
確認イベントを検出する前記動作が、前記ソフトウェアライセンスが前記固有の識別子を有するライセンスサーバーにインストールするために前記クラウドコンピューティング環境内に格納されたことを検出する動作を含む、請求項１に記載の方法。
【請求項３】
確認イベントを検出する前記動作が、前記ライセンスサーバーの前記ステータスが最後にチェックされてから指定された期間が経過したことを検出する動作を含む、請求項１に記載の方法。
【請求項４】
ライセンスサーバーが前記クラウドベースのオブジェクトの排他的所有権を用いるよう要求する前記動作が、前記クラウドコンピューティング環境のストレージの場所と関連する前記クラウドベースのオブジェクトの排他的所有権を用いるよう要求する動作を含む、請求項１に記載の方法。
【請求項５】
前記固有の識別子が、前記固有の名前であり、前記固有の名前が、前記ストレージの場所の前記名前である、請求項１に記載の方法。
【請求項６】
クラウドコンピューティング環境におけるクラウドインスタンスで使用するためのコンピュータープログラム製品であって、前記クラウドインスタンスが、１つまたは複数のプロセッサーとシステムメモリーとを含む、背景にあるコンピューターシステム上で動き、前記クラウドインスタンスが、ライセンスサーバーをホストし、前記コンピュータープログラム製品が、ソフトウェアライセンスの前記対象のライセンスサーバーとして前記ライセンスサーバーを確認するため方法を実行するためのものであり、前記プログラム製品が、プロセッサーで実行されると、前記クラウドインスタンスに、
前記ライセンスサーバーに対する確認イベントを検出するステップであって、前記確認イベントが、前記ライセンスサーバーが前記ソフトウェアライセンスの前記対象のライセンスサーバーとしてステータスをチェックしようとしていることを示し、前記ソフトウェアライセンスが、固有の識別子を有するライセンスサーバーにインストール可能であり、前記固有の識別子が、前記クラウドコンピューティング環境内のクラウドベースのオブジェクトと関連する固有の名前に基づくステップと、
前記確認イベントに応答して、前記クラウドベースのオブジェクトの排他的所有権を用いるよう要求するステップであって、前記クラウドベースのオブジェクトが、いつでも単一のラインセンスサーバーが前記クラウドベースのオブジェクトを所有することができるように、所有権の排他性を有するステップと、
前記クラウドベースのオブジェクトの排他的所有権を与えられるステップと、前記固有の名前を使用して、前記ライセンスサーバーの前記識別子として前記固有の識別子を確立するステップと、
を含む、前記方法を実行させる、コンピューター実行可能命令を格納した１つまたは複数のコンピューター記憶媒体を含む、コンピュータープログラム製品。
【請求項７】
実行されるとき、前記クラウドインスタンスに確認イベントを検出させるコンピューター実行可能命令が、実行されるとき、前記クラウドインスタンスに前記ソフトウェアライセンスが前記固有の識別子を有するライセンスサーバーでインストールするために前記クラウドコンピューティング環境内に格納されたことを検出させるコンピューター実行可能命令を含む、請求項６に記載のコンピュータープログラム製品。
【請求項８】
実行されるとき、前記クラウドインスタンスに確認イベントを検出させるコンピューター実行可能命令が、実行されるとき、前記クラウドインスタンスに前記ライセンスサーバーのステータスが最後にチェックされてから指定された期間が経過したことを検出させるコンピューター実行可能命令を含む、請求項６に記載のコンピュータープログラム製品。
【請求項９】
実行されるとき、前記クラウドインスタンスに、前記クラウドベースのオブジェクトの排他的所有権を用いるよう要求させるコンピューター実行可能命令が、実行されるとき、前記クラウドインスタンスに、前記クラウドコンピューティング環境におけるストレージの場所と関連する前記クラウドベースのオブジェクトの排他的所有権を用いるよう要求させるコンピューター実行可能命令を含む、請求項６に記載のコンピュータープログラム製品。
【請求項１０】
前記固有の識別子が、前記固有の名前であり、前記固有の名前が、前記ストレージの場所の前記名前である、請求項６に記載のコンピュータープログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想化された環境におけるライセンスサーバーの確認に関する。
【背景技術】
【０００２】
[0001]１．背景および関連技術
[0002]コンピューターシステムおよび関連技術は、社会の多くの側面に影響を及ぼす。実際に、情報を処理するコンピューターシステムの能力は、生活および仕事の様式を変えた。今では一般的にコンピューターシステムは、コンピューターシステムが出現する前は手動で行われていた多くのタスク（例えば、文書処理、スケジューリング、会計など）を行う。より最近では、コンピューターシステムは、互いに、および他の電子デバイスに結合されて、有線および無線のコンピューターネットワークを形成し、これを通じてコンピューターシステムおよび他の電子デバイスは、電子データを転送することができる。したがって、多くのコンピューティングタスクの実行は、いくつかの異なるコンピューターシステムおよび／またはいくつかの異なるコンピューティング環境にわたって分散される。
【０００３】
[0003]ネットワーク環境においては、アプリケーションが、コンピューターシステム間で移動される可能性がある。著作権侵害を阻止するために、多くのアプリケーションは、フローティングソフトウェアライセンス（ｆｌｏａｔｉｎｇ  ｓｏｆｔｗａｒｅ  ｌｉｃｅｎｓｅ）およびライセンスサーバーに依存する。フローティングソフトウェアライセンスは、不正使用を防止するために、ライセンスサーバーに配置可能である。アプリケーションは、いずれのコンピューターシステムにインストールすることもできる。しかしながら、有効なライセンスが存在しない場合、アプリケーションは実行されない。アプリケーションがコンピューターシステムで実行することができるかどうかを判断するために、コンピューターシステムは、ライセンスサーバーに問い合わせて、アプリケーションの有効なライセンスが存在するかどうかを判断する。
【０００４】
[0004]指定された対象のライセンスサーバーのみが使用されることを保証するために、対象のラインセスサーバーは、固有のＩＤ（例えば、指紋）によって識別される必要がある。いくつかの環境においては、固有のＩＤは、例えば、ネットワークインターフェイスカード（「ＮＩＣ」）のメディアアクセス制御（「ＭＡＣ」）アドレスのような、背後にあるハードウェアシステムの構築された示差的かつ不変の特徴である。他の実施形態では、対象のライセンスサーバーのハード特性およびソフトウェア特性の組み合わせを使用して、固有のＩＤを構築することができる。固有のＩＤは、対象のライセンスサーバーが問い合わせ可能となるように、アプリケーションインスタンスに提供される。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
[0005]残念ながら、仮想システムは、固有のＩＤを生成して著作権侵害を抑制するために使用可能である特性を、本質的に所有していない。仮想システムでは、例えばＢＩＯＳ  ＧＵＩＤおよびＭＡＣアドレスのようなハードウェア特性は、偽装される可能性がある。偽装されたハードウェア特性は、その後、ライセンスサーバーを複製するために使用される可能性がある。さらに、クラウド環境で動作するとき、クラウドインスタンスは、背後にあるハードウェアに結び付けられない一時的な仮想マシンである。したがって、ハードウェア特性は、仮想システムにおいて固有のＩＤを構築するために確実に使用されることは不可能である。少なくとも部分的にこうした問題により、多くのアプリケーションのエンドユーザー使用許諾契約（Ｅｎｄ  Ｕｓｅｒ  Ｌｉｃｅｎｓｅ  Ａｇｒｅｅｍｅｎｔｓ：「ＥＵＬＡ」）は、仮想システムにおける実行を禁止している。
【課題を解決するための手段】
【０００６】
[0006]本発明は、仮想化された環境においてライセンスサーバーを確認するための方法、システム、およびコンピュータープログラム製品に及ぶ。いくつかの実施形態では、クラウドインスタンスが、クラウドコンピューティング環境においてライセンスサーバーをホストする。ライセンスサーバーは、ソフトウェアライセンスの対象のライセンスサーバーとして確認される。
【０００７】
[0007]確認イベントが、ライセンスサーバーに対して検知される。確認イベントは、ライセンスサーバーがソフトウェアライセンスの対象のライセンスサーバーとしてステータスをチェックしようとしていることを示す。ソフトウェアライセンスは、固有の識別子を有するライセンスサーバーでインストール可能である。固有の識別子は、クラウドコンピューティング環境内のクラウドベースのオブジェクトと関連する固有の名前に基づくものである。
【０００８】
[0008]ライセンスサーバーは、イベントに応答して、クラウドベースのオブジェクトの排他的所有権を用いるよう要求する。クラウドベースのオブジェクトは、いつでも単一のライセンスサーバーが、クラウドベースのオブジェクトを所有することができるように、所有権の排他性を有する。ライセンスサーバーは、クラウドベースのオブジェクトの排他的所有権を与えられる。ライセンスサーバーは、固有の名前を使用して、ライセンスサーバーの識別子として固有の識別子を確立することができる。
【０００９】
[0009]この節により、以下の発明を実施するための形態でさらに説明する概念の抜粋を簡略化して紹介する。この節は、特許請求の範囲に記載する主題の主要な特徴または本質的特徴を確認することを目的とせず、さらに特許請求の範囲に記載する主題の範囲を決定する際の助けとして使用されることを目的としない。
【００１０】
[0010]本発明のさらなる特徴および利点は、次に続く説明中で示され、一部は説明から明らかになり、または本発明を実行することによって習得される可能性がある。本発明の特徴および利点は、特に添付の特許請求の範囲で指摘される機器および組み合わせによって理解され、取得される可能性がある。本発明のこれらの特徴および他の特徴は、次の説明および添付の特許請求の範囲からさらに十分に明らかになり、または以下に示すように本発明を実行することによって習得される可能性がある。
【図面の簡単な説明】
【００１１】
[0011]本発明の上記のおよび他の利点および特徴を得ることができる方法を説明するために、添付の図面に示す特定の実施形態を参照することにより、簡単に上述した本発明のより詳細な説明を行う。これらの図面は、本発明の典型的な実施形態のみを示し、したがってその範囲を限定していると考えられるべきではないことを理解し、添付の図面の使用により、さらなる特異性および詳細とともに本発明を記載し、説明する。
【図１】[0012]仮想化された環境においてライセンスサーバーを確認することを容易にする例示的コンピューターアーキテクチャを示す図である。
【図２】[0013]仮想化された環境においてライセンスサーバーを確認するための例示的方法のフローチャートを示す図である。
【図３】[0014]仮想化された環境においてライセンスサーバーを確認することを容易にする別の例示的コンピューターアーキテクチャを示す図である。
【発明を実施するための形態】
【００１２】
[0015]本発明は、仮想化された環境においてライセンスサーバーを確認するための方法、システム、およびコンピュータープログラム製品に及ぶ。いくつかの実施形態では、クラウドインスタンスが、クラウドコンピューティング環境において、ライセンスサーバーをホストする。ライセンスサーバーは、ソフトウェアライセンスの対象のライセンスサーバーとして確認される。
【００１３】
[0016]ライセンスサーバーに対して確認イベントが検出される。確認イベントは、ライセンスサーバーがソフトウェアライセンスの対象のライセンスサーバーとしてステータスをチェックしようとしていることを示す。ソフトウェアライセンスは、固有の識別子を有するライセンスサーバーでインストール可能である。固有の識別子は、クラウドコンピューティング環境内のクラウドベースのオブジェクトと関連する固有の名前に基づいている。
【００１４】
[0017]ライセンスサーバーは、イベントに応答してクラウドベースのオブジェクトの排他的所有権を用いるよう要求する。クラウドベースのオブジェクトは、いつでも単一のライセンスサーバーがクラウドベースのオブジェクトを所有することができるように、所有権の排他性を有する。ライセンスサーバーは、クラウドベースのオブジェクトの排他的所有権を与えられる。ライセンスサーバーは、固有の名前を使用して、ライセンスサーバーの識別子として固有の識別子を確立する。
【００１５】
[0018]本発明の諸実施形態は、以下にさらに詳細に説明するように、例えば、１つまたは複数のプロセッサー、およびシステムメモリーのような、コンピューターハードウェアを含む特殊用途のまたは汎用のコンピューターを備えまたは利用することができる。本発明の範囲内の諸実施形態はまた、コンピューター実行可能命令および／またはデータ構造を搬送するまたは格納するための物理的およびその他のコンピューター可読媒体を含む。このようなコンピューター可読媒体は、汎用のまたは特殊用途のコンピューターシステムによってアクセス可能である任意の入手可能媒体とすることができる。コンピューター実行可能命令を格納するコンピューター可読媒体は、コンピューター記憶媒体（デバイス）である。コンピューター実行可能命令を搬送するコンピューター可読媒体は、伝送媒体である。したがって、例として、限定ではなく、本発明の諸実施形態は、少なくとも２つの明確に異なる種類のコンピューター可読媒体、すなわちコンピューター記憶媒体（デバイス）と、伝送媒体とを含むことができる。
【００１６】
[0019]コンピューター記憶媒体（デバイス）には、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭ、ソリッドステートドライブ（「ＳＳＤ」）（例えば、ＲＡＭに基づく）、フラッシュメモリー、相変化メモリー（「ＰＣＭ」）、その他のタイプのメモリー、その他の光ディスク記憶装置、磁気ディスク記憶装置もしくは他の磁気記憶装置、または所望のプログラムコード手段をコンピューター実行可能命令もしくはデータ構造の形態で格納するために使用することができ、汎用のもしくは特殊用途のコンピューターによりアクセスすることができる他の媒体が含まれる。
【００１７】
[0020]「ネットワーク」は、コンピューターシステムおよび／またはモジュールおよび／または他の電子デバイス間で電子データの移送を可能にする１つまたは複数のデータリンクとして定義される。情報がネットワークまたは別の通信接続（有線、無線、もしくは有線と無線の組み合わせ）によってコンピューターに転送されるまたは提供されるとき、コンピューターは正確には、この接続を伝送媒体とみなす。伝送媒体は、コンピューター実行可能命令またはデータ構造の形態の所望のプログラムコード手段を搬送するために使用することができ、汎用または特殊用途のコンピューターがアクセスすることができるネットワークおよび／またはデータリンクを含むことができる。上記のものの組み合わせもまた、コンピューター可読媒体の範囲内に含まれるべきである。
【００１８】
[0021]さらに、様々なコンピューターシステムの構成要素に到達すると、コンピューター実行可能命令またはデータ構造の形態のプログラムコード手段は、伝送媒体からコンピューター記憶媒体（デバイス）に（または逆に）自動的に転送されることが可能である。例えば、ネットワークまたはデータリンクを通じて受信されたコンピューター実行可能命令またはデータ構造は、ネットワークインターフェイス（例えば、「ＮＩＣ」）内のＲＡＭにバッファリングされ、その後最終的には、コンピューターシステムのＲＡＭに、および／またはコンピューターシステムのより小さい揮発性コンピューター記憶媒体（デバイス）に転送することができる。このように、伝送媒体も同様に（またはさらには主として）利用するコンピューターシステムの構成要素に、コンピューター記憶媒体（デバイス）が含まれる可能性があることを理解すべきである。
【００１９】
[0022]コンピューター実行可能命令は、例えば、プロセッサーで実行されるとき、汎用コンピューター、特殊用途のコンピューター、または特殊用途の処理装置にある機能または機能群を実行させる命令およびデータを含む。コンピューター実行可能命令は、例えば、２値、アセンブリ言語のような中間フォーマットの命令、またはさらにソースコードとすることができる。主題について、構造的特徴および／または方法論的動作に特定的な言葉で説明したが、添付の特許請求の範囲に定める主題は、必ずしも上記の特定の特徴または動作に限定されないことを理解されたい。正しくは、記載した特徴および動作は、特許請求の範囲を実施する例示的な形態として開示する。
【００２０】
[0023]本発明は、パーソナルコンピューター、デスクトップコンピューター、ラップトップコンピューター、メッセージプロセッサー、ハンドヘルドデバイス、マルチプロセッサーシステム、マイクロプロセッサーベースのまたはプログラム可能な家庭用電化製品、ネットワークＰＣ、ミニコンピューター、メインフレームコンピューター、携帯電話、ＰＤＡ、タブレット、ページャー、ルーター、スイッチなど、多くのタイプのコンピューターシステム構成を有するネットワークコンピューティング環境において実行可能であることを、当業者は理解するであろう。また本発明は、ネットワークを介して（有線データリンク、無線データリンクにより、または有線データリンクと無線データリンクの組み合わせにより）リンクされた、ローカルのコンピューターシステムとリモートのコンピューターシステムが共にタスクを行う、分散システム環境において実行されることも可能である。分散システム環境では、プログラムモジュールを、ローカルのメモリー記憶装置とリモートのメモリー記憶装置の両方に配置することができる。
【００２１】
[0024]この説明および次の特許請求の範囲において、「クラウドコンピューティング」は、最小の管理努力またはサービスプロバイダーの介入で迅速に準備し、公開することができる、構成可能なコンピューティング資源（例えば、ネットワーク、サーバー、ストレージ、アプリケーション、およびサービス）の共有プールへのユビキタスで、利便性の高い、オンデマンドのネットワークアクセスを可能にするモデルとして定義される。クラウドモデルは、様々な特性（例えば、オンデマンドのセルフサービス、広範なネットワークアクセス、資源プーリング、迅速な伸縮性（ｒａｐｉｄ  ｅｌａｓｔｉｃｉｔｙ）、測定機能付きサービス（ｍｅａｓｕｒｅｄ  ｓｅｒｖｉｃｅ）など）、サービスモデル（例えば、サービスとしてのソフトウェア（「ＳａａＳ」、サービスとしてのプラットフォーム（「ＰａａＳ」）、サービスとしてのインフラストラクチャ（「ＩａａＳ」）、および配置モデル（例えば、プライベートクラウド、コミュニティクラウド、パブリッククラウド、ハイブリッドクラウドなど））から構成されることが可能である。
【００２２】
[0025]図１は、仮想化された環境においてライセンスサーバーを確認することを容易にする例示的コンピューターアーキテクチャ１００を示す。図１を参照すると、コンピューターアーキテクチャ１００は、クラウドインスタンス１０１と、オブジェクト管理システム１０３とを含む。クラウドインスタンス１０１は、クラウド内で動作しているいくつかのクラウドインスタンスのうちの１つとすることができる。クラウドインスタンス１０１およびオブジェクト管理システム１０３は、例えば、ローカルエリアネットワーク（「ＬＡＮ」）、ワイドエリアネットワーク（「ＷＡＮ」）、およびさらにはインターネットのような、ネットワーク（またはその一部）を通じて互いに接続することができる。したがって、クラウドインスタンス１０１およびオブジェクト管理システム１０３、ならびに任意の他の接続されたコンピューターシステムおよびその構成要素が、メッセージ関連データを作成し、ネットワークを通じてメッセージ関連データ（例えば、インターネットプロトコル（「ＩＰ」）データグラムおよび、伝送制御プロトコル（「ＴＣＰ」）、ハイパーテキスト転送プロトコル（「ＨＴＴＰ」）、簡易メール転送プロトコル（「ＳＭＴＰ」）などのような、ＩＰデータグラムを使用する他の上位層プロトコル）を交換することができる。
【００２３】
[0026]図に示すように、クラウドインスタンス１０１は、ライセンスサーバー１０２を含む。ライセンスサーバー１０２は、（例えば、アプリケーションまたは他のソフトウェアモジュールからの）ライセンスの要求に応答するサーバーとすることができる。オブジェクト管理システム１０３は、例えばアカウント、ファイル、ユーザーなどのような、クラウドインスタンスから（または一般的にクラウド環境から）アクセス可能なオブジェクトを管理することができる。オブジェクト管理システム１０３によって管理されるオブジェクトは、固有の名前を与えられることが可能である。オブジェクト管理システム１０３によって管理されるオブジェクトは、排他的アクセスのために構成されることも可能である（すなわちオブジェクトは、いつでも単一のクラウドインスタンスによって所有されることが可能である）。
【００２４】
[0027]ソフトウェアライセンス１２１は、コンピューターアーキテクチャ１００内に格納することができる。
[0028]図２は、仮想化された環境においてライセンスサーバーを確認するための例示的方法２００のフローチャートを示す。コンピューターアーキテクチャ１００の構成要素およびデータに関して、方法２００を説明する。
【００２５】
[0029]方法２００は、ライセンスサーバーに対する確認イベントを検出する行為を含み、この確認イベントは、ライセンスサーバーが、ソフトウェアライセンスの対象のライセンスサーバーとしてステータスをチェックしようとしていることを示し、ライセンスサーバーにインストール可能なソフトウェアライセンスは、固有の識別子を有し、固有の識別子は、クラウドコンピューティング環境内のクラウドベースのオブジェクトと関連付けられた固有の名前に基づいている（行為２０１）。例えば、確認イベント１０４を検出することができる。確認イベント１０４は、ラインセンスサーバー１０２がソフトウェアライセンス１２１の対象のライセンスサーバーとしてステータスをチェックしようとしていることを示すことができる。ソフトウェアライセンス１２１は、名前１０７（オブジェクト１０６の名前）に基づく固有の識別子を有するライセンスサーバーでインストール可能である。オブジェクト１０６は、排他的アクセス権を有するオブジェクトとすることができる。したがって、オブジェクト１０６（および対応するプロパティ）は、いつでも単一のライセンスサーバーによって所有されることが可能である。確認イベントを検出することは、ソフトウェアライセンス１２１がクラウドコンピューティング環境に格納されたことを検出することを含むことができる。確認イベントを検出することは、（例えば、ライセンスサーバーのステータスを最後にチェックしてから）指定された期間が過ぎたことを検出することを含むことができる。
【００２６】
[0030]方法２００は、確認イベントに応答してライセンスサーバーがクラウドベースのオブジェクトの排他的所有権を用いるよう要求する行為を含み、クラウドベースのオブジェクトは、いつでも単一のライセンスサーバーがクラウドベースのオブジェクトを所有することができるように、所有権の排他性を有する（行為２０２）。例えば、ライセンスサーバー１０２は、確認イベント１０４に応答してオブジェクト管理システム１０３に所有権の要求１１１を送信することができる。所有権の要求１１１は、オブジェクト１０６（クラウドベースのオブジェクト）の所有権を用いる要求とすることができる。
【００２７】
[0031]方法２００は、ライセンスサーバーがクラウドベースのオブジェクトの排他的所有権を与えられるという行為を含む（行為２０３）。例えば、オブジェクト管理システム１０３は、オブジェクト１０６の所有権をライセンスサーバー１０２に与えることができる。オブジェクト管理システム１０３は、オブジェクト１０６の所有権を示す所有権の付与１１２を構築することができる。オブジェクト管理システム１０３は、所有権の付与１１２をライセンスサーバー１０２に送信することができる。
【００２８】
[0032]続いて、ライセンスサーバー１０２は、オブジェクト１０６および名前１０７を含む対応するプロパティにアクセスすることができる。
[0033]方法２００は、ライセンスサーバーが固有の名前を使用して、ライセンスサーバーの識別子として固有の識別子を確立する行為を含む（行為２０４）。例えば、ライセンスサーバー１０２は、名前１０７を使用して、ライセンスサーバー１０２の識別子として識別子１０８を確立することができる。他の構成要素（例えば、アプリケーション）は、その後、ソフトウェアライセンス１２１に対応するライセンス要求をライセンスサーバー１０２に宛てることができる。適切な場合、これらの他の構成要素は、ライセンスサーバー１０２が識別子１０８を所有していること（したがって、ソフトウェアライセンス１２１のライセンスサーバーであること）を確認することができる。
【００２９】
[0034]本発明の諸実施形態は、グローバルに固有のアカウント名によって参照されるストレージアカウントをサポートするストレージシステムを使用することを含む。ストレージシステムは、ライセンスサーバーがホストされるクラウド環境からアクセス可能である。各ストレージアカウントの内部にエンティティが存在し、そのアクセス権をいつでもクラウドの単一のライセンスサーバーが所有することができる。排他的アクセス権を有するグローバルに固有のストレージアカウント名を特定の固有のエンティティと組み合わせることによって、クラウドの単一のインスタンスがいつでも所有することができる固有のＩＤを作成することができる。
【００３０】
[0035]このように、独立系ソフトウェアベンダー（「ＩＳＶ」）によって発行されるソフトウェアライセンスは、固有のストレージアカウント名を使用して、インストールすることができる場所を指定することができる。クラウドのライセンスサーバーは、そのストレージアカウント中の特定の固有のエンティティへのアクセス権の所有権を定期的にチェックする。所有権をチェックすることが、ライセンスサーバーが、対応する固有のＩＤに結び付けられる唯一のライセンスサーバーであることを保証する助けとなる。したがって、ライセンスは、複数のライセンスサーバーのインスタンスに繰り返して配布されることはない。
【００３１】
[0036]固有のＩＤの所有権は、背後にあるストレージシステムの安全メカニズムによって保護することができる。すなわち、ライセンスサーバーは、このアカウント内の特定の固有のエンティティへのアクセス権なしでは、固有のストレージアカウント名をその固有のＩＤとして用いることはできない。したがって、ライセンスサーバーをホストするためのクラウド環境の信頼性の特徴を活用することができる。例えば、ハードウェアベースのＩＤとは異なり、ストレージアカウントベースのＩＤは、あるクラウドインスタンスから別のクラウドインスタンスへ容易に転送することができる。
【００３２】
[0037]本発明のいくつかの実施形態は、Ｗｉｎｄｏｗｓ  Ａｚｕｒｅ（商標）プラットフォームで実行される。これらの実施形態は、Ｗｉｎｄｏｗｓ  Ａｚｕｒｅ  ＸＤｒｉｖｅとしてストレージアカウント内の特定のページｂｌｏｂの排他的マッピングとともにグローバルに排他的なＡｚｕｒｅストレージアカウント名を利用する。ページｂｌｏｂは、ランダムな読み取りおよび書き込み操作に使用されるページの集まり（例えば、５１２バイト）である。ｘＤｒｉｖｅにより、Ｗｉｎｄｏｗｓ  Ａｚｕｒｅ（商標）アプリケーションが既存のアプリケーション・プログラム・インターフェイス（「ＡＰＩ」）を使用して、永続性のあるドライブ（ｄｕｒａｂｌｅ  ｄｒｉｖｅ）」にアクセスできるようになる。これにより、Ｗｉｎｄｏｗｓ  Ａｚｕｒｅ（商標）アプリケーションは、ページｂｌｏｂをドライブ文字（例えば、「Ｘ」）としてマウントすることができる。マッピングが使用されて、１つのＡｚｕｒｅインスタンスがいつでも所有することができるＩＤを作成する。
【００３３】
[0038]Ａｚｕｒｅストレージのアカウント名は、グローバルに固有である正式ＤＮＳ名とすることができる。Ｗｉｎｄｏｗｓ  Ａｚｕｒｅ  ＸＤｒｉｖｅは、ＸＤｒｉｖｅが単一Ａｚｕｒｅインスタンスによって排他的に所有されるように、ＸＤｒｉｖｅをマウントするための単一のニュー・テクノロジー・ファイル・システム（「ＮＴＦＳ」）ボリューム仮想ハードドライブ（「ＶＨＤ」）としてフォーマットされたページｂｌｏｂのリースを許可する。これは、ＸＤｒｉｖｅを事実上、Ａｚｕｒｅインスタンスのミューテックスにする。ソフトウェアライセンスは、したがって、Ａｚｕｒｅストレージアカウント名を使用して、そのインストール場所を識別することができる。ライセンスサーバーは、ＸＤｒｉｖｅマッピングの有効性を定期的にチェックして、ＩＤを所有していることを確かめ、もはや所有者ではなくなったとき終了する。
【００３４】
[0039]図３は、仮想化された環境においてライセンスサーバーを確認することを容易にする別の例示的コンピューターアーキテクチャ３００を示す。図のように、コンピューターアーキテクチャ３００は、クラウド環境３０１およびストレージシステム３１１を含むことができる。クラウド環境３０１およびストレージシステム３１１は、ネットワーク接続によって互いに接続することができる。
【００３５】
[0040]クラウド環境３０１は、クラウド・ライセンス・サービス・インスタンス３０２を含む。クラウド・ライセンス・サービス・インスタンス３０２は、アカウントアクセス情報３０３およびライセンスサーバー３０４を格納し、ライセンスサーバー３０４はさらに、強制プラグイン（ｅｎｆｏｒｃｅｍｅｎｔ  ｐｌｕｇ−ｉｎ）３０６を含む。ストレージシステム３１１は、ストレージアカウント３１２を含み、ストレージアカウント３１２はさらに、固有のエンティティ３１３を含む。
【００３６】
[0041]矢印３２１で示すように、クラウド・ライセンス・サービス・インスタンス３０２は、ストレージアカウント３１２（クラウド・ライセンス・サービス・インスタンス３０２が結び付けられたストレージアカウント）のストレージアカウントアクセス情報３０３を保持する。矢印３２２で示すように、ライセンスサーバー３０４は、ライセンスサーバーＩＤ強制プラグイン３０６により、ストレージアカウント３１２に固有のエンティティ３１３を配置する。ライセンスサーバー３０４は、固有のエンティティ３１３への排他的アクセス権を用いようと試みる。試みが失敗する場合、クラウド・ライセンス・サービス・インスタンス３０２は、シャットダウンすることができる。矢印３２３で示すように、ライセンスサーバー３０４は、排他的アクセス権の所有権を定期的にチェックする。所有権が失われた場合、クラウド・ライセンス・サービス・インスタンス３０２は、所有権を回復しようと試みることができる。試みが失敗する場合、クラウド・ライセンス・サービス・インスタンス３０２は、それ自体をシャットダウンすることができる。
【００３７】
[0042]したがって、本発明の諸実施形態は、クラウドコンピューティング環境において取得される、または構築される一連の特徴を活用して、クラウドでホストされるライセンスサーバーの一意性および不変性を提供するソフトウェアベースのソリューションを容易にする。背景にあるハードウェアシステムの特徴を避けることにより、ライセンスサーバーをホストするためのはるかに柔軟で信頼できるプラットフォームがもたらされる。クラウドストレージサービスの特徴は、ライセンスサーバーの固有のＩＤを作成するために使用することができる。パブリッククラウド環境においてホストされるライセンスサーバーのセキュリティおよび信頼性もまた向上される。
【００３８】
[0043]本発明は、その趣旨または本質的な特徴を逸脱することなく、他の特定の形態で具体化することができる。記載した実施形態は、あらゆる点で単に例示であって、限定ではないと考えられなければならない。したがって本発明の範囲は、前述の説明ではなく、添付の特許請求の範囲によって示される。特許請求の範囲の均等物の意味および範囲内で生じるあらゆる変更は、特許請求の範囲の内に含まれなければならない。
【図１】
2015513145.tif 000003
【図２】
2015513145.tif 000004
【図３】
2015513145.tif 000005
【国際調査報告】
2015513145.tif 000006
2015513145.tif 000007