JP2022549628A - コンピュータシステムリソースの任意のグループ化 - Google Patents

コンピュータシステムリソースの任意のグループ化 Download PDF

Info

Publication number
JP2022549628A
JP2022549628A JP2022518383A JP2022518383A JP2022549628A JP 2022549628 A JP2022549628 A JP 2022549628A JP 2022518383 A JP2022518383 A JP 2022518383A JP 2022518383 A JP2022518383 A JP 2022518383A JP 2022549628 A JP2022549628 A JP 2022549628A
Authority
JP
Japan
Prior art keywords
policy
resource
resources
key
user
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.)
Granted
Application number
JP2022518383A
Other languages
English (en)
Other versions
JP7502420B2 (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.)
Google LLC
Original Assignee
Google LLC
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 Google LLC filed Critical Google LLC
Publication of JP2022549628A publication Critical patent/JP2022549628A/ja
Application granted granted Critical
Publication of JP7502420B2 publication Critical patent/JP7502420B2/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/54Interprogram communication
    • G06F9/541Interprogram communication via adapters, e.g. between incompatible applications
    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6236Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database between heterogeneous systems
    • 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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0893Assignment of logical groups to network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0894Policy-based network configuration management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0895Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • H04L67/306User profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Computing Systems (AREA)
  • Storage Device Security (AREA)

Abstract

コンピュータシステムリソース(140)を任意でグループ分けする方法(300)は、ユーザ(110)に関連付けられるリソースのグループに適用されるべきリソースポリシー(222)を受けるステップを含む。リソースポリシーは、リソースのグループのうちの各リソースに割り当てられる固有のユーザ既定ラベル(216)を含む。この方法はまた、ユーザ既定ラベルを用いて、複数のリソースの中からリソースのグループを特定するステップを含む。ここで、複数のリソースは、ユーザに関連付けられ、複数の異なるコンピューティング環境に分散されている。この方法は、リソースのグループのうちの特定された各リソースごとに、対応する特定されたリソースが存在するそれぞれのコンピューティング環境にアクセスすることにより、対応する特定されたリソースにリソースポリシーを適用するステップを含む。

Description

