JP6110413B2 - 仮想化された環境におけるライセンスサーバーの確認 - Google Patents

仮想化された環境におけるライセンスサーバーの確認 Download PDF

Info

Publication number
JP6110413B2
JP6110413B2 JP2014558847A JP2014558847A JP6110413B2 JP 6110413 B2 JP6110413 B2 JP 6110413B2 JP 2014558847 A JP2014558847 A JP 2014558847A JP 2014558847 A JP2014558847 A JP 2014558847A JP 6110413 B2 JP6110413 B2 JP 6110413B2
Authority
JP
Japan
Prior art keywords
license server
license
cloud
unique
server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2014558847A
Other languages
English (en)
Other versions
JP2015513145A5 (ja
JP2015513145A (ja
Inventor
シュエ,ガーン
シー,チウファーン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2015513145A publication Critical patent/JP2015513145A/ja
Publication of JP2015513145A5 publication Critical patent/JP2015513145A5/ja
Application granted granted Critical
Publication of JP6110413B2 publication Critical patent/JP6110413B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • G06F9/526Mutual exclusion algorithms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • G06F16/1824Distributed file systems implemented using Network-attached Storage [NAS] architecture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • G06F16/1824Distributed file systems implemented using Network-attached Storage [NAS] architecture
    • G06F16/1827Management specifically adapted to NAS
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/101Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by binding digital rights to specific entities
    • G06F21/1011Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by binding digital rights to specific entities to devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/73Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information by creating or determining hardware identification, e.g. serial numbers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/60Subscription-based services using application servers or record carriers, e.g. SIM application toolkits

Description

本発明は、仮想化された環境におけるライセンスサーバーの確認に関する。
[0001]1.背景および関連技術
[0002]コンピューターシステムおよび関連技術は、社会の多くの側面に影響を及ぼす。実際に、情報を処理するコンピューターシステムの能力は、生活および仕事の様式を変えた。今では一般的にコンピューターシステムは、コンピューターシステムが出現する前は手動で行われていた多くのタスク(例えば、文書処理、スケジューリング、会計など)を行う。より最近では、コンピューターシステムは、互いに、および他の電子デバイスに結合されて、有線および無線のコンピューターネットワークを形成し、これを通じてコンピューターシステムおよび他の電子デバイスは、電子データを転送することができる。したがって、多くのコンピューティングタスクの実行は、いくつかの異なるコンピューターシステムおよび/またはいくつかの異なるコンピューティング環境にわたって分散される。
[0003]ネットワーク環境においては、アプリケーションが、コンピューターシステム間で移動される可能性がある。著作権侵害を阻止するために、多くのアプリケーションは、フローティングソフトウェアライセンス(floating software license)およびライセンスサーバーに依存する。フローティングソフトウェアライセンスは、不正使用を防止するために、ライセンスサーバーに配置可能である。アプリケーションは、いずれのコンピューターシステムにインストールすることもできる。しかしながら、有効なライセンスが存在しない場合、アプリケーションは実行されない。アプリケーションがコンピューターシステムで実行することができるかどうかを判断するために、コンピューターシステムは、ライセンスサーバーに問い合わせて、アプリケーションの有効なライセンスが存在するかどうかを判断する。
[0004]指定された対象のライセンスサーバーのみが使用されることを保証するために、対象のラインセスサーバーは、固有のID(例えば、指紋)によって識別される必要がある。いくつかの環境においては、固有のIDは、例えば、ネットワークインターフェイスカード(「NIC」)のメディアアクセス制御(「MAC」)アドレスのような、背後にあるハードウェアシステムの構築された示差的かつ不変の特徴である。他の実施形態では、対象のライセンスサーバーのハード特性およびソフトウェア特性の組み合わせを使用して、固有のIDを構築することができる。固有のIDは、対象のライセンスサーバーが問い合わせ可能となるように、アプリケーションインスタンスに提供される。
[0005]残念ながら、仮想システムは、固有のIDを生成して著作権侵害を抑制するために使用可能である特性を、本質的に所有していない。仮想システムでは、例えばBIOS GUIDおよびMACアドレスのようなハードウェア特性は、偽装される可能性がある。偽装されたハードウェア特性は、その後、ライセンスサーバーを複製するために使用される可能性がある。さらに、クラウド環境で動作するとき、クラウドインスタンスは、背後にあるハードウェアに結び付けられない一時的な仮想マシンである。したがって、ハードウェア特性は、仮想システムにおいて固有のIDを構築するために確実に使用されることは不可能である。少なくとも部分的にこうした問題により、多くのアプリケーションのエンドユーザー使用許諾契約(End User License Agreements:「EULA」)は、仮想システムにおける実行を禁止している。
[0006]本発明は、仮想化された環境においてライセンスサーバーを確認するための方法、システム、およびコンピュータープログラム製品に及ぶ。いくつかの実施形態では、クラウドインスタンスが、クラウドコンピューティング環境においてライセンスサーバーをホストする。ライセンスサーバーは、ソフトウェアライセンスの対象のライセンスサーバーとして確認される。
[0007]確認イベントが、ライセンスサーバーに対して検知される。確認イベントは、ライセンスサーバーがソフトウェアライセンスの対象のライセンスサーバーとしてステータスをチェックしようとしていることを示す。ソフトウェアライセンスは、固有の識別子を有するライセンスサーバーでインストール可能である。固有の識別子は、クラウドコンピューティング環境内のクラウドベースのオブジェクトと関連する固有の名前に基づくものである。
[0008]ライセンスサーバーは、イベントに応答して、クラウドベースのオブジェクトの排他的所有権を用いるよう要求する。クラウドベースのオブジェクトは、いつでも単一のライセンスサーバーが、クラウドベースのオブジェクトを所有することができるように、所有権の排他性を有する。ライセンスサーバーは、クラウドベースのオブジェクトの排他的所有権を与えられる。ライセンスサーバーは、固有の名前を使用して、ライセンスサーバーの識別子として固有の識別子を確立することができる。
[0009]この節により、以下の発明を実施するための形態でさらに説明する概念の抜粋を簡略化して紹介する。この節は、特許請求の範囲に記載する主題の主要な特徴または本質的特徴を確認することを目的とせず、さらに特許請求の範囲に記載する主題の範囲を決定する際の助けとして使用されることを目的としない。
[0010]本発明のさらなる特徴および利点は、次に続く説明中で示され、一部は説明から明らかになり、または本発明を実行することによって習得される可能性がある。本発明の特徴および利点は、特に添付の特許請求の範囲で指摘される機器および組み合わせによって理解され、取得される可能性がある。本発明のこれらの特徴および他の特徴は、次の説明および添付の特許請求の範囲からさらに十分に明らかになり、または以下に示すように本発明を実行することによって習得される可能性がある。
[0011]本発明の上記のおよび他の利点および特徴を得ることができる方法を説明するために、添付の図面に示す特定の実施形態を参照することにより、簡単に上述した本発明のより詳細な説明を行う。これらの図面は、本発明の典型的な実施形態のみを示し、したがってその範囲を限定していると考えられるべきではないことを理解し、添付の図面の使用により、さらなる特異性および詳細とともに本発明を記載し、説明する。
[0012]仮想化された環境においてライセンスサーバーを確認することを容易にする例示的コンピューターアーキテクチャを示す図である。 [0013]仮想化された環境においてライセンスサーバーを確認するための例示的方法のフローチャートを示す図である。 [0014]仮想化された環境においてライセンスサーバーを確認することを容易にする別の例示的コンピューターアーキテクチャを示す図である。
[0015]本発明は、仮想化された環境においてライセンスサーバーを確認するための方法、システム、およびコンピュータープログラム製品に及ぶ。いくつかの実施形態では、クラウドインスタンスが、クラウドコンピューティング環境において、ライセンスサーバーをホストする。ライセンスサーバーは、ソフトウェアライセンスの対象のライセンスサーバーとして確認される。
[0016]ライセンスサーバーに対して確認イベントが検出される。確認イベントは、ライセンスサーバーがソフトウェアライセンスの対象のライセンスサーバーとしてステータスをチェックしようとしていることを示す。ソフトウェアライセンスは、固有の識別子を有するライセンスサーバーでインストール可能である。固有の識別子は、クラウドコンピューティング環境内のクラウドベースのオブジェクトと関連する固有の名前に基づいている。
[0017]ライセンスサーバーは、イベントに応答してクラウドベースのオブジェクトの排他的所有権を用いるよう要求する。クラウドベースのオブジェクトは、いつでも単一のライセンスサーバーがクラウドベースのオブジェクトを所有することができるように、所有権の排他性を有する。ライセンスサーバーは、クラウドベースのオブジェクトの排他的所有権を与えられる。ライセンスサーバーは、固有の名前を使用して、ライセンスサーバーの識別子として固有の識別子を確立する。
[0018]本発明の諸実施形態は、以下にさらに詳細に説明するように、例えば、1つまたは複数のプロセッサー、およびシステムメモリーのような、コンピューターハードウェアを含む特殊用途のまたは汎用のコンピューターを備えまたは利用することができる。本発明の範囲内の諸実施形態はまた、コンピューター実行可能命令および/またはデータ構造を搬送するまたは格納するための物理的およびその他のコンピューター可読媒体を含む。このようなコンピューター可読媒体は、汎用のまたは特殊用途のコンピューターシステムによってアクセス可能である任意の入手可能媒体とすることができる。コンピューター実行可能命令を格納するコンピューター可読媒体は、コンピューター記憶媒体(デバイス)である。コンピューター実行可能命令を搬送するコンピューター可読媒体は、伝送媒体である。したがって、例として、限定ではなく、本発明の諸実施形態は、少なくとも2つの明確に異なる種類のコンピューター可読媒体、すなわちコンピューター記憶媒体(デバイス)と、伝送媒体とを含むことができる。
[0019]コンピューター記憶媒体(デバイス)には、RAM、ROM、EEPROM、CD−ROM、ソリッドステートドライブ(「SSD」)(例えば、RAMに基づく)、フラッシュメモリー、相変化メモリー(「PCM」)、その他のタイプのメモリー、その他の光ディスク記憶装置、磁気ディスク記憶装置もしくは他の磁気記憶装置、または所望のプログラムコード手段をコンピューター実行可能命令もしくはデータ構造の形態で格納するために使用することができ、汎用のもしくは特殊用途のコンピューターによりアクセスすることができる他の媒体が含まれる。
[0020]「ネットワーク」は、コンピューターシステムおよび/またはモジュールおよび/または他の電子デバイス間で電子データの移送を可能にする1つまたは複数のデータリンクとして定義される。情報がネットワークまたは別の通信接続(有線、無線、もしくは有線と無線の組み合わせ)によってコンピューターに転送されるまたは提供されるとき、コンピューターは正確には、この接続を伝送媒体とみなす。伝送媒体は、コンピューター実行可能命令またはデータ構造の形態の所望のプログラムコード手段を搬送するために使用することができ、汎用または特殊用途のコンピューターがアクセスすることができるネットワークおよび/またはデータリンクを含むことができる。上記のものの組み合わせもまた、コンピューター可読媒体の範囲内に含まれるべきである。
[0021]さらに、様々なコンピューターシステムの構成要素に到達すると、コンピューター実行可能命令またはデータ構造の形態のプログラムコード手段は、伝送媒体からコンピューター記憶媒体(デバイス)に(または逆に)自動的に転送されることが可能である。例えば、ネットワークまたはデータリンクを通じて受信されたコンピューター実行可能命令またはデータ構造は、ネットワークインターフェイス(例えば、「NIC」)内のRAMにバッファリングされ、その後最終的には、コンピューターシステムのRAMに、および/またはコンピューターシステムのより小さい揮発性コンピューター記憶媒体(デバイス)に転送することができる。このように、伝送媒体も同様に(またはさらには主として)利用するコンピューターシステムの構成要素に、コンピューター記憶媒体(デバイス)が含まれる可能性があることを理解すべきである。
[0022]コンピューター実行可能命令は、例えば、プロセッサーで実行されるとき、汎用コンピューター、特殊用途のコンピューター、または特殊用途の処理装置にある機能または機能群を実行させる命令およびデータを含む。コンピューター実行可能命令は、例えば、2値、アセンブリ言語のような中間フォーマットの命令、またはさらにソースコードとすることができる。主題について、構造的特徴および/または方法論的動作に特定的な言葉で説明したが、添付の特許請求の範囲に定める主題は、必ずしも上記の特定の特徴または動作に限定されないことを理解されたい。正しくは、記載した特徴および動作は、特許請求の範囲を実施する例示的な形態として開示する。
[0023]本発明は、パーソナルコンピューター、デスクトップコンピューター、ラップトップコンピューター、メッセージプロセッサー、ハンドヘルドデバイス、マルチプロセッサーシステム、マイクロプロセッサーベースのまたはプログラム可能な家庭用電化製品、ネットワークPC、ミニコンピューター、メインフレームコンピューター、携帯電話、PDA、タブレット、ページャー、ルーター、スイッチなど、多くのタイプのコンピューターシステム構成を有するネットワークコンピューティング環境において実行可能であることを、当業者は理解するであろう。また本発明は、ネットワークを介して(有線データリンク、無線データリンクにより、または有線データリンクと無線データリンクの組み合わせにより)リンクされた、ローカルのコンピューターシステムとリモートのコンピューターシステムが共にタスクを行う、分散システム環境において実行されることも可能である。分散システム環境では、プログラムモジュールを、ローカルのメモリー記憶装置とリモートのメモリー記憶装置の両方に配置することができる。
[0024]この説明および次の特許請求の範囲において、「クラウドコンピューティング」は、最小の管理努力またはサービスプロバイダーの介入で迅速に準備し、公開することができる、構成可能なコンピューティング資源(例えば、ネットワーク、サーバー、ストレージ、アプリケーション、およびサービス)の共有プールへのユビキタスで、利便性の高い、オンデマンドのネットワークアクセスを可能にするモデルとして定義される。クラウドモデルは、様々な特性(例えば、オンデマンドのセルフサービス、広範なネットワークアクセス、資源プーリング、迅速な伸縮性(rapid elasticity)、測定機能付きサービス(measured service)など)、サービスモデル(例えば、サービスとしてのソフトウェア(「SaaS」、サービスとしてのプラットフォーム(「PaaS」)、サービスとしてのインフラストラクチャ(「IaaS」)、および配置モデル(例えば、プライベートクラウド、コミュニティクラウド、パブリッククラウド、ハイブリッドクラウドなど))から構成されることが可能である。
[0025]図1は、仮想化された環境においてライセンスサーバーを確認することを容易にする例示的コンピューターアーキテクチャ100を示す。図1を参照すると、コンピューターアーキテクチャ100は、クラウドインスタンス101と、オブジェクト管理システム103とを含む。クラウドインスタンス101は、クラウド内で動作しているいくつかのクラウドインスタンスのうちの1つとすることができる。クラウドインスタンス101およびオブジェクト管理システム103は、例えば、ローカルエリアネットワーク(「LAN」)、ワイドエリアネットワーク(「WAN」)、およびさらにはインターネットのような、ネットワーク(またはその一部)を通じて互いに接続することができる。したがって、クラウドインスタンス101およびオブジェクト管理システム103、ならびに任意の他の接続されたコンピューターシステムおよびその構成要素が、メッセージ関連データを作成し、ネットワークを通じてメッセージ関連データ(例えば、インターネットプロトコル(「IP」)データグラムおよび、伝送制御プロトコル(「TCP」)、ハイパーテキスト転送プロトコル(「HTTP」)、簡易メール転送プロトコル(「SMTP」)などのような、IPデータグラムを使用する他の上位層プロトコル)を交換することができる。
[0026]図に示すように、クラウドインスタンス101は、ライセンスサーバー102を含む。ライセンスサーバー102は、(例えば、アプリケーションまたは他のソフトウェアモジュールからの)ライセンスの要求に応答するサーバーとすることができる。オブジェクト管理システム103は、例えばアカウント、ファイル、ユーザーなどのような、クラウドインスタンスから(または一般的にクラウド環境から)アクセス可能なオブジェクトを管理することができる。オブジェクト管理システム103によって管理されるオブジェクトは、固有の名前を与えられることが可能である。オブジェクト管理システム103によって管理されるオブジェクトは、排他的アクセスのために構成されることも可能である(すなわちオブジェクトは、いつでも単一のクラウドインスタンスによって所有されることが可能である)。
[0027]ソフトウェアライセンス121は、コンピューターアーキテクチャ100内に格納することができる。
[0028]図2は、仮想化された環境においてライセンスサーバーを確認するための例示的方法200のフローチャートを示す。コンピューターアーキテクチャ100の構成要素およびデータに関して、方法200を説明する。
[0029]方法200は、ライセンスサーバーに対する確認イベントを検出する行為を含み、この確認イベントは、ライセンスサーバーが、ソフトウェアライセンスの対象のライセンスサーバーとしてステータスをチェックしようとしていることを示し、ライセンスサーバーにインストール可能なソフトウェアライセンスは、固有の識別子を有し、固有の識別子は、クラウドコンピューティング環境内のクラウドベースのオブジェクトと関連付けられた固有の名前に基づいている(行為201)。例えば、確認イベント104を検出することができる。確認イベント104は、ラインセンスサーバー102がソフトウェアライセンス121の対象のライセンスサーバーとしてステータスをチェックしようとしていることを示すことができる。ソフトウェアライセンス121は、名前107(オブジェクト106の名前)に基づく固有の識別子を有するライセンスサーバーでインストール可能である。オブジェクト106は、排他的アクセス権を有するオブジェクトとすることができる。したがって、オブジェクト106(および対応するプロパティ)は、いつでも単一のライセンスサーバーによって所有されることが可能である。確認イベントを検出することは、ソフトウェアライセンス121がクラウドコンピューティング環境に格納されたことを検出することを含むことができる。確認イベントを検出することは、(例えば、ライセンスサーバーのステータスを最後にチェックしてから)指定された期間が過ぎたことを検出することを含むことができる。
[0030]方法200は、確認イベントに応答してライセンスサーバーがクラウドベースのオブジェクトの排他的所有権を用いるよう要求する行為を含み、クラウドベースのオブジェクトは、いつでも単一のライセンスサーバーがクラウドベースのオブジェクトを所有することができるように、所有権の排他性を有する(行為202)。例えば、ライセンスサーバー102は、確認イベント104に応答してオブジェクト管理システム103に所有権の要求111を送信することができる。所有権の要求111は、オブジェクト106(クラウドベースのオブジェクト)の所有権を用いる要求とすることができる。
[0031]方法200は、ライセンスサーバーがクラウドベースのオブジェクトの排他的所有権を与えられるという行為を含む(行為203)。例えば、オブジェクト管理システム103は、オブジェクト106の所有権をライセンスサーバー102に与えることができる。オブジェクト管理システム103は、オブジェクト106の所有権を示す所有権の付与112を構築することができる。オブジェクト管理システム103は、所有権の付与112をライセンスサーバー102に送信することができる。
[0032]続いて、ライセンスサーバー102は、オブジェクト106および名前107を含む対応するプロパティにアクセスすることができる。
[0033]方法200は、ライセンスサーバーが固有の名前を使用して、ライセンスサーバーの識別子として固有の識別子を確立する行為を含む(行為204)。例えば、ライセンスサーバー102は、名前107を使用して、ライセンスサーバー102の識別子として識別子108を確立することができる。他の構成要素(例えば、アプリケーション)は、その後、ソフトウェアライセンス121に対応するライセンス要求をライセンスサーバー102に宛てることができる。適切な場合、これらの他の構成要素は、ライセンスサーバー102が識別子108を所有していること(したがって、ソフトウェアライセンス121のライセンスサーバーであること)を確認することができる。
[0034]本発明の諸実施形態は、グローバルに固有のアカウント名によって参照されるストレージアカウントをサポートするストレージシステムを使用することを含む。ストレージシステムは、ライセンスサーバーがホストされるクラウド環境からアクセス可能である。各ストレージアカウントの内部にエンティティが存在し、そのアクセス権をいつでもクラウドの単一のライセンスサーバーが所有することができる。排他的アクセス権を有するグローバルに固有のストレージアカウント名を特定の固有のエンティティと組み合わせることによって、クラウドの単一のインスタンスがいつでも所有することができる固有のIDを作成することができる。
[0035]このように、独立系ソフトウェアベンダー(「ISV」)によって発行されるソフトウェアライセンスは、固有のストレージアカウント名を使用して、インストールすることができる場所を指定することができる。クラウドのライセンスサーバーは、そのストレージアカウント中の特定の固有のエンティティへのアクセス権の所有権を定期的にチェックする。所有権をチェックすることが、ライセンスサーバーが、対応する固有のIDに結び付けられる唯一のライセンスサーバーであることを保証する助けとなる。したがって、ライセンスは、複数のライセンスサーバーのインスタンスに繰り返して配布されることはない。
[0036]固有のIDの所有権は、背後にあるストレージシステムの安全メカニズムによって保護することができる。すなわち、ライセンスサーバーは、このアカウント内の特定の固有のエンティティへのアクセス権なしでは、固有のストレージアカウント名をその固有のIDとして用いることはできない。したがって、ライセンスサーバーをホストするためのクラウド環境の信頼性の特徴を活用することができる。例えば、ハードウェアベースのIDとは異なり、ストレージアカウントベースのIDは、あるクラウドインスタンスから別のクラウドインスタンスへ容易に転送することができる。
[0037]本発明のいくつかの実施形態は、Windows Azure(商標)プラットフォームで実行される。これらの実施形態は、Windows Azure XDriveとしてストレージアカウント内の特定のページblobの排他的マッピングとともにグローバルに排他的なAzureストレージアカウント名を利用する。ページblobは、ランダムな読み取りおよび書き込み操作に使用されるページの集まり(例えば、512バイト)である。xDriveにより、Windows Azure(商標)アプリケーションが既存のアプリケーション・プログラム・インターフェイス(「API」)を使用して、永続性のあるドライブ(durable drive)」にアクセスできるようになる。これにより、Windows Azure(商標)アプリケーションは、ページblobをドライブ文字(例えば、「X」)としてマウントすることができる。マッピングが使用されて、1つのAzureインスタンスがいつでも所有することができるIDを作成する。
[0038]Azureストレージのアカウント名は、グローバルに固有である正式DNS名とすることができる。Windows Azure XDriveは、XDriveが単一Azureインスタンスによって排他的に所有されるように、XDriveをマウントするための単一のニュー・テクノロジー・ファイル・システム(「NTFS」)ボリューム仮想ハードドライブ(「VHD」)としてフォーマットされたページblobのリースを許可する。これは、XDriveを事実上、Azureインスタンスのミューテックスにする。ソフトウェアライセンスは、したがって、Azureストレージアカウント名を使用して、そのインストール場所を識別することができる。ライセンスサーバーは、XDriveマッピングの有効性を定期的にチェックして、IDを所有していることを確かめ、もはや所有者ではなくなったとき終了する。
[0039]図3は、仮想化された環境においてライセンスサーバーを確認することを容易にする別の例示的コンピューターアーキテクチャ300を示す。図のように、コンピューターアーキテクチャ300は、クラウド環境301およびストレージシステム311を含むことができる。クラウド環境301およびストレージシステム311は、ネットワーク接続によって互いに接続することができる。
[0040]クラウド環境301は、クラウド・ライセンス・サービス・インスタンス302を含む。クラウド・ライセンス・サービス・インスタンス302は、アカウントアクセス情報303およびライセンスサーバー304を格納し、ライセンスサーバー304はさらに、強制プラグイン(enforcement plug−in)306を含む。ストレージシステム311は、ストレージアカウント312を含み、ストレージアカウント312はさらに、固有のエンティティ313を含む。
[0041]矢印321で示すように、クラウド・ライセンス・サービス・インスタンス302は、ストレージアカウント312(クラウド・ライセンス・サービス・インスタンス302が結び付けられたストレージアカウント)のストレージアカウントアクセス情報303を保持する。矢印322で示すように、ライセンスサーバー304は、ライセンスサーバーID強制プラグイン306により、ストレージアカウント312に固有のエンティティ313を配置する。ライセンスサーバー304は、固有のエンティティ313への排他的アクセス権を用いようと試みる。試みが失敗する場合、クラウド・ライセンス・サービス・インスタンス302は、シャットダウンすることができる。矢印323で示すように、ライセンスサーバー304は、排他的アクセス権の所有権を定期的にチェックする。所有権が失われた場合、クラウド・ライセンス・サービス・インスタンス302は、所有権を回復しようと試みることができる。試みが失敗する場合、クラウド・ライセンス・サービス・インスタンス302は、それ自体をシャットダウンすることができる。
[0042]したがって、本発明の諸実施形態は、クラウドコンピューティング環境において取得される、または構築される一連の特徴を活用して、クラウドでホストされるライセンスサーバーの一意性および不変性を提供するソフトウェアベースのソリューションを容易にする。背景にあるハードウェアシステムの特徴を避けることにより、ライセンスサーバーをホストするためのはるかに柔軟で信頼できるプラットフォームがもたらされる。クラウドストレージサービスの特徴は、ライセンスサーバーの固有のIDを作成するために使用することができる。パブリッククラウド環境においてホストされるライセンスサーバーのセキュリティおよび信頼性もまた向上される。
[0043]本発明は、その趣旨または本質的な特徴を逸脱することなく、他の特定の形態で具体化することができる。記載した実施形態は、あらゆる点で単に例示であって、限定ではないと考えられなければならない。したがって本発明の範囲は、前述の説明ではなく、添付の特許請求の範囲によって示される。特許請求の範囲の均等物の意味および範囲内で生じるあらゆる変更は、特許請求の範囲の内に含まれなければならない。

Claims (10)

  1. 1つまたは複数のプロセッサーおよびシステムメモリーを含む背景にあるコンピューターシステムで実行され、ライセンスサーバーをホストる、クラウドコンピューティング環境におけるクラウドインスタンスにおいて、前記ライセンスサーバーをソフトウェアライセンスの対象のライセンスサーバーとして確認するための方法であって、前記方法が、
    前記ライセンスサーバーに対する確認イベントを検出するステップであって、前記確認イベントが、前記ライセンスサーバーが前記ソフトウェアライセンスの前記対象のライセンスサーバーとしてステータスをチェックしようとしていることを示し、前記ソフトウェアライセンスが、固有の名前に結び付けられ、前記ライセンスサーバーが前記固有の名前に基づく固有の識別子を用いて前記ライセンスサーバーの識別子を確立する場合にのみ前記ライセンスサーバーにインストール可能であり、前記固有の名前が前記クラウドコンピューティング環境内のクラウドベースのオブジェクトと関連づけられ、前記ライセンスサーバーは、前記クラウドベースのオブジェクトの排他的所有権を用いる場合にのみ、前記固有の識別子を前記ライセンスサーバーの識別子として確立することができるステップと、
    前記確認イベントに応答して、前記ライセンスサーバーが前記クラウドベースのオブジェクトの排他的所有権を用いるよう要求するステップであって、単一のラインセンスサーバーのみいつでも前記クラウドベースのオブジェクトを所有することができるように、前記クラウドベースのオブジェクトを格納するストレージシステムが前記クラウドベースのオブジェクトの所有権の排他性を有する、ステップと、
    前記ライセンスサーバーが前記クラウドベースのオブジェクトの排他的所有権を与えられることに基づいて、前記ライセンスサーバーが前記固有の名前を使用して、前記ライセンスサーバーの識別子として前記固有の識別子を確立するステップと、
    前記ライセンスサーバーが前記固有の名前を使用して前記ライセンスサーバーの前記識別子として前記固有の識別子を確立したことに基づいて、前記ライセンスサーバーが前記ライセンスに対応する1つまたは複数のライセンス要求を受け取るステップと
    を含む、方法。
  2. 確認イベントを検出する前記ステップが、前記ソフトウェアライセンスが前記固有の識別子を有するライセンスサーバーにインストールするために前記クラウドコンピューティング環境内に格納されたことを検出するステップを含む、請求項1に記載の方法。
  3. 確認イベントを検出する前記ステップが、前記ライセンスサーバーの前記ステータスが最後にチェックされてから指定された期間が経過したことを検出するステップを含む、請求項1に記載の方法。
  4. ライセンスサーバーが前記クラウドベースのオブジェクトの排他的所有権を用いるよう要求する前記ステップが、前記クラウドベースのオブジェクトに関連付けられる前記クラウドコンピューティング環境記憶位置の排他的所有権を用いるよう前記ライセンスサーバーが要求する動作を含む、請求項1に記載の方法。
  5. 前記固有の識別子が前記固有の名前であり、前記固有の名前が前記憶位置の名前である、請求項に記載の方法。
  6. ロセッサーによって実行されると、ライセンスサーバーに、
    前記ライセンスサーバーに対する確認イベントを検出するステップであって、前記確認イベントが、前記ライセンスサーバーがソフトウェアライセンスの対象のライセンスサーバーとしてステータスをチェックしようとしていることを示し、前記ソフトウェアライセンスが、固有の名前に結び付けられ、前記ライセンスサーバーが前記固有の名前に基づく固有の識別子を用いて前記ライセンスサーバーの識別子を確立する場合にのみ前記ライセンスサーバーにインストール可能であり、前記固有の名前ストレージシステム内のオブジェクトと関連付けられる、ステップと、
    前記確認イベントに応答して、前記オブジェクトの排他的所有権を用いるよう要求するステップであって、単一のラインセンスサーバーのみいつでも記オブジェクトを所有することができるように、前記ストレージシステムが前記オブジェクトの所有権の排他性を有するステップと、
    前記ライセンスサーバーが記オブジェクトの排他的所有権を与えられることに基づいて、前記固有の名前を使用して、前記ライセンスサーバーの識別子として前記固有の識別子を確立するステップと、
    前記ライセンスサーバーが前記固有の名前を使用して前記ライセンスサーバーの前記識別子として前記固有の識別子を確立したことに基づいて、前記ライセンスサーバーが前記ライセンスに対応する1つまたは複数のライセンス要求を受け取るステップと
    を実行させる、コンピュータープログラム。
  7. 前記確認イベントを検出するステップ、前記ソフトウェアライセンスが前記固有の識別子を有するライセンスサーバーでインストールするために前記ストレージシステム内に格納されたことを検出するステップを含む、請求項6に記載のコンピュータープログラム。
  8. 前記確認イベントを検出するステップ、前記ライセンスサーバーのステータスが最後にチェックされてから指定された期間が経過したことを検出するステップを含む、請求項6に記載のコンピュータープログラム。
  9. 前記オブジェクトの排他的所有権を用いるよう要求するステップ、前オブジェクトに関連付けられる記憶位置に関連付けられるクラウドベースのオブジェクトの排他的所有権を用いるよう要求するステップを含む、請求項6に記載のコンピュータープログラム。
  10. 前記固有の識別子が前記固有の名前であり、前記固有の名前が前記憶位置の名前である、請求項に記載のコンピュータープログラム。
JP2014558847A 2012-02-22 2013-02-22 仮想化された環境におけるライセンスサーバーの確認 Active JP6110413B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/402,121 US9128780B2 (en) 2012-02-22 2012-02-22 Validating license servers in virtualized environments
US13/402,121 2012-02-22
PCT/US2013/027258 WO2013126651A1 (en) 2012-02-22 2013-02-22 Validating license servers in virtualized environments

Publications (3)

Publication Number Publication Date
JP2015513145A JP2015513145A (ja) 2015-04-30
JP2015513145A5 JP2015513145A5 (ja) 2016-03-10
JP6110413B2 true JP6110413B2 (ja) 2017-04-05

Family

ID=48983424

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014558847A Active JP6110413B2 (ja) 2012-02-22 2013-02-22 仮想化された環境におけるライセンスサーバーの確認

Country Status (7)

Country Link
US (1) US9128780B2 (ja)
EP (1) EP2817759B1 (ja)
JP (1) JP6110413B2 (ja)
KR (1) KR101980932B1 (ja)
CN (1) CN103297414B (ja)
ES (1) ES2598052T3 (ja)
WO (1) WO2013126651A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9129124B2 (en) * 2012-04-12 2015-09-08 Hewlett-Packard Development Company, L.P. Dynamic provisioning of virtual systems
CN104823175B (zh) * 2012-12-03 2019-04-16 慧与发展有限责任合伙企业 云服务管理系统
KR101926133B1 (ko) * 2016-07-19 2019-03-07 주식회사 스패로우 클라우드에서 라이선스 자동 발급 방법 및 장치

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8447630B2 (en) * 2004-02-26 2013-05-21 Payment Pathways, Inc. Systems and methods for managing permissions for information ownership in the cloud
US20110060922A1 (en) * 2005-10-05 2011-03-10 Takamitsu Sasaki License management system
US8745223B2 (en) * 2005-10-14 2014-06-03 Psion Inc. System and method of distributed license management
JP2008176749A (ja) * 2007-01-22 2008-07-31 Fujitsu Ltd Id貸出装置、id貸出プログラムおよびid貸出方法
KR101393012B1 (ko) * 2007-07-03 2014-05-12 삼성전자주식회사 라이센스 관리 시스템 및 방법
US8782637B2 (en) * 2007-11-03 2014-07-15 ATM Shafiqul Khalid Mini-cloud system for enabling user subscription to cloud service in residential environment
US20110289322A1 (en) * 2007-12-14 2011-11-24 Rasti Mehran Protected use of identity identifier objects
US8850230B2 (en) * 2008-01-14 2014-09-30 Microsoft Corporation Cloud-based movable-component binding
US8341625B2 (en) * 2008-05-29 2012-12-25 Red Hat, Inc. Systems and methods for identification and management of cloud-based virtual machines
WO2010028071A1 (en) * 2008-09-03 2010-03-11 Owjo Ltd. Systems and methods for a comprehensive integrated and universal content selling and buying platform
US20100332401A1 (en) 2009-06-30 2010-12-30 Anand Prahlad Performing data storage operations with a cloud storage environment, including automatically selecting among multiple cloud storage sites
US20110047540A1 (en) * 2009-08-24 2011-02-24 Embarcadero Technologies Inc. System and Methodology for Automating Delivery, Licensing, and Availability of Software Products
US8584221B2 (en) 2009-10-23 2013-11-12 Microsoft Corporation Authenticating using cloud authentication
JP5454102B2 (ja) * 2009-11-25 2014-03-26 株式会社リコー ライセンス更新管理装置、ライセンス管理システム、ライセンス更新方法、およびプログラム
US10402544B2 (en) * 2009-11-30 2019-09-03 Red Hat, Inc. Generating a software license knowledge base for verifying software license compliance in cloud computing environments
US9009137B2 (en) * 2010-03-12 2015-04-14 Microsoft Technology Licensing, Llc Query model over information as a networked service
US9461996B2 (en) * 2010-05-07 2016-10-04 Citrix Systems, Inc. Systems and methods for providing a single click access to enterprise, SAAS and cloud hosted application
US20120011244A1 (en) * 2010-07-09 2012-01-12 Telefonaktiebolaget L M Ericsson (Publ) Method for redistributing license tokens for a service across a cloud computing environment
KR101107056B1 (ko) 2011-07-07 2012-01-25 이니텍(주) 클라우드 컴퓨팅 환경에서 가상 머신의 보안 정보 처리 방법

Also Published As

Publication number Publication date
US9128780B2 (en) 2015-09-08
EP2817759B1 (en) 2016-07-20
EP2817759A1 (en) 2014-12-31
KR20140126334A (ko) 2014-10-30
KR101980932B1 (ko) 2019-08-28
ES2598052T3 (es) 2017-01-25
CN103297414A (zh) 2013-09-11
WO2013126651A1 (en) 2013-08-29
US20130219505A1 (en) 2013-08-22
EP2817759A4 (en) 2015-10-21
JP2015513145A (ja) 2015-04-30
CN103297414B (zh) 2016-02-10

Similar Documents

Publication Publication Date Title
CN107408064B (zh) 在虚拟机实例内执行命令的方法和用于实施该方法的系统
US9009705B2 (en) Authenticated distribution of virtual machine images
US9916321B2 (en) Methods and apparatus for controlling snapshot exports
US9864617B1 (en) Composable machine image
JP6073878B2 (ja) シャドーイングストレージゲートウェイ
JP5944990B2 (ja) ストレージゲートウェイ起動プロセス
JP2018517189A5 (ja)
US8954760B2 (en) Authentication of solution topology
US20190272260A1 (en) Remote Durable Logging for Journaling File Systems
JP2014505931A (ja) 仮想アプリケーションのライセンシングおよびメータリング
US11968301B2 (en) Decentralized asset identifiers for cross-blockchain networks
JP6110413B2 (ja) 仮想化された環境におけるライセンスサーバーの確認
CN113742660A (zh) 应用程序许可管理系统及方法
US20190081956A1 (en) Digital Content Access Control
WO2014178963A1 (en) Requesting and storing certificates for secure connection validation
US9130994B1 (en) Techniques for avoiding dynamic domain name system (DNS) collisions
Nelson et al. Syndicate: Virtual cloud storage through provider composition
US9654352B2 (en) Brokering data access requests and responses
US11321495B2 (en) Anomalous cache coherence transaction detection in a heterogeneous system
Griffee Network Atached Storage

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160120

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160120

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170130

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170208

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170309

R150 Certificate of patent or registration of utility model

Ref document number: 6110413

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250