本開示は、コンピュータシステムリソースを任意でグループ化することに関する。
背景
コンピューティング環境(たとえばクラウドコンピューティング)を利用するユーザが増加すると、ユーザが別々のコンピューティング環境内のリソースを有するまたは使用する可能性が高くなる。コンピューティング環境についての選択肢の増加は、イノベーションおよび/または費用対効果が高いコンピューティング環境プロバイダをもたらす可能性があるが、残念ながらリソース管理の潜在的な問題を呈している。例として、コンピューティング環境は、プロプライエタリ特徴またはプロバイダごとに異なる特徴を有する場合がある。たとえ小さな相違であっても、ユーザのリソースの構成がすべてのコンピューティングプラットフォームわたって一貫性を欠くことは避けられないであろう。このような一貫性の欠落があると、ユーザは、特にプロバイダを変更するまたはプロバイダを統合すると決断した場合に、ユーザ自身の管理方法で対応し続けることになる可能性がある。
概要
本開示の一局面は、コンピュータシステムリソースを任意でグループ化する方法を提供する。この方法は、データ処理ハードウェアにおいて、ユーザに関連付けられるリソースのグループに適用されるべきリソースポリシーを受けるステップを含む。リソースポリシーは、リソースのグループのうちの各リソースに割り当てられる固有のユーザ既定ラベルを含む。この方法はまた、データ処理ハードウェアが、ユーザ既定ラベルを用いて、複数のリソースの中からリソースのグループを特定するステップを含む。複数のリソースは、ユーザに関連付けられ、データ処理ハードウェアと通信する複数の異なるコンピューティング環境に分散される。この方法は、リソースのグループのうちの特定された各リソースごとに、データ処理ハードウェアが、対応する特定されたリソースが存在するそれぞれのコンピューティング環境にアクセスすることにより、対応する特定されたリソースにリソースポリシーを適用するステップを含む。
本開示の実装形態は、以下の任意の特徴のうちの1つ以上を含み得る。いくつかの実装形態において、固有のユーザ既定ラベルは、キー・バリューペア(key-value pair)を含む。リソースポリシーは、固有のユーザ既定ラベルのキー・バリューペアのうちのキー(key)に対する制約を含み得る。これに加えてまたはこれに代えて、リソースポリシーは、ラベルのキー・バリューペアのうちの値(value)に対する制約を含み得る。任意で、リソースポリシーは、キー・バリューペアのうちのキーに対する第1のポリシーと、キー・バリューペアのうちの値に対する第2のポリシーとを含み得る。
いくつかの例において、リソースポリシーは、アクセスコントロールポリシー、ファイアウォールポリシー、ネットワーキングポリシー、またはクォータポリシーのうちの少なくとも1つを含む。複数のコンピューティング環境は、少なくとも1つのプライベートコンピューティング環境と、少なくとも1つのパブリックコンピューティング環境とを含み得る。データ処理ハードウェアは、オンプレミスコンピューティング環境、プライベートコンピューティング環境、およびパブリッククラウドベースコンピューティング環境と通信するように構成されてもよい。複数のリソースは、仮想マシン、データベース、キー・バリューストア、またはネットワークのうちの少なくとも1つを含み得る。
本開示の別の局面は、コンピューティング環境におけるコンピュータシステムリソースにポリシーを適用する方法を提供する。この方法は、データ処理ハードウェアにおいて、ユーザに関連付けられるリソースのグループに適用されるべきリソースポリシーを受けるステップを含む。リソースポリシーは、リソースのグループのうちの各リソースに割り当てられる固有のユーザ既定ラベルを含む。固有のユーザ既定ラベルはキー・バリューペアを含む。この方法はさらに、データ処理ハードウェアが、固有のユーザ既定ラベルを用いて、複数のリソースの中からリソースのグループを特定するステップを含み、複数のリソースは、ユーザに関連付けられる。この方法はまた、リソースのグループのうちの特定された各リソースごとに、データ処理ハードウェアが、固有のユーザ既定ラベルのキー・バリューペアを管理することにより、対応する特定されたリソースにリソースポリシーを適用するステップを含む。
この局面は、以下の任意の特徴のうちの1つ以上を含み得る。いくつかの構成において、リソースポリシーは、固有のユーザ既定ラベルのキー・バリューペアのうちのキーに対する制約を含む。リソースポリシーは、ラベルのキー・バリューペアのうちの値に対する制約を含み得る。また、リソースポリシーは、キー・バリューペアのうちのキーに対する第1のポリシーと、キー・バリューペアのうちの値に対する第2のポリシーとを含み得る。リソースポリシーは、アクセスコントロールポリシー、ファイアウォールポリシー、ネットワーキングポリシー、またはクォータポリシーのうちの少なくとも1つを含み得る。任意で、複数のリソースは、仮想マシン、データベース、キー・バリューストア、またはネットワークのうちの少なくとも1つを含み得る。
本開示のもう1つの局面は、コンピュータシステムリソースを任意でグループ分けするためのシステムを提供する。このシステムは、データ処理ハードウェアと、データ処理ハードウェアと通信するメモリハードウェアとを備える。メモリハードウェアは、データ処理ハードウェア上で実行されるとデータ処理ハードウェアに動作を実行させる命令を格納する。この動作は、ユーザに関連付けられるリソースのグループに適用されるべきリソースポリシーを受けることを含み、リソースポリシーは、リソースのグループのうちの各リソースに割り当てられる固有のユーザ既定ラベルを含む。上記動作はまた、ユーザ既定ラベルを用いて、複数のリソースの中からリソースのグループを特定することを含む。複数のリソースは、ユーザに関連付けられ、データ処理ハードウェアと通信する複数の異なるコンピューティング環境に分散される。上記動作はまた、リソースのグループのうちの特定された各リソースごとに、対応する特定されたリソースが存在するそれぞれのコンピューティング環境にアクセスすることにより、対応する特定されたリソースにリソースポリシーを適用することを含む。
この局面は、以下の任意の特徴のうちの1つ以上を含み得る。いくつかの実装形態において、固有のユーザ既定ラベルはキー・バリューペアを含む。リソースポリシーは、固有のユーザ既定ラベルのキー・バリューペアのうちのキーに対する制約を含み得る。これに加えてまたはこれに代えて、リソースポリシーは、ラベルのキー・バリューペアのうちの値に対する制約を含み得る。任意で、リソースポリシーは、キー・バリューペアのうちのキーに対する第1のポリシーと、キー・バリューペアのうちの値に対する第2のポリシーとを含み得る。
いくつかの例において、リソースポリシーは、アクセスコントロールポリシー、ファイアウォールポリシー、ネットワーキングポリシー、またはクォータポリシーのうちの少なくとも1つを含む。複数のコンピューティング環境は、少なくとも1つのプライベートコンピューティング環境と、少なくとも1つのパブリックコンピューティング環境とを含み得る。データ処理ハードウェアは、オンプレミスコンピューティング環境、プライベートコンピューティング環境、およびパブリッククラウドベースコンピューティング環境と通信するように構成されてもよい。複数のリソースは、仮想マシン、データベース、キー・バリューストア、またはネットワークのうちの少なくとも1つを含み得る。
本開示のさらにもう1つの局面は、コンピュータシステムリソースを任意でグループ分けするためのシステムを提供する。このシステムは、データ処理ハードウェアと、データ処理ハードウェアと通信するメモリハードウェアとを備える。メモリハードウェアは、データ処理ハードウェア上で実行されるとデータ処理ハードウェアに動作を実行させる命令を格納する。この動作は、ユーザに関連付けられるリソースのグループに適用されるべきリソースポリシーを受けることを含む。リソースポリシーは、リソースのグループのうちの各リソースに割り当てられる固有のユーザ既定ラベルを含む。固有のユーザ既定ラベルはキー・バリューペアを含む。この動作はまた、ユーザ既定ラベルを用いて、複数のリソースの中からリソースのグループを特定することを含み、複数のリソースは、ユーザに関連付けられる。この動作はまた、リソースのグループのうちの特定された各リソースごとに、固有のユーザ既定ラベルのキー・バリューペアを管理することにより、対応する特定されたリソースにリソースポリシーを適用することを含む。
この局面は、以下の任意の特徴のうちの1つ以上を含み得る。いくつかの構成において、リソースポリシーは、固有のユーザ既定ラベルのキー・バリューペアのうちのキーに対する制約を含む。リソースポリシーは、ラベルのキー・バリューペアのうちの値に対する制約を含み得る。また、リソースポリシーは、キー・バリューペアのうちのキーに対する第1のポリシーと、キー・バリューペアのうちの値に対する第2のポリシーとを含み得る。リソースポリシーは、アクセスコントロールポリシー、ファイアウォールポリシー、ネットワーキングポリシー、またはクォータポリシーのうちの少なくとも1つを含み得る。任意で、複数のリソースは、仮想マシン、データベース、キー・バリューストア、またはネットワークのうちの少なくとも1つを含み得る。
本開示の1つ以上の実装形態の詳細が、添付の図面および以下の説明に記載される。他の局面、特徴、および利点は、この説明および図面ならびに請求項から明らかになるであろう。
マルチ環境システムの例の概略図である。 マルチ環境システムの例の概略図である。 環境マネージャの例の概略図である。 環境マネージャの例の概略図である。 環境マネージャ層または環境層のいずれかとやり取りするユーザの概略図である。 環境マネージャの動作の構成の一例の図である。 コンピューティング環境内のリソースにポリシーを適用する動作の構成の一例の図である。 本明細書に記載のシステムおよび方法を実現するために使用し得るコンピューティングデバイスの一例の概略図である。
各種図面において同様の参照符号は同様の要素を示す。
詳細な説明
現代の人々(ユーザまたは顧客とも呼ばれる)は、一般的に、複数のコンピューティング環境(たとえばクラウドベースのコンピューティング環境)にわたって実行されるコンピューティングリソースを有する。個々の各コンピューティング環境は、顧客がこのコンピューティング環境内のリソースとやり取りするのを容易にする、自身の固有のインターフェイスを有する場合がある。例として、このインターフェイスは、コンピューティングインスタンスの作成方法またはリソースに対するポリシーの既定方法を容易にする。ユーザは自身のリソースのために2つ以上のコンピューティング環境を利用する場合があるので、これらのコンピューティング環境のためのインターフェイス間の相違は、ユーザのリソースに対する管理能力のばらつきにつながる可能性がある。言い換えると、ユーザは、複数のコンピューティング環境にまたがってリソースを有している場合、管理の限界が原因でまたは特定のコンピューティング環境におけるリソース管理のプロプライエタリ形態が原因で、ユーザのリソースのすべてを同じやり方で(たとえば単一のインターフェイスを用いて)管理することができない場合がある。せいぜい、可能であればユーザ自身の一貫したリソース管理を維持する負担をユーザが負うぐらいである。
図1Aは、ユーザのリソースのための従来のマルチ環境システム100、100aの一例である。ここで、ユーザ110は、ユーザデバイス112(たとえばコンピュータ、ラップトップ、タブレット、携帯電話、ウェアラブル、スマートデバイスなど)を用い、ネットワーク120を通じて、ユーザのリソース140が存在する1つ以上のコンピューティング環境130(たとえばクラウドコンピューティング環境)と通信する。ユーザ110は、一般的に、1つ以上のコンピューティングリソース140を所有するまたは1つ以上のコンピューティングリソース140にアクセスするおよび/またはこれを管理する何らかの権利を有するエンティティを意味する。例として、ユーザ110は、1つ以上のコンピューティング環境プロバイダ(たとえばクラウドコンピューティングサービスプロバイダ)の顧客である。ユーザ110は、ユーザ110のさまざまな活動に基づいて、複数のコンピューティング環境130に分散したリソース140を有する場合がある。いくつかの例において、ユーザ110は、1つ以上のコンピューティング環境130にわたるリソース140とやり取りする数人の従業員を含み得る企業(たとえば組織)を意味する。例として、企業は、リソース140を統括するさまざまな営業所、チーム、部門、事業単位、または職務を伴う組織である。言い換えると、ユーザ110は、一人の人物または人々のグループを意味する場合がある。
ユーザ110のリソース140は、一般的に、ネットワーク、サーバ、ストレージ(たとえばデータベース、データストア、キー・バリューストア)、仮想マシン(VM)等のコンピューティングリソース、またはアプリケーションおよびサービス(たとえばクラスタ)に関連するその他のリソースを意味する。たとえば、図1Aおよび図1Bは、各コンピューティング環境130内の、サーバ、VM、およびデータベース等のリソース140、140a~140nとやり取りするユーザ110を示している。ユーザ110は、ユーザデバイス112上で実行可能なアプリケーション(たとえばウェブブラウザアプリケーション)を用いてこれらのリソース140とやり取りしてもよい。示されている各コンピューティング環境130には同様の数のリソース140があるが、コンピューティング環境130内のリソース140の数は、異なっていてもよくおよび/または増減可能であってもよく、そうすることで、コンピューティング環境130は、ユーザ110の任意の数のリソース140を(たとえばコンピューティング環境130間で釣り合いが取れていてもいなくても)有することができる。
ユーザ110は、リソース140に関連する機能をホストする、記憶する、または実行する環境として、いくつかの異なるコンピューティング環境130を用いることができる。たとえば、コンピューティング環境130のうちの1つ以上は、クラウドコンピューティング環境に対応する。ここで、コンピューティング環境130のタイプは異なっていてもよいが、一般的に、コンピューティング環境130は、リソース(たとえば最小限の管理作業またはサービスプロバイダとのやり取りを伴うリソース140)をプロビジョニングするための簡便でオンデマンドの環境をネットワークアクセスとともに提供しようとする。コンピューティング環境130のいくつかの例は、パブリックコンピューティング環境PubE(たとえばコンピューティング環境130、130a~130d)またはプライベートコンピューティング環境PrivE(たとえばコンピューティング環境130、130e)を含む。パブリックコンピューティング環境PubEは、コンピューティング環境130内のコンピューティングハードウェア(たとえばデータ処理ハードウェアまたはメモリハードウェア)への共有アクセスとともに一般大衆に提供されるコンピューティング環境130を意味する。一方、プライベートコンピューティング環境PrivEは、コンピューティング環境130にアクセスすることを許可された1以上のユーザ110のための排他的コンピューティング環境130を意味する。いくつかの例において、ユーザ110は、セキュリティ上の理由でまたは場合によっては各種データ規定に従うために(たとえばプライベートデータの安全を確保するために)プライベートコンピューティング環境PrivEを使用する。プライベートコンピューティング環境PrivEは、コンピューティング環境プロバイダによって特別なカスタマイズにより構成されてもよく、またはパブリックコンピューティング環境PubE内に作られたリソースパーティションに由来するものでもよい。
コンピューティング環境130のもう1つの例は、オンプレミスコンピューティング環境130である。オンプレミスコンピューティング環境130は、一般的に、ユーザ110のロケーションでセットアップされるコンピューティング環境130を意味する。そのロケーションに基づいたこのタイプのコンピューティング環境130は、一般的には私用であるが、構成によってはより一般にアクセス可能であってもよく、または限られた範囲でアクセス可能であってもよい。ユーザ110はさまざまな理由でコンピューティング環境130を使用する可能性があるので、ユーザ110は、さまざまな種類のコンピューティング環境130とやり取りする必要がある。例として、図1Aおよび図1Bは、4つのパブリックコンピューティング環境130a~130dと、1つのプライベートコンピューティング環境130eとを示している。たとえユーザ110がユーザ自身のプライベートコンピューティング環境PrivEを持つことを好むことがあっても、それは(たとえばコストの観点で)妥当ではないまたはすべての状況において難しい場合があり、結果として、ユーザ110は複数のタイプのコンピューティング環境130に関連付けられたリソース140を持つことになる可能性がある。
各コンピューティング環境130は、コンピューティング環境130内に存在するリソース140の管理のために、異なる構成を有していてもよい。これらの構成は、コンピューティング環境130内での動作についてガイドラインを記述したポリシー132を規定してもよい。ポリシー132は、インテグリティ(たとえば、リソースインテグリティ、または、コンピューティング環境全体としてのより包括的なインテグリティ)、セキュリティ、プライバシー、財務管理、コスト最適化、性能管理などに対して構成されてもよい。いくつかのポリシー132は制約に基づく(たとえばリソース140の動作方法を制限する)。言い換えると、制約は、リソースの使用または動作を制限するポリシーを意味する。例として、アクセスコントロールポリシー132ACP(ACP)は、どのエンティティが1つ以上のリソース140にアクセスしてよいかおよび/または1つ以上のリソース140をコントロールしてよいかを指定する。ポリシー132の他の例は、ファイアウォールポリシー(たとえばネットワークトラフィックを遮断/許可する)、ネットワーキングポリシー(たとえばネットワークアクセスについてのルール)、またはクォータポリシー(たとえばリソース配分/使用を指示する割り当て量(クォータ(quota))を含む。ポリシー132は、リソース140に固有であってもよく、またはリソース140の特徴(たとえばリソース140のタイプ、リソース140の所有者、リソース140の機能など)であってもよく、またはより広範囲に適用されてもよい(たとえばコンピューティング環境130に対するユニバーサルポリシー132)。いくつかの例において、コンピューティング環境130のアドミニストレータは、1つ以上のポリシー132を構成する。いくつかの実装形態において、ユーザ110は1つ以上のポリシー132を構成する(たとえば異なるリソース140に対してポリシー132をカスタマイズする)。さらに他の例において、ポリシー132は、アドミニストレータとユーザ110との組み合わせによって設定される。
いくつかの例において、コンピューティング環境130は、リソース140をリソース識別子(ID)134で管理する。リソースID134は、リソース140、(たとえばコンピューティング環境130のユーザ110またはアドミニストレータによって)リソース140に割り当てられた固有識別子(UID)、および/またはリソース140のための何らかの形態のラベルまたはタグを含み得る。たとえば、コンピューティング環境130の設計者は、コンピューティング環境130の構成中および/または(たとえばユーザ110への)リソース140の割り当て中に、リソースID134を生成する。いくつかの例において、リソースID134は、コンピューティング環境130内のリソース140のロケーションを含む。ユーザ110にとっては不運なことに、各コンピューティング環境130は、自身の形式のリソースID134を含むかまたはそれを欠いていることが多い。例として、従来のマルチ環境システム100aの図1Aは、各コンピューティング環境130ごとに異なるリソースIDシステム(たとえばリソースID134、134e)を示している。言い換えると、いくつかのリソースID134は、コンピューティング環境130専用の場合がある、または管理の基準の程度が変化する場合がある。単一のコンピューティング環境130内でこれらのリソースID134が一致していない可能性があるので、または、複数のコンピューティング環境130の中で異なるタイプのリソースID134間の相互互換性の問題があるので、リソースID134によるリソース140の全般的な管理は非常に難しいことがある。
少なくともこれらの理由から、リソースIDレベルでのユニバーサルポリシー管理は、一般的に不都合である。例として、いくつかのコンピューティング環境130は、リソースID134を含むが、リソースIDレベルでポリシー132が適用されるのを許可しない。他のコンピューティング環境130は、リソースID134を有するが、これらのリソースIDはコンピューティング環境130間の相互互換性がない。加えて、一般的な互換性の問題に加えて、コンピューティング環境130がリソースID134を有する場合、これらのコンピューティング環境130は、リソースID134の基本的詳細または特徴等のリソースID134の内容に、ポリシー132を適用する手段を持っていない。アクセスコントロールのようなポリシー132は、実質的に適用されなければ、セキュリティまたはプライバシーの目的で大規模に実現するのが負担になる。これらの問題のうちのいくつかを克服するために、管理層202の環境マネージャ200(マネージャ200とも呼ぶ)は、リソースID134の構造を管理しこの構造を利用して1つ以上のコンピューティング環境130にまたがるポリシー132を作成するように構成される。
図1Bは、マルチ環境システム100、100bが層102、202を含み管理層202上のマネージャ200が環境層202上の1つ以上のコンピューティング環境130、130a~130eを管理することを除いて、図1Aと同様である。管理層202は、複数の異なるコンピューティング環境130との相互運用が可能な(すなわち環境層202との相互運用が可能な)抽象化層を意味する。例として、マネージャ200は、ラベラ(labeler)210およびポリシーメーカー220の機能を実行するためにコンピューティング環境130にアクセスすることができる。ここで、環境層102は、1つ以上のコンピューティング環境130(たとえば異なるコンピューティング環境130、130a~130e)を含む層を意味する。図1Bは5つのコンピューティング環境130a~130eと通信するマネージャ200を示しているが、マネージャ200は、さまざまな程度の拡大縮小(たとえばより多くのまたはより少ないコンピューティング環境130)を可能にするために任意の数のコンピューティング環境130と通信してもよい。
いくつかの例において、ラベラ210は、ユーザ110のリソース140のラベル構造212を規定するように構成される。ここで、ラベル構造212は、リソース140の名前空間を意味する。ラベル構造212のいくつかの例は、キー・バリューペア214のような連想アレイを含む。キー・バリューペア214は、キーインデックス(すなわちキー214、214)を特定のデータ値(すなわち値214、214)にマッピングするラベル構造212である。キー214および値214の両方が全体として特定のラベル216を規定してもよい。より一般的に言えば、ラベル216(図2A)は、名前空間内の固有のユーザ定義文字列を意味する。マネージャ200の一部として、ラベラ210は、マネージャ200と通信する任意の数のコンピューティング環境130(たとえばすべてのコンピューティング環境130)にわたってラベル構造212(またはより具体的には所与のラベル216)を適用および/または管理することができる。例として、図1Bは、環境層102の各コンピューティング環境130内のラベル構造212、212a~212eを点線で示す。言い換えると、ユーザ110は(たとえばラベラ210を通して)、ユーザ110が各コンピューティング環境130においてそのようなラベル構造212を管理しなくても、自身のリソース140に適用することができる標準ラベル構造212を生成してもよい。いくつかの例において、ユーザ110は、マネージャ200において、ラベル構造212を(たとえばユーザ110のすべてのリソース140に)広く適用するか、または、ユーザ110のすべてのリソース140のサブセットに(たとえば1つのリソース140またはリソース140のグループに)より選択的に適用するかを、管理する。ユーザデバイス112は、ユーザ110がマネージャ200とやり取りできるようにするために、ユーザインターフェイスを実現するアプリケーションを実行してもよい。いくつかの実装形態において、ポリシーメーカー220は、リソースポリシー222を生成するように構成される。ここで、ポリシー132がリソース140に影響を及ぼす場合、(たとえば、図1Bに示すように)これをリソースポリシー222と呼ぶことができる。いくつかの例において、マネージャ200は、ラベル構造212に従って形成された所与のラベル216に対して1つ以上のリソースポリシー222、222a~222eをポリシーメーカー220に生成させることにより、1つ以上のコンピューティング環境130にわたってラベル構造212の作成を推進する。この方法を用いると、リソース140を、ラベルレベルで作用するリソースポリシー222を通して制御することができる。さらに、マネージャ200は、ユーザ110のリソース140がラベル216を用いてラベル付けまたは更新されると、ユーザ110のためのリソースポリシー222を中央制御してもよい。中央制御により、マネージャ200は、ハイブリッドコンピューティング環境130が頻繁に成長または変化する場合であっても、これらのコンピューティング環境130にわたって一貫した管理経験を提供することができる。
図2Aを参照して、いくつかの例において、ユーザ110は、マネージャ200を使用してラベル216を(たとえばラベラ210で)生成し、リソースポリシー222を送ってリソース140を制御する。ここで、ユーザ110は、いくつかのリソース140に同一ラベル216または同一セットのラベル216を割り当てることにより、任意のグループ230、230a~230dを形成する。リソース140のグループ230について、次に、グループ230を、マネージャ200のポリシーメーカー220が生成したリソースポリシー222を通して制御することができる。この方法を用いて、ラベル216をリソース階層(すなわちグルーピング230の階層)の上に重ね、マネージャ200が、コントロール(たとえばアクセスコントロールポリシー132ACP)を、この階層全体のリソースポリシー222として生成できるようにしてもよい。さらに、異なるラベル216によって形成された別々のグループ230が、グループ230の役割または目的に応える別々のコントロールに対応していてもよい。
たとえば、図2Aにおいて、ユーザ110は組織である。組織として、ユーザ110は、この組織の異なる単位または機能のためのリソース140を有する場合がある。たとえば、2人の従業員で形成されたテストチームは、組織のテストを実施するためにオンプレミスコンピューティング環境130内のリソース140、140a~140fを使用する。同様に、6人の従業員の製造チームは、プライベートコンピューティング環境PrivE内のリソース140、140g~140jを有する/使用する。ここで、組織110は、マネージャ200を用いて、これらの異なるチームのためのアクセスコントロールポリシー132ACPを規定する。例として、ユーザ110は、「動作=テスト」という同一のラベル216、216aをリソース140a~140fに割り当てることにより、テストチームを第1のグループ230、230aにグループ分けする。ここで、「動作」という文字はラベル216aのキー214を意味し、「テスト」という文字はラベル216aの値214を意味する。「動作=テスト」というラベル216aに対し、ユーザ110は、マネージャ200を用いて、従業員Aおよび従業員Bという2人の従業員で形成されたテストチーム固有の第1のリソースポリシー222、222aを生成する。言い換えると、第1のリソースポリシー222aは、従業員Aおよび従業員Bがリソース140a~140f(すなわち「動作=テスト」でラベル付けされたリソース140a~140f)にアクセスできるように制御されることを、規定する。
6人の従業員で形成された製造チームの場合、ユーザ110は、マネージャ200を用いて、製造リソース140g~140jに「動作=製造」というラベル216bを割り当てることにより、製造グループ230、230bを形成する。ここで、ラベラ210は(たとえばユーザ110の入力により)、「動作」という同一のキー214を「製造」という異なる値214に割り当てることにより、テスト動作と製造動作とを区別する。製造グループ230bの場合、マネージャ200は、製造グループ230bに適用されるべき第2のリソースポリシー222、222bを受け、このポリシーは、6人の従業員のうちの4人がグループ230b内のすべてのリソース140g~140j(すなわち製造チームに属するすべてのリソース140g~140j)にアクセスできるように制御することができる。さらに一歩進むと、ユーザ110は、組織として、異なる製造リソース140(たとえば米国製造リソース140g~140hおよび欧州製造リソース140i~140j)を使用する、米国での製造および欧州での製造を行う場合がある。ポリシー132をこれらの製造のサブ単位に適用できるようにするために、ユーザ110は、「Loc=US」という第3のラベル216、216cで米国製造リソース140g~140hをラベル付けすることによって第3のグループ230、230cを形成し、「Loc=EUR」という第4のラベル216、216dで欧州製造リソース140i~140jをラベル付けすることによって第4のグループ230、230dを形成する。ここで、第3のラベル216cおよび第4のラベル216dをリソースポリシー222、222c~222dに割り当てることにより、マネージャ200は、第5の従業員がリソース140g~140hにアクセスできるようにし、第6の従業員がリソース140i~140jにアクセスできるようにする。言い換えると、第5の従業員は、特殊な米国製造工場で、米国製造リソース140g~140hへのアクセス権を、他の製造リソース140i~140jへのアクセス権を受けることなく、受けてもよい。同じことが第6の従業員にも当てはまる。第6の従業員は、特殊な欧州製造工場で、欧州製造リソース140i~140jへのアクセス権を、他の製造リソース140g~140h(たとえば米国製造リソース140g~140h)へのアクセス権を受けることなく、受けてもよい。この例において、すべての製造リソース140g~140jへのアクセス権を受ける4人の従業員は、米国または欧州のいずれかの設備とインターフェイスししたがってグローバルアクセスを必要とする製造エンジニアであってもよい。
図2Bは、マネージャ200が、リソースポリシー222を、グループ230内の各リソース140に、そのコンピューティング環境130に関係なく適用することを示すことで、マネージャ200の機能をさらに詳しく説明している。より具体的には、マネージャ200は、その環境層102との互換性を用いて、グループ230の各リソース140が存在するコンピューティング環境130にアクセスし、リソースポリシー222を適用することができる。図2Bのようないくつかの実装形態において、マネージャ200は、複数のリソースポリシー222a~222cをユーザ110から受け、グループ230a~230cを形成する固有のユーザ既定ラベル216a~216cに適用する。ここで、図2Bは、リソース140を、図1Bの、これらのリソースに関連付けられたコンピューティング環境130とともに示す。この例において、ラベル216aを有する第1のグループ230aのリソース140a~140eは、第3のコンピューティング環境130c内のリソース140aおよび第1のコンピューティング環境130aの4つのリソース140b~140eに対応し、マネージャ200は、第1のポリシー222aを、これらのコンピューティング環境130a、130cの双方の中にあるリソース140に適用する。同様に、ラベル216bを有する第2のグループ230bのリソース140e~140gは、第1のコンピューティング環境130a内のリソース140e、第4のコンピューティング環境130d内のリソース140f、および第5のコンピューティング環境130e内のリソース140gに対応する。第2のグループ230bの場合、マネージャ200は、第2のポリシー222bを、これらの3つの環境130a、130d、130e内のリソース140e~140gに適用する。第3のグループ230cの場合、ラベル216cを有するリソース140h~140jは、第3のコンピューティング環境130c内の3つのリソース140h~140jに対応し、マネージャ200は、第3のポリシー222cを第3のコンピューティング環境130cに適用する。
図2Bのようないくつかの例において、ポリシー(たとえば第3のポリシー222c)は、ラベル216を形成するキー・バリューペア214のうちの一方または双方に適用される。言い換えると、マネージャ200は、先に説明したように、ポリシー132を、ラベル216のキー214、ラベル216の値214、またはラベル216全体に適用するように構成される。アクセスコントロールポリシー132ACPで説明すると、マネージャ200は、ユーザ110から、特定のキー214および/または値214によるリソース240のラベル付け(またはグループ分け)を制御し得る人を制限するリソースポリシー222を受けることができる。この方法は、リソース140へのアクセス権を有する誰かがそのラベル216を有害なやり方で変更することを防止できる。図2Aの組織を用いた場合、製造チームの技術メンバーは、欧州製造工場の製造従業員が、リソース140に割り当てるためのラベル216を欧州から米国に変更することを望まない場合がある。そのため、マネージャ200は、欧州の従業員が「EUR」という値214を変更することを制限するアクセスコントロールポリシーであるリソースポリシー222を適用してもよい。これに加えてまたはこれに代えて、リソースポリシー222により、同じ従業員がキー214を「Loc」から「動作」のキー214に変更することを制限してもよい。
図2Cのようないくつかの構成において、ユーザ110は、1つのコンピューティング環境130aを、環境管理層202では指示されていないラベル構造212に基づいてポリシー132を実現するように構成する。例として、ユーザ110は、特定のコンピューティング環境130のリソース140を優先的に使用する。これらの例において、ユーザ110は、マネージャ200の管理経験を構成するのではなく、(たとえばこのユーザが頻繁に使用する)1つのコンピューティング環境130を、ラベル管理ポリシーを用いてセットアップしてもよい。1つのコンピューティング環境130であるものの、ユーザ110は、自身のリソース140を、ラベル216(たとえばキー・バリューペア214のラベル構造212を有するラベル216)をグループ230内の各リソース140に適用して(たとえばグループ230bに割り当てられたリソース140k~140pとして示される)1つ以上のグループ230に分割することにより、管理してもよい。ユーザ110は、固有のユーザ既定ラベル216を用いて、リソースポリシー222c~222dをラベル216(一般的に、キー214、値214、またはラベル216のいずれか)に割り当てて、(たとえばマネージャ200と同じやり方で)グループ230に対するポリシー132を実現してもよい。また、図2Cは、ユーザ110が、(たとえばマネージャ200を用いて)管理層202で管理する、または(たとえばユーザ自身の自発的な)環境層102での管理という選択肢を有し得ることを示している。
図3は、コンピュータシステムリソースを任意でグループ分けする方法300の動作の構成の一例のフローチャートである。動作302において、方法300は、環境管理システム200で、ユーザ110に関連付けられるリソース140のグループ230に適用されるべきリソースポリシー222を受けることを含む。リソースポリシー222は、リソース140のグループ230のうちの各リソース140に割り当てられる固有のユーザ既定ラベル216(たとえば1つ以上の固有のユーザ既定ラベル216)を含む。動作304において、方法300は、複数のリソース140の中からリソース140のグループ230を特定することを含み、複数のリソース140は、ユーザ110に関連付けられ、環境管理システム200と通信する複数の異なるコンピューティング環境130に分散されている。動作306において、方法300は、リソース140のグループ230のうちの特定された各リソース140ごとに、対応する特定されたリソースが存在するそれぞれのコンピューティング環境130にアクセスすることにより、対応する特定されたリソース140にリソースポリシー222を適用することを含む。
図4は、コンピューティング環境130内のリソース140にポリシー132を適用する方法400の動作の構成の一例である。動作402において、方法400は、ユーザ110に関連付けられるリソース140のグループ230に適用されるべきリソースポリシー222を受けることを含む。リソースポリシー222は、リソース140のグループ230のうちの各リソース140に割り当てられる固有のユーザ既定ラベル216(たとえば1つ以上の固有のユーザ既定ラベル216)を含む。ここで、固有のユーザ既定ラベル216はキー・バリューペア214を含む。動作404において、方法400は、固有のユーザ既定ラベル216を用いて、ユーザ110に関連付けられる複数のリソース140の中からリソース140のグループ230を特定することを含む。動作406において、方法400は、リソース140のグループ230のうちの特定された各リソース140ごとに、固有のユーザ既定ラベル216のキー・バリューペア214を管理することにより、対応する特定されたリソース140にリソースポリシー222を適用することを含む。
図5は、本明細書に記載のシステム(たとえばマネージャ200)および方法(たとえば方法300および/または方法400)を実現するために使用し得る一例としてのコンピューティングデバイス500の概略図である。コンピューティングデバイス500は、ラップトップ、デスクトップ、ワークステーション、パーソナルデジタルアシスタント、サーバ、ブレードサーバ、メインフレーム、およびその他の適切なコンピュータ等の、各種形態のデジタルコンピュータを表わすことを意図している。ここに示されている構成要素、それらの接続および関係、ならびにそれらの機能は、具体例を意図しているだけであって、本明細書において記載および/またはクレームされている発明の実装を限定することを意図している訳ではない。
コンピューティングデバイス500は、プロセッサ510(たとえばデータ処理ハードウェア)と、メモリ520(たとえばメモリハードウェア)と、記憶装置530と、メモリ520および高速拡張ポート550に接続する高速インターフェイス/コントローラ540と、低速バス570および記憶装置530に接続する低速インターフェイス/コントローラ560とを含む。構成要素510、520、530、540、550、および560の各々は、各種バスを用いて相互接続され、共通のマザーボード上に実装されてもよく、または必要に応じて他の方法で実装されてもよい。プロセッサ510は、コンピューティングデバイス500内で実行するために命令を処理することができ、命令は、高速インターフェイス540に結合されたディスプレイ580等の外部入出力装置上のグラフィカルユーザインターフェイス(GUI)のためのグラフィック情報を表示するためにメモリ520内または記憶装置530上に格納された命令を含む。他の実装形態において、複数のメモリおよび複数のタイプのメモリとともに、複数のプロセッサおよび/または複数のバスが必要に応じて使用されてもよい。また、複数のコンピューティングデバイス500が接続されてもよく、各デバイスは(たとえばサーババンク、ブレードサーバのグループ、またはマルチプロセッサシステムとして)必要な動作の一部を提供する。
メモリ520は、コンピューティングデバイス500内で情報を非一時的に格納する。メモリ520は、コンピュータ読取可能媒体、揮発性メモリユニット、または不揮発性メモリユニットであってもよい。非一時的なメモリ520は、コンピューティングデバイス500が使用するプログラム(たとえば命令のシーケンス)またはデータ(たとえばプログラム状態情報)を一時的または永続的に格納するために使用される物理デバイスであってもよい。不揮発性メモリの例は、フラッシュメモリおよび読出専用メモリ(ROM)/プログラマブル読出専用メモリ(PROM)/消去可能プログラマブル読出専用メモリ(EPROM)/電子的消去可能プログラマブル読出専用メモリ(EEPROM)(たとえば典型的にはブートプログラム等のファームウェアに使用される)を含むが、これらに限定されない。揮発性メモリの例は、ランダムアクセスメモリ(RAM)、ダイナミックランダムアクセスメモリ(DRAM)、スタティックランダムアクセスメモリ(SRAM)、相変化メモリ(PCM)、およびディスクまたはテープを含むが、これらに限定されない。
記憶装置530は、コンピューティングデバイス500に大容量記憶を提供することができる。いくつかの実装形態において、記憶装置530はコンピュータ読取可能媒体である。各種の異なる実装形態において、記憶装置530は、フロッピー(登録商標)ディスクデバイス、ハードディスクデバイス、光ディスクデバイス、またはテープデバイス、フラッシュメモリもしくはその他同様のソリッドステートメモリデバイス、またはストレージエリアネットワークもしくはその他の構成におけるデバイスを含むデバイスのアレイであってもよい。その他の実装形態では、コンピュータプログラムプロダクトが情報キャリアにおいて有形に実現される。コンピュータプログラムプロダクトは、実行されたときに上記方法のような方法を1つ以上実行する命令を含む。情報キャリアは、メモリ520、記憶装置530、またはプロセッサ510上のメモリ等のコンピュータまたはマシン読取可能媒体である。
高速コントローラ540はコンピューティングデバイス500について帯域幅を多用する動作を管理し、低速コントローラ560はより少ない帯域幅を使用する動作を管理する。このような機能の割り当ては例示にすぎない。いくつかの実装形態において、高速コントローラ540は、メモリ520およびディスプレイ580に(たとえばグラフィックスプロセッサまたはアクセラレータを通して)結合され、かつ、さまざまな拡張カード(図示せず)を受け入れることができる高速拡張ポート550に結合されている。いくつかの実装形態において、低速コントローラ560は、記憶装置530および低速拡張ポート570に結合されている。さまざまな通信ポート(たとえばUSB、ブルートゥース(登録商標)、イーサネット(登録商標)、ワイヤレスイーサネット)を含み得る低速拡張ポート570は、キーボード、ポインティングデバイス、スキャナ等の1つ以上の入出力デバイス、またはスイッチもしくはルータ等のネットワーキングデバイスに、たとえばネットワークアダプタを通して結合されてもよい。
コンピューティングデバイス500は、図に示されるように、いくつかの異なる形態で実現することができる。たとえば、標準的なサーバ500aとして実現されてもよく、またはそのようなサーバ500aのグループ内で複数実現されてもよく、またはラップトップコンピュータ500bとして実現されてもよく、またはラックサーバシステム500cの一部として実現されてもよい。
本明細書に記載されているシステムおよび技術のさまざまな実装形態は、デジタル電子および/または光学回路、集積回路、特別に設計されたASIC(特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア、および/またはそれらの組み合わせで実現することができる。これらのさまざまな実装形態は、プログラム可能なシステム上で実行可能および/または翻訳可能な1つ以上のコンピュータプログラムにおける実装形態を含み得るものであり、上記プログラム可能なシステムは、記憶システムからデータおよび命令を受信し記憶システムにデータおよび命令を送信するように結合された専用または汎用であってもよい少なくとも1つのプログラム可能なプロセッサと、少なくとも1つの入力装置と、少なくとも1つの出力装置とを含む。
(プログラム、ソフトウェア、ソフトウェアアプリケーションまたはコードとしても知られている)これらのコンピュータプログラムは、プログラム可能なプロセッサのための機械命令を含み、ハイレベルの手続き型プログラミング言語および/またはオブジェクト指向プログラミング言語で実現されてもよく、および/またはアセンブリ言語/機械言語で実現されてもよい。本明細書で使用される「機械読取可能な媒体」および「コンピュータ読取可能な媒体」という用語は、機械命令を機械読取可能な信号として受信する機械読取可能な媒体を含む、機械命令および/またはデータをプログラム可能なプロセッサに提供するために使用される任意のコンピュータプログラムプロダクト、非一時的なコンピュータ読取可能媒体、装置および/またはデバイス(たとえば磁気ディスク、光ディスク、メモリ、プログラマブルロジックデバイス(PLD))を意味する。「機械読取可能な信号」という用語は、機械命令および/またはデータをプログラム可能なプロセッサに提供するために使用される任意の信号を意味する。
本明細書に記載のプロセスおよび論理フローは、1つ以上のコンピュータプログラムを実行することで入力データに対して動作し出力を生成することにより機能を果たす1つ以上のプログラム可能なプロセッサによって実行することができる。プロセスおよび論理フローは、専用ロジック回路たとえばFPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)によって実行することもできる。コンピュータプログラムの実行に適したプロセッサは、例として、汎用および専用双方のマイクロプロセッサ、ならびに任意の種類のデジタルコンピュータの任意の1つ以上のプロセッサを含む。一般的に、プロセッサは、読出専用メモリまたはランダムアクセスメモリまたはこれらの双方から命令およびデータを受ける。コンピュータの不可欠な要素は、命令を実行するためのプロセッサと、命令およびデータを格納するための1つ以上のメモリデバイスとである。一般的に、コンピュータは、データを格納するための1つ以上の大容量記憶装置、たとえば磁気ディスク、光磁気ディスク、または光ディスクも含む、または、データを受けるためもしくはデータを伝送するためもしくはこれら双方のために上記大容量記憶装置に作動的に結合される。しかしながら、コンピュータはそのような装置を有している必要はない。コンピュータプログラム命令およびデータを格納するのに適したコンピュータ読取可能媒体は、すべての形態の不揮発性メモリ、媒体およびメモリデバイスを含み、これらは、例として、半導体メモリデバイス、たとえばEPROM、EEPROM、およびフラッシュメモリデバイスや、磁気ディスク、たとえば内部ハードディスクまたはリムーバブルディスクや、光磁気ディスクや、CD ROMおよびDVD-ROMディスクを含む。プロセッサおよびメモリは、専用論理回路が補充されてもよくまたは専用論理回路に組み込まれてもよい。
ユーザとの対話を提供するために、本開示の1つ以上の局面をディスプレイデバイスを有するコンピュータ上で実現してもよく、ディスプレイデバイスは、情報をユーザに対して表示するための、たとえばCRT(陰極線管)、LCD(液晶ディスプレイ)モニタ、またはタッチスクリーンであり、コンピュータはまた、任意でキーボードおよびポインティングデバイス、たとえばマウスまたはトラックボールを有し、それによってユーザは入力をコンピュータに与えることができる。ユーザとの対話を提供するために他の種類のデバイスも使用することができ、たとえば、ユーザに提供されるフィードバックは、任意の形態の感覚フィードバック、たとえば視覚フィードバック、聴覚フィードバックまたは触覚フィードバックであってもよく、ユーザからの入力は、音響入力、音声入力または触覚入力を含む任意の形態で受けることができる。加えて、コンピュータは、ユーザが使用するデバイスに文書を送信しこのデバイスから文書を受信することにより、たとえば、ユーザのクライアントデバイス上のウェブブラウザに、このウェブブラウザから受けた要求に応じてウェブページを送信することにより、ユーザとの対話を行ってもよい。
いくつかの実装形態について説明した。しかしながら、本開示の精神および範囲から逸脱することなく各種修正が行われ得ることが理解されるであろう。したがって、その他の実装形態が以下の特許請求の範囲に含まれる。

Claims (30)

  1. 方法(300)であって、前記方法は、
    データ処理ハードウェア(510)において、ユーザ(110)に関連付けられるリソース(140)のグループに適用されるべきリソースポリシー(222)を受けるステップを含み、前記リソースポリシー(222)は、前記リソース(140)のグループのうちの各リソース(140)に割り当てられる固有のユーザ既定ラベル(216)を含み、前記方法はさらに、
    前記データ処理ハードウェア(510)が、前記固有のユーザ既定ラベル(216)を用いて、複数のリソース(140)の中から前記リソース(140)のグループを特定するステップを含み、前記複数のリソース(140)は、前記ユーザ(110)に関連付けられ、前記データ処理ハードウェア(510)と通信する複数の異なるコンピューティング環境(130)に分散され、前記方法はさらに、
    前記リソース(140)のグループのうちの特定された各リソース(140)ごとに、前記データ処理ハードウェア(510)が、対応する特定されたリソース(140)が存在するそれぞれの前記コンピューティング環境(130)にアクセスすることにより、前記対応する特定されたリソース(140)に前記リソースポリシー(222)を適用するステップを含む、方法(300)。
  2. 前記固有のユーザ既定ラベル(216)は、キー・バリューペア(214)を含む、請求項1に記載の方法(300)。
  3. 前記リソースポリシー(222)は、前記固有のユーザ既定ラベル(216)の前記キー・バリューペア(214)のうちのキー(214)に対する制約をさらに含む、請求項2に記載の方法(300)。
  4. 前記リソースポリシー(222)は、前記固有のユーザ既定ラベル(216)の前記キー・バリューペア(214)のうちの値(214)に対する制約をさらに含む、請求項2または3に記載の方法(300)。
  5. 前記リソースポリシー(222)は、前記キー・バリューペア(214)のうちのキー(214)に対する第1のポリシー(222a)と、前記キー・バリューペア(214)のうちの値(214)に対する第2のポリシー(222b)とを含む、請求項2~4のいずれか1項に記載の方法(300)。
  6. 前記リソースポリシー(222)は、アクセスコントロールポリシー(132ACP)、ファイアウォールポリシー、ネットワーキングポリシー、またはクォータポリシーのうちの少なくとも1つを含む、請求項1~5のいずれか1項に記載の方法(300)。
  7. 前記複数のコンピューティング環境(130)は、少なくとも1つのプライベートコンピューティング環境(130)と、少なくとも1つのパブリックコンピューティング環境(130)とを含む、請求項1~6のいずれか1項に記載の方法(300)。
  8. 前記データ処理ハードウェア(510)は、オンプレミスコンピューティング環境(130)、プライベートコンピューティング環境(130)、およびパブリッククラウドベースコンピューティング環境(130)と通信するように構成される、請求項1~7のいずれか1項に記載の方法(300)。
  9. 前記複数のリソース(140)は、仮想マシン、データベース、キー・バリューストア、またはネットワーク(120)のうちの少なくとも1つを含む、請求項1~8のいずれか1項に記載の方法(300)。
  10. 方法(400)であって、前記方法は、
    データ処理ハードウェア(510)において、ユーザ(110)に関連付けられるリソース(140)のグループに適用されるべきリソースポリシー(222)を受けるステップを含み、前記リソースポリシー(222)は、前記リソース(140)のグループのうちの各リソース(140)に割り当てられる固有のユーザ既定ラベル(216)を含み、前記固有のユーザ既定ラベル(216)はキー・バリューペア(214)を含み、前記方法はさらに、
    前記データ処理ハードウェア(510)が、前記固有のユーザ既定ラベル(216)を用いて、複数のリソース(140)の中から前記リソース(140)のグループを特定するステップを含み、前記複数のリソース(140)は、前記ユーザ(110)に関連付けられ、前記方法はさらに、
    前記リソース(140)のグループのうちの特定された各リソース(140)ごとに、前記データ処理ハードウェア(510)が、前記固有のユーザ既定ラベル(216)の前記キー・バリューペア(214)を管理することにより、対応する特定されたリソース(140)に前記リソースポリシー(222)を適用するステップを含む、方法(400)。
  11. 前記リソースポリシー(222)は、前記固有のユーザ既定ラベル(216)の前記キー・バリューペア(214)のうちのキー(214)に対する制約をさらに含む、請求項10に記載の方法(400)。
  12. 前記リソースポリシー(222)は、前記固有のユーザ既定ラベル(216)の前記キー・バリューペア(214)のうちの値(214)に対する制約をさらに含む、請求項10または11に記載の方法(400)。
  13. 前記リソースポリシー(222)は、前記キー・バリューペア(214)のうちのキー(214)に対する第1のポリシー(222a)と、前記キー・バリューペア(214)のうちの値(214)に対する第2のポリシー(222b)とを含む、請求項10~12のいずれか1項に記載の方法(400)。
  14. 前記リソースポリシー(222)は、アクセスコントロールポリシー(132ACP)、ファイアウォールポリシー、ネットワーキングポリシー、またはクォータポリシーのうちの少なくとも1つを含む、請求項10~13のいずれか1項に記載の方法(400)。
  15. 前記複数のコンピューティングリソース(140)は、仮想マシン、データベース、キー・バリューストア、またはネットワーク(120)のうちの少なくとも1つを含む、請求項10~14のいずれか1項に記載の方法(400)。
  16. システム(100)であって、
    データ処理ハードウェア(510)と、
    前記データ処理ハードウェア(510)と通信するメモリハードウェア(520)とを備え、前記メモリハードウェア(520)は、前記データ処理ハードウェア(510)上で実行されると前記データ処理ハードウェア(510)に動作を実行させる命令を格納し、前記動作は、
    ユーザ(110)に関連付けられるリソース(140)のグループに適用されるべきリソースポリシー(222)を受けることを含み、前記リソースポリシー(222)は、前記リソース(140)のグループのうちの各リソース(140)に割り当てられる固有のユーザ既定ラベル(216)を含み、前記動作はさらに、
    前記ユーザ既定ラベル(216)を用いて、複数のリソース(140)の中から前記リソース(140)のグループを特定することを含み、前記複数のリソース(140)は、前記ユーザ(110)に関連付けられ、前記データ処理ハードウェア(510)と通信する複数の異なるコンピューティング環境(130)に分散され、前記動作はさらに、
    前記リソース(140)のグループのうちの特定された各リソース(140)ごとに、対応する特定されたリソース(140)が存在するそれぞれの前記コンピューティング環境(130)にアクセスすることにより、前記対応する特定されたリソース(140)に前記リソースポリシー(222)を適用することを含む、システム(100)。
  17. 前記固有のユーザ既定ラベル(216)はキー・バリューペア(214)を含む、請求項16に記載のシステム(100)。
  18. 前記リソースポリシー(222)は、前記固有のユーザ既定ラベル(216)の前記キー・バリューペア(214)のうちのキー(214)に対する制約をさらに含む、請求項17に記載のシステム(100)。
  19. 前記リソースポリシー(222)は、前記固有のユーザ既定ラベル(216)の前記キー・バリューペア(214)のうちの値(214)に対する制約をさらに含む、請求項17または18に記載のシステム(100)。
  20. 前記リソースポリシー(222)は、前記キー・バリューペア(214)のうちのキー(214)に対する第1のポリシー(222a)と、前記キー・バリューペア(214)のうちの値(214)に対する第2のポリシー(222b)とを含む、請求項17~19のいずれか1項に記載のシステム(100)。
  21. 前記リソースポリシー(222)は、アクセスコントロールポリシー(132ACP)、ファイアウォールポリシー、ネットワーキングポリシー、またはクォータポリシーのうちの少なくとも1つを含む、請求項16~20のいずれか1項に記載のシステム(100)。
  22. 前記複数のコンピューティング環境(130)は、少なくとも1つのプライベートコンピューティング環境(130)と、少なくとも1つのパブリックコンピューティング環境(130)とを含む、請求項16~21のいずれか1項に記載のシステム(100)。
  23. 前記データ処理ハードウェア(510)は、オンプレミスコンピューティング環境(130)、プライベートコンピューティング環境(130)、およびパブリッククラウドベースコンピューティング環境(130)と通信するように構成される、請求項16~22のいずれか1項に記載のシステム(100)。
  24. 前記複数のリソース(140)は、仮想マシン、データベース、キー・バリューストア、またはネットワーク(120)のうちの少なくとも1つを含む、請求項16~23のいずれか1項に記載のシステム(100)。
  25. システム(100)であって、
    データ処理ハードウェア(510)と、
    前記データ処理ハードウェア(510)と通信するメモリハードウェア(520)とを備え、前記メモリハードウェア(520)は、前記データ処理ハードウェア(510)上で実行されると前記データ処理ハードウェア(510)に動作を実行させる命令を格納し、前記動作は、
    ユーザ(110)に関連付けられるリソース(140)のグループに適用されるべきリソースポリシー(222)を受けることを含み、前記リソースポリシー(222)は、前記リソース(140)のグループのうちの各リソース(140)に割り当てられる固有のユーザ既定ラベル(216)を含み、前記固有のユーザ既定ラベル(216)はキー・バリューペア(214)を含み、前記動作はさらに、
    前記固有のユーザ既定ラベル(216)を用いて、複数のリソース(140)の中から前記リソース(140)のグループを特定することを含み、前記複数のリソース(140)は、前記ユーザ(110)に関連付けられ、前記動作はさらに、
    前記リソース(140)のグループのうちの特定された各リソース(140)ごとに、前記固有のユーザ既定ラベル(216)の前記キー・バリューペア(214)を管理することにより、対応する特定されたリソース(140)に前記リソースポリシー(222)を適用することを含む、システム(100)。
  26. 前記リソースポリシー(222)は、前記固有のユーザ既定ラベル(216)の前記キー・バリューペア(214)のうちのキー(214)に対する制約をさらに含む、請求項25に記載のシステム(100)。
  27. 前記リソースポリシー(222)は、前記固有のユーザ既定ラベル(216)の前記キー・バリューペア(214)のうちの値(214)に対する制約をさらに含む、請求項25または26に記載のシステム(100)。
  28. 前記リソースポリシー(222)は、前記キー・バリューペア(214)のうちのキー(214)に対する第1のポリシー(222a)と、前記キー・バリューペア(214)のうちの値(214)に対する第2のポリシー(222b)とを含む、請求項25~27のいずれか1項に記載のシステム(100)。
  29. 前記リソースポリシー(222)は、アクセスコントロールポリシー(132ACP)、ファイアウォールポリシー、ネットワーキングポリシー、またはクォータポリシーのうちの少なくとも1つを含む、請求項25~28のいずれか1項に記載のシステム(100)。
  30. 前記複数のコンピューティングリソース(140)は、仮想マシン、データベース、キー・バリューストア、またはネットワーク(120)のうちの少なくとも1つを含む、請求項25~29のいずれか1項に記載のシステム(100)。
JP2022518383A 2019-09-23 2020-09-22 コンピュータシステムリソースの任意のグループ化 Active JP7502420B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/579,180 2019-09-23
US16/579,180 US11038762B2 (en) 2019-09-23 2019-09-23 Arbitrarily grouping computer system resources
PCT/US2020/051936 WO2021061610A1 (en) 2019-09-23 2020-09-22 Arbitrarily grouping computer system resources

Publications (2)

Publication Number Publication Date
JP2022549628A true JP2022549628A (ja) 2022-11-28
JP7502420B2 JP7502420B2 (ja) 2024-06-18

Family

ID=72896064

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022518383A Active JP7502420B2 (ja) 2019-09-23 2020-09-22 コンピュータシステムリソースの任意のグループ化

Country Status (6)

Country Link
US (4) US11038762B2 (ja)
EP (1) EP4035005A1 (ja)
JP (1) JP7502420B2 (ja)
KR (1) KR20220061244A (ja)
CN (2) CN114365131B (ja)
WO (1) WO2021061610A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114095200B (zh) * 2021-09-28 2023-12-01 阿里巴巴(中国)有限公司 资源访问权限管理方法、装置、电子设备及介质
WO2023080914A1 (en) * 2021-11-08 2023-05-11 Micro Focus Llc Configuration compliance check prior to deployment

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001142858A (ja) * 1999-09-28 2001-05-25 Internatl Business Mach Corp <Ibm> コンピュータ環境の中央処理装置を管理する方法、システム、およびプログラム製品
JP2011129117A (ja) * 2009-12-17 2011-06-30 Intel Corp サービスとしてのクラウドフェデレーション
JP2014010465A (ja) * 2012-06-27 2014-01-20 International Business Maschines Corporation 複数のストレージ・クラウドから実体ファイルを格納するためのストレージ・クラウドを選択する方法、並びにそのコンピュータ及びコンピュータ・プログラム
JP2014530415A (ja) * 2011-09-12 2014-11-17 マイクロソフト コーポレーション クラウド選択のための調整エンジン
JP2016507839A (ja) * 2013-01-22 2016-03-10 アマゾン・テクノロジーズ、インコーポレイテッド アクセス制御のための自由形式メタデータの使用
US20180088964A1 (en) * 2016-09-26 2018-03-29 Amazon Technologies, Inc. Resource configuration based on dynamic group membership
US9934269B1 (en) * 2015-03-17 2018-04-03 Amazon Technologies, Inc. Resource tagging and grouping

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9058198B2 (en) 2012-02-29 2015-06-16 Red Hat Inc. System resource sharing in a multi-tenant platform-as-a-service environment in a cloud computing system
US9047107B2 (en) * 2012-02-29 2015-06-02 Red Hat, Inc. Applying a custom security type label to multi-tenant applications of a node in a platform-as-a-service environment
US10341281B2 (en) * 2013-01-22 2019-07-02 Amazon Technologies, Inc. Access control policies associated with freeform metadata
US9912609B2 (en) * 2014-08-08 2018-03-06 Oracle International Corporation Placement policy-based allocation of computing resources
US10038722B2 (en) * 2015-09-03 2018-07-31 Vmware, Inc. Access control policy management in a cloud services environment
US10129177B2 (en) * 2016-05-23 2018-11-13 Cisco Technology, Inc. Inter-cloud broker for hybrid cloud networks

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001142858A (ja) * 1999-09-28 2001-05-25 Internatl Business Mach Corp <Ibm> コンピュータ環境の中央処理装置を管理する方法、システム、およびプログラム製品
JP2011129117A (ja) * 2009-12-17 2011-06-30 Intel Corp サービスとしてのクラウドフェデレーション
JP2014530415A (ja) * 2011-09-12 2014-11-17 マイクロソフト コーポレーション クラウド選択のための調整エンジン
JP2014010465A (ja) * 2012-06-27 2014-01-20 International Business Maschines Corporation 複数のストレージ・クラウドから実体ファイルを格納するためのストレージ・クラウドを選択する方法、並びにそのコンピュータ及びコンピュータ・プログラム
JP2016507839A (ja) * 2013-01-22 2016-03-10 アマゾン・テクノロジーズ、インコーポレイテッド アクセス制御のための自由形式メタデータの使用
US9934269B1 (en) * 2015-03-17 2018-04-03 Amazon Technologies, Inc. Resource tagging and grouping
US20180088964A1 (en) * 2016-09-26 2018-03-29 Amazon Technologies, Inc. Resource configuration based on dynamic group membership

Also Published As

Publication number Publication date
WO2021061610A1 (en) 2021-04-01
US11743126B2 (en) 2023-08-29
US20220376981A1 (en) 2022-11-24
US20210297315A1 (en) 2021-09-23
CN117194044A (zh) 2023-12-08
JP7502420B2 (ja) 2024-06-18
US20210092016A1 (en) 2021-03-25
US11438235B2 (en) 2022-09-06
US11038762B2 (en) 2021-06-15
CN114365131A (zh) 2022-04-15
KR20220061244A (ko) 2022-05-12
EP4035005A1 (en) 2022-08-03
CN114365131B (zh) 2023-10-31
US20240022475A1 (en) 2024-01-18

Similar Documents

Publication Publication Date Title
US10972506B2 (en) Policy enforcement for compute nodes
US9122552B2 (en) Hybrid cloud infrastructures
US10367824B2 (en) Policy management, enforcement, and audit for data security
US11070492B2 (en) Pooling public cloud resources from different subscriptions using reservations
WO2019005400A1 (en) CONFIGURATION OF ACCESS CONTROL MANAGER BASED ON JOURNAL FILE EXPLORATION
US11743126B2 (en) Arbitrarily grouping computer system resources
US9985973B2 (en) Context sensitive security help
US11019073B2 (en) Application-agnostic resource access control
US20200120169A1 (en) Scalable message passing architecture a cloud environment
CN111625346A (zh) 高性能计算基础设施即服务
CN113168346A (zh) 多租户环境中云缩放数据库的隔离分层运行时的智能池化
JP2021531552A (ja) ワークロード・プロビジョニングにおけるデータ・プライバシー・アウェアネス
Moravčík et al. Overview of cloud computing and portability problems
US10536510B2 (en) Subscription-agnostic deployment of workloads to a public cloud
US9231956B1 (en) Utilizing entity-generic records for determining access to assets
US20240177115A1 (en) Software Defined Community Cloud
Balasubramanian et al. A Virtual Scaffold for Storage Multi-Tenant SaaS Data Models
Khurana et al. Logical data model for cloud computing

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220722

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220722

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230518

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230627

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230919

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231212

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240130

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: 20240507

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240606