JP2017503231A - マネージドディレクトリサービスのための識別プールブリッジング - Google Patents

マネージドディレクトリサービスのための識別プールブリッジング Download PDF

Info

Publication number
JP2017503231A
JP2017503231A JP2016528218A JP2016528218A JP2017503231A JP 2017503231 A JP2017503231 A JP 2017503231A JP 2016528218 A JP2016528218 A JP 2016528218A JP 2016528218 A JP2016528218 A JP 2016528218A JP 2017503231 A JP2017503231 A JP 2017503231A
Authority
JP
Japan
Prior art keywords
service
managed directory
directory service
access
managed
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
JP2016528218A
Other languages
English (en)
Other versions
JP6163264B2 (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.)
Amazon Technologies Inc
Original Assignee
Amazon Technologies Inc
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 Amazon Technologies Inc filed Critical Amazon Technologies Inc
Publication of JP2017503231A publication Critical patent/JP2017503231A/ja
Application granted granted Critical
Publication of JP6163264B2 publication Critical patent/JP6163264B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2113Multi-level security, e.g. mandatory access control
    • 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/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/025Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Storage Device Security (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

コンピューティングリソースサービスプロバイダの顧客は、認証情報のセットを活用して、識別プールのマネージドディレクトリサービス内での作成を要求することができる。したがって、マネージドディレクトリサービスは、識別プールすることができる。顧客に、別のアカウントをこの識別プール内に作成させる代わりに、マネージドディレクトリサービスは、シャドウ管理者アカウントを識別プール内に作成することができ、それは、マネージドディレクトリサービス内の識別プール内の他のユーザとリソースとを管理するために使用され得る。マネージドディレクトリサービスは、シャドウ管理者アカウントにアクセスするための認証情報のセットを取得するために使用され得るアプリケーションプログラミングインターフェースコマンドを、さらに露出させることができる。顧客は、このコマンドを使用して、認証情報のセットを受信し、シャドウ管理者アカウントにアクセスすることができる。したがって、顧客は、マネージドディレクトリサービス内の識別プール内のユーザとリソースとを管理することができる。【選択図】図1

Description

関連出願の相互参照
本出願は、参照により、全ての目的のために、2013年11月11日に出願された、「MANAGED DIRECTORY SERVICE」という題名の、U.S.Patent Provisional Application No.61/902,790と、2013年12月5日に出願された、「IDENTITY POOL BRIDGING FOR MANAGED DIRECTORY SERVICES」という題名の、U.S.Patent Application No.14/098,298との完全な開示を組み込む。
顧客は、ディレクトリサービスを活用して、データ管理と、一般的に、さまざまなリソースへのアクセスとのためのディレクトリ(たとえば、ファイルシステム、ファイル、ユーザ、セキュリティポリシー、ネットワークリソース、アプリケーション、システムストレージ、など)を作成し、維持する。ディレクトリサービスは、顧客の事業ニーズによって、ディレクトリを、(たとえば、社内の)顧客によって運営されているデータセンタ内に、または(たとえば、社外の)遠隔ネットワーク内に、作成するように構成され得る。しかしながら、ディレクトリを、社内及び社外で維持したいと望む顧客は、多数の困難に遭遇することがある。たとえば、社内ディレクトリを活用する顧客は、別のディレクトリを社外に作成し、データを2つのディレクトリ間で同期して、同一セットのデータを維持する必要があり得る。これは、顧客に、ディレクトリの各ユーザのための複数のアカウントを維持することを要求し得る。さらに、複数のディレクトリの維持は、顧客の管理上の負担を増加させ得、それは、複数のディレクトリの維持及びセキュリティが、実行するために追加のリソースを必要とし得るからである。顧客は、コンピューティングリソースサービスプロバイダによって提供されるサービスのユーザを作成し、管理するために使用される識別プールとは別の、新しい識別プールをディレクトリサービス内に作成することを要求され得、それが問題を悪化させている。
本開示によるさまざまな実施形態を、図面を参照して説明する。
さまざまな実施形態を実装することができる環境の例示的な実施例の図である。 さまざまな実施形態を実装することができる環境の例示的な実施例の図である。 少なくとも一実施形態による、コンピュータシステムリソースがコンピュータシステムエンティティによってアクセスされ得る環境の、例示的な実施例の図である。 少なくとも一実施形態による、マネージドディレクトリサービスを備える1つまたは複数の構成要素の、例示的な実施例の図である。 少なくとも一実施形態による、認証と権限付与認証情報のために使用される、中心位置識別プールとストアとシステムポリシーとを維持するための環境の、例示的な実施例の図である。 少なくとも一実施形態による、シャドウ管理者アカウントをマネージドディレクトリサービス内に作成するためのプロセスの、例示的な実施例の図である。 少なくとも一実施形態による、マネージドディレクトリサービスへのアクセスを認証するためのプロセスの、例示的な実施例の図である。 少なくとも一実施形態による、シャドウ管理アカウントにアクセスするための認証情報のセットを要求エンティティに送信するためのプロセスの、例示的な実施例の図である。 さまざまな実施形態を実装することができる環境の図である。
以下の記述において、さまざまな実施形態を説明する。説明の目的のために、具体的な構成及び詳細が、実施形態の完全な理解を提供するために記載される。しかしながら、当業者にとっては、実施形態を具体的な詳細なしに実施することができる、ということも明白である。さらに、良く知られた特徴は、説明されている実施形態を分かりにくくしないために、省略され、または簡略化され得る。
本明細書で説明し、提案する手法は、コンピューティングリソースサービスプロバイダとマネージドディレクトリサービスとの間の、マネージドディレクトリサービス内のリソースの管理のための識別プールブリッジングに関する。一実施形態では、エンティティ(たとえば、組織)は、関連コンピューティングデバイスを通して、マネージドディレクトリサービスと通信する。通信は、サービスへの1つまたは複数の適切に構成されたアプリケーションプログラミングインターフェース(API)コールを通してなど、マネージドディレクトリサービスによって活用される1つまたは複数のプロトコルにしたがって、行われてよい。いくつかの実施例では、マネージドディレクトリサービスへの通信は、ユーザとディレクトリとを管理するための、マネージドディレクトリサービス内への新しい識別プールの作成を要求するためである。エンティティは、仮想コンピュータシステムサービス、オブジェクトベースのデータストレージサービス、データベースサービス、前述のマネージドディレクトリサービス、及び複数の他のサービスなどの、さまざまなサービスを運営するコンピューティングリソースサービスプロバイダの顧客であってよい。
さまざまな実施形態では、は、エンティティは、マネージドディレクトリサービスと通信し、新しい識別プールの作成を要求するために、認証情報のセットを活用して、コンピューティングリソースサービスプロバイダにアクセスする。たとえば、エンティティは、電子署名がコンピューティングリソースサービスプロバイダによって確認可能であるように、暗号化キーを使用して生成された電子署名を活用することができる。別の場合では、エンティティは、コンピューティングリソースサービスプロバイダによって確認可能であり得る、ユーザ名とパスワードとを活用することができる。したがって、コンピューティングリソースサービスプロバイダによって提供される識別管理サービスは、認証情報のこのセットを活用して、エンティティを特定し、コンピューティングリソースサービスプロバイダによって提供される1つまたは複数のサービスへのアクセスレベルを判断することができる。したがって、エンティティが、マネージドディレクトリサービスへのアクセスを与えられている場合、エンティティは、この新しい識別プールを作成するための要求を生成することを許可され得る。一実施形態では、エンティティは、この新しく作成された識別プールを使用して、リソースと、ユーザと、マネージドディレクトリサービス内に提供されている、1つまたは複数のディレクトリとアプリケーションとへの彼らのアクセスと、を管理することができる。
一実施形態では、顧客がマネージドディレクトリサービスを活用してこの新しい識別プールを作成すると、マネージドディレクトリサービスは、シャドウ管理者アカウントを識別プール内に作成する。シャドウ管理者アカウントは、マネージドディレクトリサービス内のディレクトリのためのアカウントであり、コンピューティングリソースサービスプロバイダ内の顧客アカウントと、シャドウ管理者アカウントにアクセスするためにその顧客が有効にした代理ユーザアカウントと、に対応することができる。このシャドウ管理者アカウントは、エンティティまたはエンティティによって定義された他の代理ユーザによって使用されて、ディレクトリ内のリソースを管理することができ、それには、マネージドディレクトリサービス内のディレクトリのユーザと、ディレクトリのユーザのグループと、これらのユーザとグループとに適応可能なポリシーと、ディレクトリを通して管理される1つまたは複数のアプリケーションと、を含むが、これらに限定されない。したがって、マネージドディレクトリサービスは、エンティティが、シャドウ管理者アカウントにアクセスするために使用され得る認証情報のセットを、新しく作成された識別プールから取得することを可能にすることができる、新しい適切に構成されたAPIコールを露出するように構成され得る。
一実施形態では、コンピューティングリソースサービスプロバイダによって運営されている識別管理サービスは、別の識別プールを維持し、それは、コンピューティングリソースサービスプロバイダによって提供される1つまたは複数のサービスを活用する無数のユーザを格納し、これらのサービスへの彼らのアクセスを管理するために使用される。したがって、この識別プールの一部でもあり得るエンティティは、識別管理サービスを活用して、どのユーザが、マネージドディレクトリサービスによって露出された新しい適切に構成されたAPIコールを活用して、このシャドウ管理者アカウントにアクセスすることを許可されているか、を特定することができる。したがって、ユーザが、適切に構成されたAPIコールを活用するためにコンピューティングリソースサービスプロバイダにアクセスして、識別プール内のシャドウ管理者アカウントにアクセスする場合、識別管理サービスは、ユーザがこのAPIコールを活用するための必要な許可を有しているかどうか、を判断することができる。ユーザがアクセスを有しない場合、識別管理サービスは、ユーザがAPIコールを活用して、新しく作成された識別プール内のシャドウ管理者アカウントにアクセスすることを防ぐことができる。
このようにして、エンティティは、マネージドディレクトリサービス内の新しく作成された識別プールにアクセスして、1人または複数のユーザと、マネージドディレクトリサービス内のディレクトリとアプリケーションとリソースとへの彼らのアクセスとを、別の管理者アカウントを新しく作成された識別プール内に明示的に作成することを要求されずに、管理することができる。加えて、本明細書で説明し提案する手法は、追加的な技術的利点をもたらす。たとえば、識別プール内のシャドウ管理者アカウントは、エンティティがマネージドディレクトリサービスを活用して識別プールの作成を要求する時に自動的に作成されるため、エンティティは、サービスへの適切に構成されたAPIコールを第1のインスタンス上で生じさせることなく、ユーザを作成し、マネージドディレクトリサービス内のアプリケーションとディレクトリとへのアクセスレベルを定義するための1つまたは複数のポリシーを有効にすることができる。
図1は、さまざまな実施形態を実施することができる環境100の、例示的な実施例を示している。環境100では、コンピューティングリソースサービスプロバイダ102は、さまざまなコンピューティングリソースサービスを、コンピューティングリソースサービスプロバイダの顧客に提供する。コンピューティングリソースサービスプロバイダ102は、さまざまなコンピューティングリソースを1人または複数の顧客のためにホストする組織であってよい。たとえば、コンピューティングリソースサービスプロバイダ102は、ハードウェアサーバ、データストレージデバイス、ネットワークデバイス、及びサーバラック、ネットワークケーブルなどの他の装置など、さまざまなコンピュータハードウェアリソースをホストするために使用される、1つまたは複数の施設を運営することができる。コンピューティングリソースサービスプロバイダ102は、そのコンピューティングハードウェアリソースを活用して、1つまたは複数のサービスを運営することができる。そのようなサービスは、顧客の物理的装置に投資する必要性を減少させ、または排除しさえもしながら、コンピューティングリソースサービスプロバイダ102の顧客がコンピューティングリソースを遠隔で管理して、顧客の事業をサポートすることを可能にするサービスを含むことができる。例示的なサービスは、さまざまなデータストレージサービス(オブジェクトベースのデータストレージサービス、アーカイバルデータストレージサービス、データベースサービス、など)と、プログラム実行サービスと、他のサービスと、を含むが、それらに限定されない。サービスは、顧客によって使用されて、ウェブサイトを運営すること、組織をサポートする企業システムを運営すること、分散計算活動及び/または他の活動などの、多種多様な活動をサポートすることができる。
したがって、図1に示す通り、環境100は顧客104を含む。顧客104は、コンピューティングリソースサービスプロバイダ102によって提供される1つまたは複数のサービスを活用して、自身の事業をサポートするために1つまたは複数のディレクトリ122を運営し、管理することができる、個人、組織、または自動プロセスであってよい。これらのディレクトリ122を運営し、管理するために、たとえば、顧客104は、マネージドディレクトリサービス116と通信して、識別プール118をマネージドディレクトリサービス116内に作成することを要求され得る。この識別プール116は、マネージドディレクトリサービス116内のさまざまなユーザとディレクトリ122とを管理することと、これらのユーザに適用可能な1つまたは複数のディレクトリポリシー124を定義することと、のために使用され得る。
識別プール118をマネージドディレクトリサービス116内に作成し、管理するために、顧客104は、顧客コンピュータシステムデバイスを通して、認証情報のセットを活用して、コンピューティングリソースサービスプロバイダ102とマネージドディレクトリサービス116とにアクセスすることができる。したがって、コンピューティングリソースサービスプロバイダ102とその関連サービスとへのアクセスを要求するユーザの識別を確認するように構成された識別管理サービス106は、認証情報を審査し、顧客104が、識別管理サービス106によって管理されている識別プール108内のプリンシパル110であるかどうか、を判断することができる。加えて、識別管理サービス106は、プリンシパル110を特定すると、どのインフラストラクチャポリシー112がこのプリンシパル110に適用されるか、を判断することができる。たとえば、プリンシパル110がマネージドディレクトリサービス116にアクセスする権限を与えられていないと述べて、インフラストラクチャポリシーが定義されている場合、識別管理サービス106は、プリンシパル110からの、マネージドディレクトリサービス116にアクセスするための要求を、拒否することができる。インフラストラクチャポリシー112は、また、コンピューティングリソースサービスプロバイダ102によって提供される1つまたは複数の他のサービス114に対しても適用可能である、と定義され得る。
以下でより詳細に説明する通り、顧客104は、認証情報のセットを活用して、コンピューティングリソースサービスプロバイダ102にアクセスし、要求を、1つまたは複数の適切に構成されたAPIコールなどを通して、マネージドディレクトリサービス118に送信して、新しい識別プール118を作成することができる。上述した通り、この新しい識別プール118を使用して、リソースを管理し、マネージドディレクトリサービス116内の1人または複数のユーザを管理し、これらのユーザに適用可能であり得る1つまたは複数のディレクトリポリシー124を定義することができる。これらのディレクトリポリシー124を使用して、マネージドディレクトリサービス116内の1つまたは複数のディレクトリ122と、これらの1つまたは複数のディレクトリ122内の任意のアプリケーションとへの、ユーザのアクセスを定義することができる。マネージドディレクトリサービス116は、シャドウ管理者アカウント120をこの新しく作成された識別プール118内に作成して、顧客104が識別プール118にアクセスすることを可能にするように構成され得る。
したがって、マネージドディレクトリサービス116は、顧客104によって使用され得る、新しい適切に構成されたAPIコール(たとえば、図1に例示した「GetDirectoryToken()」)を、プリンシパル110を通して露出させて、シャドウ管理者アカウント120にアクセスするために使用され得る認証情報のセットを取得するように構成され得る。顧客104は、いつでも、サービスへのこの適切に構成されたAPIコールなどを通して、認証情報のこのセットを要求して、マネージドディレクトリサービス116内のシャドウ管理者アカウント120にアクセスすることができる。加えて、顧客104は、識別管理サービス106を活用して、この適切に構成されたAPIコール、したがって、シャドウ管理者アカウント120を使用することを許可され得る、1つまたは複数の代理ユーザを、新しいインフラストラクチャポリシー112の作成を通して特定することができる。一実施形態では、マネージドディレクトリサービス116は、新しい識別プール118の作成を要求している顧客104が、認証情報の追加のセットを要求することなく、シャドウ管理者アカウント120にアクセスすることを可能にするように構成されている。これは、顧客104がシャドウ管理者アカウント120を活用して、ディレクトリ122内のリソースを管理することを可能にすることができ、リソースは、ディレクトリ122のユーザと、ディレクトリ122のユーザのグループと、これらのユーザにすぐに適用可能なディレクトリポリシー124と、を含む。
図2は、本開示のさまざまな実施形態を実施することができる環境200の例示的な実施例を示している。環境200では、コンピューティングリソースサービスプロバイダ206は、さまざまなサービスを顧客202に提供することができる。顧客202は、コンピューティングリソースサービスプロバイダ206によって提供されるさまざまなサービスを活用して、さまざまなユーザがマネージドディレクトリ208内の1つまたは複数のディレクトリにアクセスすることを可能にする識別プールを、遠隔で生成し、維持することができる組織であってよい。図2に例示した通り、顧客202は、コンピューティングリソースサービスプロバイダ206と、インターネットなどの1つまたは複数の通信ネットワーク204を通して通信することができる。顧客202からコンピューティングリソースサービスプロバイダ206へのいくつかの通信は、コンピューティングリソースサービスプロバイダ206に、本明細書で説明したさまざまな手法またはその変形物にしたがって動作することを行わせることができる。
上述の通り、コンピューティングリソースサービスプロバイダ206は、さまざまなコンピューティングリソースサービスを、その顧客に提供することができる。たとえば、この特定の例示的な実施例では、コンピューティングリソースサービスプロバイダ206は、少なくとも7種類のサービスを提供する。コンピューティングリソースサービスプロバイダによって提供されるサービスは、本実施例では、マネージドディレクトリサービス208と、識別管理サービス210と、オブジェクトベースのデータストレージサービス212と、ブロックレベルのデータストレージサービス214と、データベースサービス216と、仮想コンピュータシステムサービス218と、ドメイン名システムサービス220と、1つまたは複数の他のサービス222と、を含むが、本開示の全ての実施形態が、全てのこのようなサービスを含むわけではなく、追加的なサービスを、本明細書で明示的に説明したサービスに加えて、またはその代替物として、提供することができる。
マネージドディレクトリサービス208は、さまざまなサービスを提供して、コンピュータシステム及び/またはコンピュータシステムクライアントデバイスが、顧客ディレクトリにアクセスすることを可能にすることができ、さまざまなサービスは、認証サービスと権限付与サービスとディレクトリサービスとを含むが、これらに限定されない。たとえば、マネージドディレクトリサービス208は、認証サービスを提供することができ、認証サービスは、ユーザ、コンピュータシステム、プロセス、自動プロセス、または他のそのようなエンティティの認証情報を認証して、そのエンティティが、マネージドディレクトリサービス208及び/またはマネージドディレクトリサービス208に関連する顧客ディレクトリにアクセスする権限を与えられているかどうかを、少なくとも判断することができる。いくつかの実施形態では、認証情報は、マネージドディレクトリサービス208自体によって認証され得、または認証情報は、マネージドディレクトリサービス208の制御下のプロセス、プログラム、またはサービスによって認証され得、または認証情報は、マネージドディレクトリサービス208が通信し得るプロセス、プログラム、またはサービスによって認証され得、または認証情報は、これら及び/または他のそのようなサービスまたはエンティティの組み合わせによって認証され得る。
マネージドディレクトリサービス208は、また、権限付与サービスを提供することができ、権限付与サービスは、ユーザ、コンピュータシステム、プロセス、自動プロセス、または他のそのようなエンティティに権限を与えて、1つまたは複数の可能性のあるアクションのうちのどのアクションを、そのエンティティが実行することができるかを、少なくとも判断することができる。エンティティが、実行する権限を与えられるかもしれず、与えられないかもしれないアクションの実施例は、リソースを顧客ディレクトリ上に作成すること、リソースを顧客ディレクトリ上で破棄すること、顧客ディレクトリ上のリソースに結合すること、顧客ディレクトリ上のリソースから分離すること、顧客ディレクトリ上のリソースへのアクセスリンクを提供すること、顧客ディレクトリ上のリソースへのアクセスリンクを再要求すること、顧客ディレクトリ上のリソースからの読み出しを可能にすること、顧客ディレクトリ上のリソースへの書き込みを可能にすること、及び/または他のそのようなアクションを含むが、これらに限定されない。
マネージドディレクトリサービス208は、また、ディレクトリサービスを提供することができ、ディレクトリサービスは、権限付与認証情報及び/またはポリシーにしたがって、認証されたエンティティに、顧客ディレクトリへのアクセスを提供することができる。たとえば、コンピュータシステムエンティティが、顧客ディレクトリ上の特定のデータストアを読み書きする権限を与えられ得る一実施形態では、そうする能力は、ディレクトリサービスによって提供され得る。ディレクトリサービスは、顧客ディレクトリへのアクセスを、統一資源識別子(URI)オブジェクトまたはいくつかの他のそのようなリンク機構などによって、顧客ディレクトリの場所へのリンクを提供することによって、提供することができる。考慮され得る通り、URIは、コンピュータシステムクライアントデバイスによって、またはデータセンタで動いているプロセスによって、またはデータセンタに接続されたコンピュータシステム上で動いているプロセスによって、またはマネージドディレクトリサービスによって、またはこれら及び/または他のそのようなコンピュータシステムエンティティによって、提供され得る。
上述の通り、顧客は、マネージドディレクトリサービス208を活用して、識別プールを作成し、管理することができ、識別プールは、マネージドディレクトリサービス208を活用して1つまたは複数のディレクトリにアクセスし得る、さまざまなユーザを格納するために使用され得る。加えて、顧客は、この識別プールを活用して、これらの1つまたは複数のディレクトリへの各ユーザのアクセスをさらに管理することができる。識別プールの作成後、マネージドディレクトリサービスは、シャドウ管理者アカウントを識別プール内に作成することができ、顧客が、認証情報のセットを取得するために、顧客によって使用され得る新しい適切に構成されたAPIコールを活用して、このシャドウ管理者アカウントにアクセスすることを可能にすることができる。シャドウ管理者アカウントを使用して、ディレクトリとディレクトリ内のアプリケーションとへの各ユーザのアクセスレベルを定義するために、1人または複数のユーザプロファイルをさらに管理することができる。
識別管理サービス210は、さまざまなサービスを提供して、顧客が、コンピューティングリソースサービスプロバイダ206によって提供される、図2に例示したものなどの他のサービスへのアクセスレベルを定義することを可能にすることができる。したがって、顧客202は、識別管理サービス210にアクセスして、コンピューティングリソースサービスプロバイダ206によって提供されるサービスを活用し得る、1人または複数のユーザとグループとを作成し、管理することができる。顧客202は、識別管理サービス210を活用して、各ユーザ及び/またはグループに対するインフラストラクチャポリシーのセットを定義し、コンピューティングリソースサービスプロバイダ206によって提供されるサービスにアクセスするための彼らの許可を、許可または拒否することができる。
上述の通り、顧客202は、認証情報のセットを活用して、コンピューティングリソースサービスプロバイダ206にアクセスすることができる。識別管理サービス210は、顧客202の識別を確認し、顧客202が、識別管理サービス210内の識別プールにおけるプリンシパルとして動作することを可能にするように構成され得る。したがって、顧客202は、マネージドディレクトリサービス208にアクセスし、新しい識別プールの作成を要求することができる。以下でより詳細に説明する通り、いったんマネージドディレクトリサービス208内に新しく作成された識別プールが利用可能になると、顧客202は、識別管理サービス210を活用して、コンピューティングリソースサービスプロバイダ206の1人または複数のユーザを特定することができ、コンピューティングリソースサービスプロバイダ206の1人または複数のユーザは、マネージドディレクトリサービス208によって提供された新しい適切に構成されたAPIコールを活用して、シャドウ管理者アカウントにアクセスすることを許され得る。
オブジェクトベースのデータストレージサービス212は、顧客202のためのデータを格納するように集合的に動作する、コンピューティングリソースの集合を備えることができる。オブジェクトベースのデータストレージサービス212内に格納されたデータは、データオブジェクトにまとめられ得る。データオブジェクトは、おそらく、大きさに関する特定の制約を除き、任意の大きさを有することができる。したがって、オブジェクトベースのデータストレージサービス212は、さまざまな大きさの、多数のデータオブジェクトを格納することができる。オブジェクトベースのデータストレージサービス212は、データオブジェクトをデータオブジェクトの識別子に関連付けるキー値ストアとして動作することができ、データオブジェクトの識別子は、データストレージサービス212によって格納されているデータオブジェクトを読み出し、またはそれに関連する他の動作を実行するために、顧客によって使用され得る。データストレージサービスへのアクセスは、適切に構成されたAPIコールを通してであってよい。
ブロックレベルのデータストレージサービス214は、顧客のためのデータを格納するように集合的に動作する、コンピューティングリソースの集合を備えることができる。たとえば、ブロックレベルのデータストレージシステムは、仮想マシンインスタンスと共に使用するための、ブロックレベルのデータストレージボリュームを提供するように構成され得る。顧客202は、ブロックレベルのデータストレージサービス214と相互作用して、ブロックレベルのデータストレージボリュームをプロビジョニングすることができ、ブロックレベルのデータストレージボリュームは、今度は、ストレージデバイス(たとえば、ハードドライブ)として、仮想マシンインスタンス上にマウントされ得る。ストレージボリュームは、ブロックレベルの顧客インターフェースを有する、未加工で、未フォーマットのブロックストレージデバイスのように振る舞うように構成され得る。したがって、顧客は、サービスへの適切に構成されたAPIコールを通して、ファイルシステムをブロックレベルのデータストレージボリュームの一番上に作成し、またはボリュームを、ブロックレベルのストレージデバイス(たとえば、ハードドライブ)として活用することができる。
データベースサービス216は、1人または複数の顧客のための1つまたは複数のデータベースを動かすように集合的に動作する、コンピューティングリソースの集合であってよい。コンピューティングリソースサービスプロバイダ206の顧客202は、データベースサービス216からのデータベースを、適切に構成されたAPIコールを活用することによって、運営し、管理することができる。これは、今度は、顧客202がデータベース内の動作を維持し、潜在的に大きさを変えることを可能にする。
仮想コンピュータシステムサービス218は、仮想マシンインスタンスを、仮想コンピューティングシステム上に、コンピューティングリソースサービスプロバイダ206の顧客202のためにインスタンス化するように構成された、コンピューティングリソースの集合であってよい。コンピューティングリソースサービスプロバイダ206の顧客202は、仮想コンピュータシステムサービス218と相互作用して、コンピューティングリソースサービスプロバイダによってホストされ、運営されている物理コンピューティングデバイス上にインスタンス化された仮想コンピュータシステムを、プロビジョニングし、運営することができる。仮想コンピュータシステムは、ウェブサイトをサポートするサーバとして動作するためなど、さまざまな目的のために使用され得る。仮想コンピュータシステムのための他のアプリケーションは、データベースアプリケーション、電子商取引アプリケーション、ビジネスアプリケーション、及び/または他のアプリケーションをサポートするためであってよい。
ドメイン名システム(DNS)サービス220は、顧客202に、エンドユーザを1つまたは複数の通信ネットワークアプリケーションに導く方法を与えるように設計され得る。たとえば、DNSサービス220は、統一資源位置指定子(URL)などの人間が読むことができる名前を、コンピュータシステムがインターネット上で互いに接続するために使用することができる、数字の、インターネットプロトコル(IP)アドレスに変換するように構成され得る。したがって、DNSサービス220は、コンピューティングリソースサービスプロバイダ206によって提供される1つまたは複数のサービスにアクセスするための要求を、データゾーン内で動作しているインフラストラクチャに接続するように構成され得る。DNSサービス220は、加えて、コンピューティングリソースサービスプロバイダ206の顧客202を、別のプロバイダによって運営されている別のコンピューティングシステムなどの、データゾーンの外部のインフラストラクチャに導くように構成され得る。
コンピューティングリソースサービスプロバイダ206は、加えて、1つまたは複数の他のサービス222を、その顧客202のニーズに基づいて維持することができる。たとえば、コンピューティングリソースサービスプロバイダ206は、アカウントサービスを維持することができ、アカウントサービスは、コンピューティングリソースサービスプロバイダ206の各顧客202のための顧客アカウント情報を維持するように集合的に動作する、コンピューティングリソースの集合を備えることができる。アカウントサービスは、たとえば、顧客名と、住所と、電話番号と、請求詳細と、コンピューティングリソースサービスプロバイダの各顧客の他の個人識別情報と、を含むことができる。他のサービスは、ロードバランシングサービス、他のサービスを管理するサービス、及び/または他のサービスを含むが、これらに限定されない。
上述の通り、コンピューティングリソースサービスプロバイダの顧客は、マネージドディレクトリサービスを活用して、マネージドディレクトリサービス内での識別プールの作成を要求し、1人または複数のユーザと、マネージドディレクトリサービス内のディレクトリ及びこれらのディレクトリ内のアプリケーションと、への彼らのアクセスとを管理することができる。したがって、図3は、少なくとも一実施形態による、分散コンピュータシステム環境及び/または仮想コンピュータシステム環境上のコンピュータシステムディレクトリリソースと、その上で動いている関連コードと、にアクセスするための環境300を示しており、コンピュータシステムディレクトリリソースには、ディレクトリサービスなどのコンピュータシステムサービスと、ディレクトリサービスに関連する、ユーザリソース、ポリシーリソース、ネットワークリソース、及び/またはストレージリソースなどのリソースと、が含まれるが、これらに限定されない。コンピュータシステムエンティティ、ユーザ、またはプロセス302は、コンピュータシステムに、コンピュータシステムクライアントデバイス304を通して接続し、1つまたは複数のサービス326へのアクセスを、接続306を介して要求することができる。サービスへのアクセスを要求するためのコマンドまたは複数のコマンドは、外部のコンピュータシステム及び/またはサーバから生じることができ、または遠隔ネットワークの場所上のエンティティ、ユーザ、またはプロセスから生じることができ、またはコンピュータシステムから生じることができ、またはコンピュータシステムクライアントデバイスのユーザから生じることができ、またはこれら及び/または他のそのようなオブジェクトの組み合わせの結果として生じることができる。サービスへのアクセスを要求するためのコマンドまたは複数のコマンドは、いくつかの実施形態では、特権ユーザによって、または非特権ユーザによって、または自立型プロセスによって、または警告または条件の結果として、またはこれら及び/または他の方法の組み合わせによって、発行され得る。
コンピュータシステムクライアントデバイスは、サービスへのアクセスを、ネットワークに接続された他のサーバなどの、それに関連した1つまたは複数のネットワーク316及び/またはエンティティを直接的または間接的のいずれかで介して、要求することができる。コンピュータシステムクライアントデバイスは、コンピュータシステムにネットワークを介して接続することができる任意のデバイスを含むことができ、デバイスには、少なくとも、サーバ、ノートパソコン、スマートフォンまたはタブレットなどのモバイルデバイス、スマートウォッチ、スマートテレビなどの他のスマートデバイス、セットトップボックス、ビデオゲーム機、他のそのようなネットワーク使用可能なスマートデバイス、分散コンピューティングシステム及びその構成要素、ゲストコンピュータシステムまたは仮想マシンなどの抽象化構成要素、及び/または他の種類のコンピューティングデバイス及び/または構成要素を含む。ネットワークは、たとえば、ローカルネットワーク、内部ネットワーク、インターネットなどの公衆ネットワーク、広域ネットワーク、無線ネットワーク、モバイルネットワーク、衛星ネットワーク、複数のネットワークノードを有する分散コンピューティングシステム、及び/または同様なものを含むことができる。ネットワークは、また、以下に挙げるものなどのさまざまなプロトコルに従って動作することができ、プロトコルは、Bluetooth(登録商標)、WiFi(登録商標)、セルラーネットワークプロトコル、衛星ネットワークプロトコル、及び/または他のものである。
いくつかの実施形態では、コンピュータシステムは、1つまたは複数のローカルコンピュータシステムリソース308を含むことができ、ローカルコンピュータシステムリソース308は、顧客の施設に少なくとも部分的に配置され得、また、ファイル及び/または他のコンピュータシステムリソースをそこに格納することができ、ファイル及び/または他のコンピュータシステムリソースは、ディレクトリ、アプリケーション、データ、データベース、他のコンピュータシステムリソースへのリンク、システムドライバ、コンピュータオペレーティングシステム、仮想マシン、及び/または他のそのようなリソースを含むが、それらに限定されない。いくつかの実施形態では、ローカルコンピュータシステムリソースは、ローカルファイルシステムリソースであってよく、システムランダムアクセスメモリ(RAM)、ディスクドライブ、半導体ドライブ、取り外し可能ドライブ、またはこれら及び/または他のそのようなストレージデバイスの組み合わせなどの、さまざまなストレージデバイス上に格納され得る。いくつかの実施形態では、ローカルコンピュータシステムリソースは、コンピュータシステムクライアントデバイスによって、たとえば、本明細書で説明するネットワーク接続などの1つまたは複数の接続を介してアクセスされ得る、データセンタ(一緒に配置され得る、複数のコンピュータシステムリソース、サービス、及び/またはストレージデバイス)内に、少なくとも部分的に配置され得る。コンピュータシステムリソース及び/またはデータセンタは、ローカルに、またはローカルと遠隔とを組み合わせて、配置され得る。たとえば、いくつかの実施形態では、ファイルシステム及び/またはディレクトリは、ローカルのデータセンタ内に配置されたディスク上に配置され得、ファイルシステム及び/またはディレクトリの内容は、また、遠隔データセンタ内に配置されたディスクに複製され得る。いくつかの他の実施形態では、ファイルシステム及び/またはディレクトリは、その内容の少なくとも一部を、ローカルであり得る1つのデータセンタ内に配置されて、また、その内容の他の部分を、ローカルまたは遠隔であり得る1つまたは複数の他のデータセンタ内に配置されて、有することができる。ストレージデバイスは、本明細書で説明するものなどの物理デバイス、及び/または、そのような物理デバイスの仮想表示を含むことができる。たとえば、ファイルシステム及び/またはディレクトリストレージデバイスは、ある程度の量の物理メモリを含むことができ、そのうちの一部は、仮想ディスクドライブ上に作成されたファイルシステムを有する仮想ディスクドライブとして、ストレージ専用にされる。他のそのようなローカルストレージデバイスを、本開示の範囲内としてみなすことができる。
いくつかの実施形態では、サービス326は、本明細書で説明するものなどの、1つまたは複数のコンピュータシステムディレクトリリソースにアクセスする必要があり得る。サービス326は、いくつかの実施形態では、さまざまな他のコンピュータシステムエンティティを含むことができ、それには、ユーザ、他のコンピュータシステム、プロセス及び/または自動プロセス、及び/または他のそのようなコンピュータシステムエンティティが含まれるが、これらに限定されない。システムディレクトリリソースへのアクセス314は、いくつかの実施形態では、1つまたは複数のシステムリソースへのアクセスを提供することができるマネージドディレクトリサービス318などのサービスによって、提供され得る。マネージドディレクトリサービスは、さまざまなサービスを提供して、コンピュータシステム及び/またはコンピュータシステムクライアントデバイスがシステムリソースにアクセスすることを可能にすることができ、サービスは、認証サービス320と権限付与サービス322とディレクトリサービス324とを含むが、これらに限定されない。
たとえば、マネージドディレクトリサービスは、認証サービス320を提供することができ、認証サービス320は、ユーザ、コンピュータシステム、プロセス、自動プロセス、または他のそのようなエンティティの認証情報を認証して、そのエンティティが、マネージドディレクトリサービス及び/またはマネージドディレクトリサービスに関連するシステムリソースにアクセスする権限を与えられているかどうかを、少なくとも判断することができる。いくつかの実施形態では、認証情報は、マネージドディレクトリサービス自体によって認証され得、または認証情報は、マネージドディレクトリサービスの制御下のプロセス、プログラム、またはサービスによって認証され得、または認証情報は、マネージドディレクトリサービスが通信することができるプロセス、プログラム、またはサービスによって認証され得、または認証情報は、これら及び/または他のそのようなサービスまたはエンティティの組み合わせによって認証され得る。
マネージドディレクトリサービスは、また、権限付与サービス322を提供することができ、権限付与サービス322は、ユーザ、コンピュータシステム、プロセス、自動プロセス、または他のそのようなエンティティに権限を与えて、1つまたは複数の可能性のあるアクションのうちのどのアクションをそのエンティティが実行することができるかを、少なくとも判断することができる。たとえば、ファイルシステムリソースなどのコンピュータシステムリソースの場合では、エンティティが実行する権限を与えられるかもしれず、与えられないかもしれないアクションは、ファイルシステムをファイルシステムリソース上に作成すること、ファイルシステムをファイルシステムリソース上で破棄すること、フィルシステムリソース上のファイルシステムに結合すること、ファイルシステムリソース上のファイルシステムから切り離すこと、ファイルシステムリソース上のファイルシステムへのアクセスリンクを提供すること、ファイルシステムリソース上のファイルシステムへのアクセスリンクを再要求すること、ファイルシステムリソース上のファイルシステムからの読み出しを可能にすること、ファイルシステムリソース上のファイルシステムへの書き込みを可能にすること、及び/または他のそのようなファイルシステムリソースアクションを含むが、これらに限定されない。
システムリソースに対するアクションは、ディレクトリ、ファイル、アプリケーション、データ、データベース、他のリソースへのリンク、システムドライバ、オペレーティングシステム、仮想マシン、及び/またはそれらの上の他のそのようなシステムリソースオブジェクトに対するアクションを含むが、それらに限定されず、本明細書で述べるアクションなどのアクションを含むことができる。システムリソースを開始し、停止し、再要求し、破棄し、及び/またはそうでなければ管理するためのアクション、及び他のそのようなアクションは、また、利用可能なアクションの中に含まれ得る。アクションを実行する権限は、たとえば、特定のエンティティに関連する認証情報及び/またはポリシーのセットを維持し、認証情報及び/またはポリシーのセットに少なくとも部分的に基づいて、エンティティがどのアクションを実行する権限を与えられているかを判断することができるシステムなどの、認証情報システムまたはポリシーシステムなどのエンティティによって管理され得る。エンティティが実行する権限を与えられ得るアクションは、静的であり得、または、多数の要因に従って変化し得、要因には、時刻、認証情報の種類、システムポリシー、アクセスされているオブジェクトの性質、種類、または場所、またはこれら及び/または他のそのような権限付与要因の組み合わせを含むが、それらに限定されない。たとえば、コンピュータシステムエンティティは、ファイルシステム上の特定のファイルを読み出すことと、ファイルシステム上の特定の他のファイルを読み書きすることと、ファイルシステム上で特定の他のファイルを追加、削除すること、のみの権限を与えられ得る。異なるコンピュータシステムエンティティは、任意のアクションをファイルシステム上で実行する権限を与えられ得るが、それは、それらのアクションが、特定の場所で、特定の時間に生じた場合のみである。1つまたは複数のプロセスは、たとえば、システムログなどの、ファイルシステム上のファイルに書き込む権限のみを与えられ得、一方で、他のプロセスは、ファイルから読み出す権限のみを与えられ得る。考慮され得る通り、これらは例示的な実施例である。他の種類の動作は、マネージドディレクトリサービス権限付与システムによって権限を与えられ得、そのような他の種類の動作は、また、本開示の範囲内であるとみなされる。
マネージドディレクトリサービスは、また、ディレクトリサービス324を提供することができ、ディレクトリサービス324は、権限付与認証情報及び/またはポリシーに従って、コンピュータシステムリソースへの認証されたエンティティアクセス314を提供することができる。たとえば、コンピュータシステムエンティティが、ファイルシステムリソースなどのコンピュータシステムリソース上の特定のデータストアを読み書きする権限を与えられ得る一実施形態では、そうする能力は、ディレクトリサービスによって提供され得る。ディレクトリサービスは、ファイルシステムリソースへのアクセスを、URIオブジェクトまたはいくつかの他のそのようなリンク機構によってなど、ファイルシステムリソースの場所へのリンクを提供することによって、提供することができる。URIは、コンピュータシステムクライアントデバイスによって、またはデータセンタで動いているプロセスによって、またはデータセンタに接続されたコンピュータシステム上で動いているプロセスによって、またはマネージドディレクトリサービスによって、またはこれら及び/または他のそのようなコンピュータシステムエンティティの組み合わせによって、提供され得る。
いくつかの実施形態では、コンピュータシステムリソースへのアクセスは、要求エンティティにはアクセスが見えない方法で提供され得る。たとえば、アクセス314は、要求エンティティに、URIまたはローカルファイルシステム308上の場所310への他のそのようなリンクとして提供され得る。コンピュータシステムリソース上の場所は、URIに、コンピュータシステム上で動いている1つまたは複数のプロセスによって変換312され得る。コンピュータシステムリソースへのアクセスを要求したサービスまたはエンティティ326は、受信URI328を使用して、コンピュータシステムリソースに、コンピュータシステムリソースの場所に依存する構成を必要とせずにアクセスすることができ、いくつかの実施形態では、URIを使用してコンピュータシステムリソースにリンクし、あたかもサービスまたはエンティティ326がコンピュータシステムリソースに直接接続されているかのように動作することができる。たとえば、サービスまたはエンティティに対してローカルな場所に配置されているように、サービスまたはエンティティにとって見え得るファイルにデータのセットを書き込むように見える動作は、データをネットワークパケットに実際にパッケージ化することができ、その後、そのパケットを、ネットワーク316上で、アクセスリンク314を介して伝達して、ローカルファイルシステム308上に配置されたファイルに実際に書き込むことができる。考慮され得る通り、これらは例示的な実施例であり、マネージドディレクトリサービスによって実行され得る他の種類の動作も、また、本開示の範囲内とみなされ得る。
上述の通り、顧客は、識別プールをマネージドディレクトリサービス内に作成し、1人または複数のユーザと、マネージドディレクトリサービス内のさまざまなディレクトリ及びアプリケーションと、への彼らのアクセスとを管理するために、コンピューティングリソースサービスプロバイダとマネージドディレクトリサービスとにアクセスするための認証情報のセットを使用することができる。したがって、図4は、少なくとも一実施形態による、コンピューティングリソースサービスプロバイダ402によって提供される、マネージドディレクトリサービス404のさまざまな構成要素を含む環境400の、例示的な実施例を示している。マネージドディレクトリサービス404は、適切な許可を与えられている顧客とユーザとに、識別管理サービスを通して、顧客または代理ユーザがマネージドディレクトリサービス404にアクセスすることを可能にするインターフェース406を提供することができる。顧客または代理ユーザは、インターフェース406を、インターネットなどの1つまたは複数の通信ネットワークを通して活用することができる。インターフェース406は、顧客または代理ユーザがマネージドディレクトリサービス404にアクセスするための権限を有することを保証する、特定のセキュリティ予防手段を備えることができる。たとえば、マネージドディレクトリサービス404にアクセスするために、顧客は、ユーザ名と、対応するパスワードまたは暗号化キーとを、インターフェース406を使用する時に提供する必要があり得る。加えて、インターフェース406に提出される要求(たとえば、APIコール)は、電子署名が、(図示しない)権限付与システムによってなど、マネージドディレクトリサービス404によって確認可能であるように、暗号化キーを使用して生成した電子署名を要求することができる。
インターフェース406を通して、顧客または代理ユーザは、ディレクトリ構造を見ることができ得、ディレクトリ構造は、ディレクトリ内の全ての利用可能なコンピュータと、ディレクトリにアクセスする権限を与えられているユーザと、のリストを含む。したがって、顧客または代理ユーザは、インターフェース406を使用して、識別プール408にアクセスし、1人または複数のユーザを作成し、管理し、ユーザ特性(たとえば、名及び苗字、位置、電話番号、など)を閲覧し、コンピューティングリソースサービスプロバイダ402によって提供される1つまたは複数のサービス414へのアクセスレベルを判断するために使用され得る、1つまたは複数のディレクトリポリシーを定義することができる。加えて、顧客または代理ユーザは、識別プール408にアクセスして、マネージドディレクトリサービス404によって管理されている1つまたは複数のディレクトリによって影響を受ける、1つまたは複数のディレクトリまたはアプリケーション412への各ユーザのアクセスを、さらに管理することができる。たとえば、顧客または代理ユーザは、識別プール408にアクセスして、ユーザプロファイル内のポリシー生成器にアクセスし、コンピューティングリソースサービスプロバイダ402によって提供されるサービス414へのユーザのアクセスレベルを定義するための、1つまたは複数のポリシーを定義することができる。したがって、いったん顧客または代理ユーザが、適用可能なユーザポリシーをポリシー生成器を通して定義すると、顧客または代理ユーザは、適用されたポリシーを、ユーザプロファイル内で見ることができ得る。加えて、ポリシー生成器は、1つまたは複数の実行可能命令をポリシー管理サブシステム410に送信することができ、1つまたは複数の実行可能命令は、ポリシー管理サブシステム410に、ユーザ固有のコンピューティングリソースサービスプロバイダインターフェースのためのURIを生成させることができる。このコンピューティングリソースサービスプロバイダインターフェースは、ユーザが、コンピューティングリソースサービスプロバイダ402によって提供される1つまたは複数のサービス414に、ディレクトリ内からアクセスすることを可能にすることができる。
一実施形態では、顧客または代理ユーザは、マネージドディレクトリサービス404にアクセスし、新しい識別プール408の作成を要求するために、認証情報の第1のセットを活用して、コンピューティングリソースサービスプロバイダ402にアクセスすることができる。顧客または代理ユーザは、マネージドディレクトリサービス404にアクセスする許可を有する、識別管理サービス内の識別プール内のプリンシパルであってよい。したがって、顧客または代理ユーザは、コンピューティングリソースサービスプロバイダ402のインターフェースを活用して、識別プール408のマネージドディレクトリサービス404内での作成を要求することができる。マネージドディレクトリサービス404は、要求に応答して、識別プール408を、要求に少なくとも部分的に基づいて作成し、識別プール408内に、顧客または代理ユーザがディレクトリ内のリソース(たとえば、ディレクトリ内のユーザ、ディレクトリマネージドディレクトリサービス404内のアプリケーション412と他のディレクトリとにアクセスするためのポリシー、コンピューティングリソースサービスプロバイダ402によって提供される他のサービス414)を管理するために使用し得る、シャドウ管理者アカウントを作成することができる。
マネージドディレクトリサービス404は、適切に構成されたAPIコール(たとえば、「GetDirectoryToken()」)をコンピューティングリソースサービスプロバイダ402に露出させて、顧客または代理ユーザが、シャドウ管理者アカウントにアクセスするための認証情報のセットを取得することを可能にするように構成され得る。したがって、顧客または代理ユーザは、このAPIコールをコンピューティングリソースサービスプロバイダ402のインターフェース内で活用して、マネージドディレクトリサービス404にシャドウ管理者としてアクセスするための認証情報のセットを取得することができる。したがって、顧客または代理ユーザは、マネージドディレクトリサービス404のインターフェース406にアクセスし、マネージドディレクトリサービス404内のディレクトリ及びアプリケーション412と、識別プール408とにアクセスするための認証情報のセットを活用して、これらのディレクトリ及びアプリケーション412と、コンピューティングリソースサービスプロバイダ402によって提供される他のサービス414とへの、他のユーザのアクセスを管理することができる。
図5は、少なくとも一実施形態による、本明細書で説明する認証と権限付与認証情報とのために使用される、中心位置識別プールとストアとシステムポリシーとを維持するための例示的な環境500を示している。管理者502は、システムアクセスデータ504のセットを維持することができ、システムアクセスデータ504のセットは、いくつかの実施形態では、顧客の施設上に配置され得る1つまたは複数のローカルストレージの場所内に配置され得、またはいくつかの実施形態では、コンピュータサービスリソース内に配置され得る1つまたは複数の遠隔ストレージの場所内に配置され得、またはいくつかの実施形態では、ローカルと遠隔とのストレージの場所の組み合わせ内に配置され得るストレージの場所内に配置され得る。いくつかの実施形態では、システムアクセスデータは、識別プール506を含むことができ、識別プール506は、ユーザ名、ユーザパスワード、ユーザ経歴データ、及び/または他のそのようなユーザプロファイル情報を含む、1人または複数のユーザプロファイルを備えることができる。識別プール506は、1つまたは複数のシステムによって使用されて、少なくとも一実施形態にしたがって本明細書で説明した認証サービスなどの、認証サービスを提供することができる。いくつかの実施形態では、システムアクセスデータ504は、1つまたは複数のストア508を備えることができ、ストア508は、1つまたは複数のコンピュータシステムリソースへの参照を含むことができる。いくつかの実施形態では、システムアクセスデータ504は、1つまたは複数のポリシー510を備えることができ、ポリシー510は、たとえば、システムサービス、ファイルシステム、ディレクトリ、マシン、仮想マシン、アプリケーション、文書、及び/または他のそのようなシステムリソースなどの、システムリソースへのアクセスを許可し、却下し、及び/または制限する、1つまたは複数のポリシーステートメントを含むことができる。ポリシーステートメントは、システムリソースへのアクセスを、1人または複数のユーザプロファイルの内容、ユーザプロファイルの種類、要求サービス、要求サービスの種類、要求サービスの場所、時刻、ユーザ、クライアント、顧客、要求の事業価値、及び/または他のそのような事業価値、これら及び/または他のそのような要因の組み合わせなどの要因に基づいて、許可し、拒否し、及び/または制限することができる。
上述の通り、新しい識別プールのマネージドディレクトリサービス内での作成は、マネージドディレクトリサービスに、シャドウ管理者アカウントをこの新しい識別プール内に作成して、顧客または代理ユーザが、マネージドディレクトリサービスにアクセスし、ユーザまたはユーザのグループなどのディレクトリ内のさまざまなリソースと、ディレクトリとディレクトリ内のアプリケーションとへの彼らアクセスとを管理することを可能にすること、を行わせることができる。したがって、図6は、少なくとも一実施形態による、シャドウ管理者アカウントをマネージドディレクトリサービス内に作成するためのプロセス600の、例示的な実施例である。プロセス600は、コンピューティングリソースサービスプロバイダによって運営されているマネージドディレクトリサービスによって実行され得、管理者及び他の代理ユーザが、マネージドディレクトリサービス内の1つまたは複数のディレクトリとアプリケーションとを管理することと、1人または複数のユーザと、これらのディレクトリとアプリケーションとへの彼らのアクセスを管理することと、を可能にするように構成され得る。
上述の通り、顧客または他の代理ユーザ(たとえば、顧客のために行動する許可を与えられたユーザ)は、認証情報のセットを活用して、コンピューティングリソースサービスプロバイダとマネージドディレクトリサービスとにアクセスすることができる。したがって、コンピューティングリソースサービスプロバイダとその関連サービスとにアクセスすることを要求するユーザの識別を確認するように構成された識別管理サービスは、認証情報を審査し、顧客が、識別管理サービスによって管理されている識別プール内のプリンシパルであるかどうかを判断することができる。加えて、識別管理サービスは、プリンシパルを特定した後、どのインフラストラクチャポリシーがこのプリンシパルに適用されるかを判断することができる。プリンシパルが必要な許可を有している場合、適用可能なポリシーに従って、プリンシパルは、新しい識別プールを作成するための要求を、マネージドディレクトリサービスに送信することができ得る。したがって、マネージドディレクトリサービスは、この要求を受信して602、新しい識別プールをマネージドディレクトリサービス内に作成することができる。
新しい識別プールを作成するための要求をプリンシパルから受信したことに応答して、マネージドディレクトリサービスは、この新しい識別プールを作成する604ように構成され得る。上述の通り、この識別プールは、マネージドディレクトリサービス内の1つまたは複数のディレクトリとアプリケーションとの管理者が、これらのディレクトリとアプリケーションとを活用し得る無数のユーザを管理することを可能にすることができる。したがって、図4と図5とに例示した通り、管理者は、マネージドディレクトリサービスによって提供されるインターフェースを活用して、識別プールにアクセスし、1人または複数のユーザプロファイルを管理することができる。これらのユーザプロファイルの各々は、マネージドディレクトリサービス内のディレクトリ及びアプリケーションと、コンピューティングリソースサービスプロバイダによって提供される他のサービスと、へのアクセスレベルを定義するために使用されるディレクトリポリシーのセットを、含むことができる。
マネージドディレクトリサービスとこの新しく作成された識別プールとに、管理者としてアクセスするために、顧客または代理ユーザは、別のアカウントをマネージドディレクトリサービス内に作成することを要求され得る。代替的に、マネージドディレクトリサービスは、シャドウ管理者アカウントを新しく作成された識別プール内に生成する606ように構成され得、それを、顧客または代理ユーザが活用して、マネージドディレクトリサービスにアクセスすることができる。このシャドウ管理者アカウントは、アカウントのユーザに、識別プール内の1人または複数のユーザと、ディレクトリを通して利用可能なアプリケーション及び他のリソースと、を管理することを許可するように構成され得る。たとえば、上記で説明した通り、管理者は、識別プール内のユーザプロファイルにアクセスして、マネージドディレクトリサービス内のディレクトリ及びアプリケーションと、コンピューティングリソースサービスプロバイダによって提供される他のサービスと、へのアクセスレベルを定義する、1つまたは複数のディレクトリポリシーを生成することができる。加えて、管理者は、マネージドディレクトリサービス内のディレクトリとアプリケーションとを、顧客の事業ニーズに基づいて管理することができ得る。
いったんシャドウ管理者アカウントが識別プール内に生成されると、マネージドディレクトリサービスは、シャドウ管理者アカウントにアクセスするために使用され得る認証情報のセットを取得するために使用され得る適切に構成されたAPIコールを、顧客または他の代理ユーザから受信する608ことができる。上述の通り、マネージドディレクトリサービスは、顧客または代理ユーザがシャドウ管理者アカウントにアクセスするための認証情報のセットを取得することを可能にし得る、適切に構成されたAPIコール(たとえば、「GetDirectoryToken()」)を、コンピューティングリソースサービスプロバイダに露出させるように構成され得る。したがって、顧客または代理ユーザは、コンピューティングリソースサービスプロバイダにアクセスし、この適切に構成されたAPIコールをマネージドディレクトリサービスに送信して、シャドウ管理者アカウントにアクセスするために使用され得る認証情報のセットを取得することができる。以下で図8に関連して説明する通り、顧客は、識別管理サービスを活用して、1つまたは複数の代理ユーザに提供可能なインフラストラクチャポリシーを管理し、どの代理ユーザがこの新しく露出されたAPIコールを活用することができるかを判断することができる。加えて、代替的な実施形態では、この新しい識別プールの作成とシャドウ管理者アカウントの生成との後、マネージドディレクトリサービスは、顧客または代理ユーザが、APIコールをこの最初のインスタンス中に使用する必要なく、シャドウ管理者アカウントにアクセスすることを可能にする。しかしながら、シャドウ管理者アカウントに後からアクセスするために、顧客または代理ユーザは、このAPIコールをマネージドディレクトリサービスに送信して、シャドウ管理者アカウントにアクセスするために必要な認証情報のセットを取得するように要求され得る。
上述の通り、顧客または代理ユーザは、認証情報の取得したセットを使用して、マネージドディレクトリサービス識別プールにシャドウ管理者としてアクセスすることができる。したがって、マネージドディレクトリサービスは、シャドウ管理者アカウントを有効にして610、ディレクトリ内の他のユーザ及び/またはアプリケーションを含む、ディレクトリ内の1つまたは複数のリソースを管理するように構成され得る。一実施形態では、マネージドディレクトリサービスは、シャドウ管理者アカウントのための1つまたは複数のポリシーを定義するように構成されており、それは、シャドウ管理者アカウントに適用されると、シャドウ管理者アカウントに、ディレクトリ内の他のユーザ及び/またはアプリケーションを含む、ディレクトリ内の1つまたは複数のリソースを管理するための必要な許可を与える。したがって、顧客または代理ユーザが認証情報のセットを活用してこのシャドウ管理者アカウントにアクセスすると、顧客または代理ユーザは、ディレクトリ内の他のユーザ及び/またはアプリケーションを適切に管理することができ得る。
上述の通り、顧客は、マネージドディレクトリサービスへの適切に構成されたAPIコールを活用して、マネージドディレクトリサービス内に新しく作成された識別プール内のシャドウ管理者アカウントにアクセスするために使用され得る、認証情報のセットを取得することができる。したがって、図7は、少なくとも図4に関連して本明細書で説明し、少なくとも一実施形態による、マネージドディレクトリサービスへのアクセスを認証するためと、マネージドディレクトリサービスに関連する1つまたは複数のコマンドを実行する権限を、認証されたエンティティに与えるためとの、例示的なプロセス700を示している。図4で説明したマネージドディレクトリサービス404などのサービス、またはマネージドディレクトリサービスに関連するプロセスは、プロセス700に例示したアクションを実行することができる。
マネージドディレクトリサービスは、要求者がマネージドディレクトリサービスと、1つまたは複数のコマンドと、マネージドディレクトリサービスによって提供されるディレクトリ及び/またはサービスと、にアクセスすることを可能にする、要求702を受信することができる。いくつかの実施形態では、要求者は、少なくとも一実施形態に少なくともしたがって本明細書で説明したコンピュータシステムエンティティ、ユーザ、またはプロセスなどの、コンピュータシステムエンティティ、ユーザ、またはプロセスであってよい。いくつかの実施形態では、要求は、外部のコンピュータシステム及び/またはサーバから生じることができ、または遠隔ネットワークの場所上のエンティティ、ユーザ、またはプロセスから生じることができ、またはローカルコンピュータシステムから生じることができ、またはコンピュータシステムクライアントデバイスのユーザから生じることができ、またはこれら及び/または他のそのような条件の組み合わせの結果として生じることができる。要求を発行するためのコマンドまたは複数のコマンドは、いくつかの実施形態では、特権ユーザによって、または非特権ユーザによって、または自立型プロセスによって、または警告または条件の結果として、またはこれら及び/または他の方法の組み合わせによって、発行され得る。
マネージドディレクトリサービスは、最初に、ユーザを、図4に少なくとも関連して本明細書で説明し、少なくとも一実施形態によるプロセスなどのプロセスを使用して、認証する704ことができる。マネージドディレクトリサービスは、いくつかの実施形態では、図5に少なくとも関連して本明細書で説明し、少なくとも一実施形態による識別プール内のユーザプロファイルデータなどの、システムアクセスデータを使用することができる。要求者が認証された704場合、マネージドディレクトリサービスは、接続を許可し708、コマンドを要求者から受信し始める710ことができる。要求者が認証されなかった704場合、マネージドディレクトリサービスは、接続を拒否する706ことができる。
いったんマネージドディレクトリサービスがコマンドを要求者から受信し始める710と、マネージドディレクトリサービスは、要求者が各コマンドを実行する権限を与えられているかどうか、を判断する714ことができる。マネージドディレクトリサービスは、要求者に、少なくとも一実施形態による権限付与プロセスを使用して、各コマンドを実行する権限を与えることができる。マネージドディレクトリサービスは、いくつかの実施形態では、図5に少なくとも関連して本明細書で説明し、少なくとも一実施形態による、ユーザプロファイル及び/またはポリシーデータなどのシステムアクセスデータを使用することができる。
要求者が、受信コマンドを実行する権限を与えられていない714場合、マネージドディレクトリサービスは、特定のコマンドを拒否する716ことができ、その後、それが要求者からのコマンドを処理し続ける712べきかどうかを判断することができる。したがって、いくつかの拒否されたコマンドは、コマンドを実行しない結果になり得、いくつかの拒否されたコマンドは、要求者及び/または他のコンピュータシステムエンティティに、コマンドが拒否されたということを警告する結果になり得、いくつかの拒否されたコマンドは、要求者への接続を終了する結果になり得、いくつかの拒否されたコマンドは、これら及び/または他のそのようなアクションの組み合わせという結果になり得る。マネージドディレクトリサービスが、コマンドを要求者から受信し続ける712ことを選択する場合、マネージドディレクトリサービスは、次のコマンドを待つ710ことができる。マネージドディレクトリサービスが継続する712ことを選択しない場合、マネージドディレクトリサービスは、要求者との接続を切る722ことができる。考慮され得る通り、要求者との接続を切る722ことは、要求者とのとの接続を切ること、要求者に切断について通知すること、1つまたは複数の他のコンピュータシステムエンティティに切断について通知すること、またはこれら及び/または他のそのような切断アクションの組み合わせを含むことができる。
要求者が受信コマンドを実行する権限を与えられている714場合、マネージドディレクトリサービスは、コマンドを許可する718ことができ、それには、コマンドを実行すること、要求者にコマンドが許可されたことを通知すること、1つまたは複数の他のシステムエンティティにコマンドが許可されたことを通知すること、1つまたは複数の他のシステムエンティティにコマンドを実行することを要求すること、またはこれら及び/または他のそのような応答の組み合わせ、を含むことができる。考慮され得る通り、受信コマンド及び/または許可コマンド718への応答は、マネージドディレクトリサービスに要求者への接続を切る722ことを行わせ得る切断のための要求720を、少なくとも部分的に含むことができる。マネージドディレクトリが切断コマンド720を受信していない場合、マネージドディレクトリサービスは、次のコマンドを待つ710ことができる。
上述の通り、いったんマネージドディレクトリサービスが、識別プールを、顧客または代理ユーザからの要求に応答して作成すると、マネージドディレクトリサービスは、シャドウ管理者アカウントを生成し、顧客が新しく露出された適切に構成されたAPIコール(たとえば、図1に例示した「GetDirectoryToken()」)を活用して、顧客または代理ユーザがシャドウ管理者アカウントにアクセスするための認証情報のセットを要求することを可能にすることができる。コンピューティングリソースサービスプロバイダ内の識別管理サービスは、顧客及び代理ユーザがこのAPIコールを活用して、認証情報のこのセットをマネージドディレクトリサービスから取得することを可能にすることができる。したがって、図8は、一実施形態による、シャドウ管理アカウントにアクセスするための認証情報のセットを要求エンティティに送信するプロセス800の、例示的な実施例である。プロセス800は、要求エンティティに適用可能な1つまたは複数のポリシーを特定し、マネージドディレクトリサービスと通信して、要求を送信し、認証情報のセットを受信するように構成された、識別管理サービスによって実行され得る。
マネージドディレクトリサービス内での識別プールの作成の後、施設間ディレクトリサービスは、顧客または代理が、新しく露出された適切に構成されたAPIコールを活用して、この識別プール内のシャドウ管理者アカウントにアクセスするための認証情報のセットを要求することを可能にすることができる。したがって、顧客または代理ユーザは、コンピューティングリソースサービスプロバイダにアクセスし、コンピューティングリソースサービスプロバイダによって提供されるインターフェースを通して、認証情報のこのセットを取得するための要求を送信することができる。顧客は、新しく露出された適切に構成されたAPIコールを通したこの要求を、マネージドディレクトリサービスに、コンピューティングリソースサービスプロバイダを通して送信することができる。したがって、コンピューティングリソースサービスプロバイダ内の識別管理サービスは、この要求を受信する802ことができる。以下で説明する通り、識別管理サービスは、要求をマネージドディレクトリサービスに提供すること、または要求を行っているユーザの識別とこのユーザに適用可能なインフラストラクチャポリシーとにより、要求を拒否すること、のいずれかを行うように構成され得る。
いったん識別管理サービスが、シャドウ管理アカウントにアクセスするための認証情報のセットを取得するための要求を受信すると、識別管理サービスは、要求を提供しているエンティティと、このエンティティに適用可能なインフラストラクチャポリシーとを特定する804ことができる。上述の通り、顧客は、マネージドディレクトリサービス内の1つまたは複数のディレクトリと、新しく作成された識別プールとを、運営し、維持することができる。顧客は、特定のタスクをマネージドディレクトリサービス内で実行するためのその権限を、多数の代理ユーザに、1つまたは複数のインフラストラクチャポリシーを識別管理サービス内で定義することによって、委任することができる。たとえば、顧客は、すべての代理ユーザが新しく露出された適切に構成されたAPIコールを活用して、シャドウ管理者アカウントにアクセスするための認証情報のセットを取得することができる、と指定することができる。シャドウ管理者アカウントにアクセスするためにAPIコールの使用を定義するインフラストラクチャポリシーは、本開示の至る所で広く使用されているが、コンピューティングリソースサービスプロバイダの顧客は、1つまたは複数の代理ユーザのための無数のポリシーを定義することができる。たとえば、顧客は、コンピューティングリソースサービスプロバイダによって提供される1つまたは複数のサービスへのアクセスレベルを定義する、1人または複数のユーザポリシーを定義することができる。
要求を提供しているエンティティの識別と、このエンティティのための適用可能なインフラストラクチャポリシーと、に少なくとも部分的に基づいて、識別管理サービスは、エンティティが認証情報のセットを取得するための要求を提出するのに必要な許可を有しているかどうか、を判断する806ことができる。ポリシーが、エンティティはこの要求を提出することを許可されていない、というステートメントを含む場合、識別管理サービスは、エンティティからの要求を拒否する808ことができる。しかしながら、エンティティが要求を提出すること、したがって、シャドウ管理者アカウントにアクセスするために必要な認証情報のセットを取得することを許可されている場合、識別管理サービスは、エンティティからの要求を、マネージドディレクトリサービスに送信する810ことができる。
上述の通り、いったんマネージドディレクトリサービスが、シャドウ管理者アカウントにアクセスするために必要な認証情報のセットを取得するための要求を受信すると、マネージドディレクトリサービスは、認証情報のセットを、コンピューティングリソースサービスプロバイダと、転じて、要求を提出した顧客または代理ユーザと、に送信することができる。したがって、識別管理サービスは、認証情報のセットをマネージドディレクトリサービスから受信し812、これらを、要求エンティティへの提供のために準備することができる。識別管理サービスは、1つまたは複数の適切に構成されたAPIコールをコンピューティングリソースサービスプロバイダインターフェースに送信して814、認証情報のセットをエンティティに対して利用可能にするように構成され得る。したがって、要求エンティティは、それが顧客であろうと、代理ユーザであろうと、シャドウ管理者アカウントにアクセスするために要求され得る認証情報のセットを取得し、マネージドディレクトリサービス内のディレクトリ内の1人または複数のユーザ及び/またはアプリケーションを管理することに進むことができ得る。
図9は、さまざまな実施形態による態様を実装するための、例示的な環境900の態様を示している。理解される通り、ウェブベースの環境が説明の目的のために使用されているが、異なる環境を、必要に応じて使用して、さまざまな実施形態を実装することができる。環境は、電子クライアントデバイス902を含み、電子クライアントデバイス902は、要求、メッセージ、または情報を、適切なネットワーク904上で送信及び/または受信し、いくつかの実施形態では、情報を、デバイスのユーザに伝え返すように動作可能な、任意の適切なデバイスを含むことができる。そのようなクライアントデバイスの実施例は、パーソナルコンピュータと、携帯電話と、携帯型メッセージングデバイスと、ノートパソコンと、タブレットコンピュータと、セットトップボックスと、パーソナルデータアシスタントと、埋込コンピュータシステムと、電子書籍リーダなどとを含む。ネットワークは、任意の適切なネットワークを含むことができ、ネットワークには、イントラネット、インターネット、セルラーネットワーク、ローカルエリアネットワーク、衛星ネットワーク、または他のそのようなネットワーク、及び/またはそれらの組み合わせが含まれる。そのようなシステムのために使用される構成要素は、選択されるネットワーク及び/または環境の種類に、少なくとも部分的に基づき得る。そのようなネットワークを介して通信するためのプロトコル及び構成要素は、良く知られており、本明細書では詳細に説明しない。ネットワークを介した通信を、有線接続または無線接続と、それらの組み合わせとによって可能にすることができる。本実施例では、ネットワークはインターネットを含み、それは、環境が、要求を受信し、それに応答してコンテンツを供給するためのウェブサーバ906を含むからであるが、当業者には明白な通り、他のネットワークでは、同様の目的を果たす代替的なデバイスを使用することができる。
例示の環境は、少なくとも1つのアプリケーションサーバ908と、データストア910と、を含む。繋げられ得る、またはそうでなければ構成され得る、いくつかのアプリケーションサーバ、層または他の要素、プロセスまたは構成要素があり、それらが相互作用して、データを適切なデータストアから取得することなどのタスクを実行することができる、ということを理解すべきである。本明細書で使用するサーバを、ハードウェアデバイスまたは仮想コンピュータシステムなどの、さまざまな方法で実装することができる。いくつかの文脈では、サーバは、コンピュータシステム上で実行されているプログラミングモジュールを指すことができる。本明細書で使用する通り、別段に述べるか、文脈から明らかでない限り、「データストア」という用語は、データを格納し、データにアクセスし、データを読み出すことができる任意のデバイスまたはデバイスの組み合わせを指し、それは、任意の規格の、分散環境、仮想環境またはクラスタ化環境における、任意の組み合わせ及び任意の数の、データサーバとデータベースとデータストレージデバイスとデータストレージ媒体とを含むことができる。アプリケーションサーバは、クライアントデバイスのための1つまたは複数のアプリケーションの態様を実行するために必要に応じて、データストアに統合するための、任意の適切なハードウェアとソフトウェアとファームウェアとを含むことができ、アプリケーションのためのデータアクセスとビジネス論理とのうちの一部または全部を扱う。アプリケーションサーバは、アクセス制御サービスを、データストアと協力して提供することができ、またコンテンツを生成することができ、コンテンツには、テキスト、グラフィックス、音声、ビデオ、及び/またはユーザに提供されるために使用可能な他のコンテンツが含まれるが、これらに限定されず、コンテンツは、ユーザに、ウェブサーバによって、ハイパーテキストマークアップ言語(「HTML」)、拡張マークアップ言語(「XML」)、JavaScript、カスケーディングスタイルシート(「CSS」)、または他の適切なクライアント側構造化言語の形式で提供され得る。クライアントデバイスに伝達されたコンテンツを、クライアントデバイスによって処理して、1つまたは複数の形式のコンテンツを提供することができ、形式には、音声で、視覚で、及び/または触覚、味覚及び/または嗅覚を含む他の感覚を通してユーザが知覚可能な形式を含むが、これらに限定されない。全ての要求と応答との取り扱いと、クライアントデバイス902とアプリケーションサーバ908との間でのコンテンツの提供とを、ウェブサーバによって、PHPを使用して扱うことができ、PHPとは、本実施例では、ハイパーテキストプリプロセッサ(「PHP」)、Python、Ruby、Perl、Java、HTML、XML、または、他の適切なサーバ側構造化言語である。ウェブサーバ及びアプリケーションサーバが必須ではなく、単に例示的な構成要素であり、それは、本明細書で説明する構造化コードが、本明細書のどこかで説明する任意の適切なデバイスまたはホストマシン上で実行され得るためである、ということを理解すべきである。さらに、1つのデバイスによって実行されているとして本明細書で説明する動作は、そうでないことが文脈から明白でない限り、複数のデバイスによって集合的に実行され得、複数のデバイスは、分散システム及び/または仮想システムを形成し得る。
データストア910は、いくつかの別々のデータ表、データベース、データ文書、動的データストレージスキーム、及び/または本開示の特定の態様に関連するデータを格納するための他のデータストレージ機構及び媒体を含むことができる。たとえば、例示のデータストアは、生産側のためのコンテンツを提供するために使用され得る、生産データ912とユーザ情報916とを格納するための機構を含むことができる。データストアは、また、報告、分析、または他のそのような目的のために使用され得るログデータ914を格納するための機構を含むように示されている。ページ画像情報及びアクセス権情報などの、データストア内に格納される必要があり得る多くの他の態様があり得、それは、必要に応じて、上記で挙げた機構のうちの任意のものの中に、またはデータストア910内の追加機構内に格納され得る。データストア910は、それに関連する論理を通して、命令をアプリケーションサーバ908から受信し、それに応答して、データを、取得し、更新し、またはそうでない場合は処理するように動作可能である。アプリケーションサーバ908は、受信した命令に応答して、静的データ、動的データ、または静的データと動的データとの組み合わせを提供することができる。ウェブログ(ブログ)、ショッピングアプリケーション、ニュースサービス、及び他のそのようなアプリケーション内で使用されるデータなどの動的データを、本明細書で説明したサーバ側構造化言語によって生成することができ、または、アプリケーションサーバ上で動作している、またはアプリケーションサーバの制御の下で動作している、コンテンツ管理システム(「CMS」)によって提供することができる。一実施例では、ユーザは、ユーザによって操作されているデバイスを通して、特定の種類のアイテムに対する検索要求を提出することができる。この場合、データストアは、ユーザの識別を確認するためにユーザ情報にアクセスすることができ、その種類のアイテムについての情報を取得するためにカタログ詳細情報にアクセスすることができる。情報を、その後、ユーザがユーザデバイス902上のブラウザを介して見ることができる、ウェブページ上の結果リスト内などで、ユーザに返すことができる。興味を持っている特定のアイテムについての情報を、ブラウザの専用ページまたはウィンドウで見ることができる。しかしながら、本開示の実施形態が、必ずしもウェブページのコンテンツに限定されておらず、要求が必ずしもコンテンツに対する要求ではない一般的な要求を処理することに、より広く適用され得る、ということに留意すべきである。
各サーバは、通常、そのサーバの一般管理と操作とのための実行可能プログラム命令を提供するオペレーティングシステムを含み、また、通常、サーバのプロセッサによって実行された時に、サーバがその意図された機能を実行することを可能にする命令を格納する、コンピュータ可読ストレージ媒体(たとえば、ハードディスク、ランダムアクセスメモリ、リードオンリメモリ、など)を含む。サーバのオペレーティングシステムと一般的な機能とのための適切な実装形態は、良く知られており、または市販であり、特に本明細書の開示を踏まえて、当業者によって容易に実装される。
一実施形態では、環境は、1つまたは複数のコンピュータネットワークまたは直接接続を使用して、通信リンクを介して相互接続されたいくつかのコンピュータシステムと構成要素とを活用する、分散コンピューティング環境及び/または仮想コンピューティング環境である。しかしながら、当業者は、そのようなシステムが、図9に例示したものよりも少ない数または多い数の構成要素を有するシステムにおいても同じように良く動作することができる、ということを理解する。したがって、図9のシステム900の描写は、本来例示として、本開示の範囲を限定しないものとして受け取られるべきである。
さまざまな実施形態を、さらに、多種多様な動作環境で実装することができ、動作環境は、いくつかの場合では、任意の数のアプリケーションを動かすために使用され得る、1人または複数のユーザコンピュータ、コンピューティングデバイス、または処理デバイスを含むことができる。ユーザまたはクライアントデバイスは、標準オペレーティングシステムを実行している、デスクトップ、ノートパソコン、またはタブレットコンピュータなどの、多数の汎用パーソナルコンピュータのうちの任意のものと、モバイルソフトウェアを実行し、多数のネットワーキングプロトコルとメッセージングプロトコルとをサポートすることができる、セルラーデバイスと無線デバイスと携帯型デバイスとを含むことができる。そのようなシステムは、また、さまざまな市販のオペレーティングシステムのうちの任意のものと、開発及びデータベース管理などの目的のための他の知られているアプリケーションとを実行している、多数のワークステーションを含むことができる。これらのデバイスは、また、ダミー端末、シンクライアント、ゲームシステム、及びネットワークを介して通信することができる他のデバイスなどの、他の電子デバイスを含むことができる。これらのデバイスは、また、仮想マシン、ハイパーバイザ、及びネットワークを介して通信することができる他の仮想デバイスなどの、仮想デバイスを含むことができる。
本開示のさまざまな実施形態は、通信制御プロトコル/インターネットプロトコル(「TCP/IP」)、ユーザデータグラムプロトコル(「UDP」)、オープンシステムインターコネクション(「OSI」)モデルのさまざまな層内で動作しているプロトコル、ファイル転送プロトコル(「FTP」)、Universal Plug and Play(「UpnP」)、ネットワークファイルシステム(「NFS」)、Common Internet File System(「CIFS」)、及びAppleTalk(登録商標)などの、さまざまな市販のプロトコルのうちの任意のものを使用する通信をサポートするための、当業者に良く知られている、少なくとも1つのネットワークを活用する。ネットワークは、たとえば、ローカルエリアネットワーク、広域ネットワーク、仮想プライベートネットワーク、インターネット、イントラネット、エクストラネット、公衆交換電話網、赤外線ネットワーク、無線ネットワーク、衛星ネットワーク、及びそれらの組み合わせであってよい。
ウェブサーバを活用する実施形態では、ウェブサーバは、さまざまなサーバまたは中間階層アプリケーションのうちの任意のものを実行することができ、ハイパーテキスト転送プロトコル(「HTTP」)サーバと、FTPサーバと、共通ゲートウェイインターフェース(「CGI」)サーバと、データサーバと、Java(登録商標)サーバと、Apache(登録商標)サーバと、ビジネスアプリケーションサーバとが含まれる。サーバは、また、Java(登録商標)、C、C#、またはC++などの任意のプログラミング言語、またはRuby、PHP、Perl(登録商標)、Python(登録商標)、またはTCLなどの任意のスクリプト言語、及びそれらの組み合わせで記述された1つまたは複数のスクリプトまたはプログラムとして実装され得る、1つまたは複数のウェブアプリケーションを実行することなどによって、プログラムまたはスクリプトを、ユーザデバイスからの要求に応答して、実行することができ得る。サーバは、また、データベースサーバを含むことができ、データベースサーバは、Oracle(登録商標)、Microsoft(登録商標)、Sybase(登録商標)、及びIBM(登録商標)からの市販のものと、MySQL、Postgres、SQLite、MongoDBなどのオープンソースサーバと、構造化データまたは非構造化データを格納し、読み出し、アクセスすることが可能な任意の他のサーバとを、限定せずに含む。データベースサーバは、表ベースのサーバ、文書ベースのサーバ、非構造化サーバ、関係型サーバ、非関係型サーバ、またはこれら及び/または他のデータベースサーバの組み合わせを含むことができる。
環境は、上記で説明した通り、さまざまなデータストアと他のメモリとストレージ媒体とを含むことができる。これらは、コンピュータのうちの1つまたは複数にローカルの(及び/または内在する)ストレージ媒体上、またはネットワーク上のコンピュータのうちの任意のものまたは全部から遠隔のストレージ媒体上など、さまざまな場所に存在することができる。特定のセットの実施形態では、情報は、当業者には知られている、ストレージエリアネットワーク(「SAN」)内に存在することができる。同様に、コンピュータ、サーバ、または他のネットワークデバイスに起因する機能を実行するための必要ファイルは、必要に応じて、ローカルに、及び/または遠隔で格納され得る。システムがコンピュータ化デバイスを含む場合、各そのようなデバイスは、バスを介して電気的に連結され得るハードウェア要素を含むことができ、その要素は、たとえば、少なくとも1つの中央処理装置(「CPU」または「プロセッサ」)と、少なくとも1つの入力デバイス(たとえば、マウス、キーボード、コントローラ、タッチ画面、またはキーパッド)と、少なくとも1つの出力デバイス(たとえば、表示デバイス、プリンタ、またはスピーカ)とを含む。そのようなシステムは、また、ディスクドライブ、光ストレージデバイス、及びランダムアクセスメモリ(「RAM」)またはリードオンリメモリ(「ROM」)などの半導体ストレージデバイスなどの、1つまたは複数のストレージデバイスと、取り外し可能媒体デバイス、メモリカード、フラッシュカードなどを含むことができる。
そのようなデバイスは、また、上記で説明した通り、コンピュータ可読ストレージ媒体リーダと、通信デバイス(たとえば、モデム、ネットワークカード(無線または有線)、赤外線通信デバイス、など)と、作業メモリとを含むことができる。コンピュータ可読ストレージ媒体リーダは、遠隔、ローカル、固定、及び/または取り外し可能なストレージデバイスと、コンピュータ可読情報を一時的及び/またはより永久的に含み、格納し、送信し、読み出すためのストレージ媒体とを代表する、コンピュータ可読ストレージ媒体に接続され得、またはコンピュータ可読ストレージ媒体を受け入れるように構成され得る。システム及びさまざまなデバイスは、また、通常、少なくとも1つの作業メモリデバイス内に配置された、多数のソフトウェアアプリケーション、モジュール、サービス、または他の要素を含み、それらは、オペレーティングシステムと、クライアントアプリケーションまたはウェブブラウザなどのアプリケーションプログラムとを含む。代替的な実施形態が、上記で説明したものからの多数の変形物を有し得る、ということを理解すべきである。たとえば、カスタマイズされたハードウェアを、また、使用することができ、及び/または特定の要素を、ハードウェア、ソフトウェア(アプレットなどの携帯型ソフトウェアを含む)、またはその両方で実装することができる。さらに、ネットワーク入力/出力デバイスなどの他のコンピューティングデバイスへの接続を用いることができる。
コードまたはコードの一部を含むためのストレージ媒体及びコンピュータ可読媒体は、当技術分野で知られている、または使用されている、任意の適切な媒体を含むことができ、媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータなどの情報の格納及び/または送信のための任意の方法または技術で実装された、揮発性媒体及び非揮発性媒体、取り外し可能媒体及び固定媒体などであるが、これらに限定されない、ストレージ媒体と通信媒体とを含み、それらには、RAM、ROM、電気的消去可能プログラマブルリードオンリメモリ(「EEPROM」)、フラッシュメモリまたは他のメモリ技術、コンパクトディスクリードオンリメモリ(「CD−ROM」)、デジタル多用途ディスク(DVD)または他の光ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージまたは他の磁気ストレージデバイス、または所望の情報を格納するために使用され得、システムデバイスによってアクセスされ得る任意の他の媒体を含む。本明細書で提供した開示と教示とに基づいて、当業者は、さまざまな実施形態を実装する、適切な他のやり方及び/または方法を理解する。
本開示の実施形態を、以下の条項を考慮して説明することができる。
第1項
識別プールブリッジングのためのコンピュータ実装方法であって、
実行可能命令を有して構成された1つまたは複数のコンピュータシステムの制御下において、
ユーザが、コンピューティングリソースサービスプロバイダによって提供されたインターフェースにアクセスするための認証情報のセットを活用して、マネージドディレクトリサービスにアクセスすることを可能にすることと、
前記コンピューティングリソースサービスプロバイダにおいて、識別プールを前記コンピューティングリソースサービスプロバイダの前記マネージドディレクトリサービス内に作成するための第1の要求を、前記ユーザから受信することであって、前記第1の要求が、認証情報の前記セットに少なくとも部分的に基づいた情報を備える、受信することと、
前記第1の要求の結果として、前記マネージドディレクトリサービスにおいて、前記識別プールと前記識別プール内のシャドウ管理アカウントとを作成することであって、前記シャドウ管理アカウントが、前記マネージドディレクトリサービス内のディレクトリへのアクセスを管理するために使用可能である、作成することと、
前記コンピューティングリソースサービスプロバイダを通して、前記マネージドディレクトリサービスに、前記ユーザからの、前記シャドウ管理アカウントにアクセスするためのディレクトリトークンを取得するための第2の要求を送信することと、
前記ディレクトリトークンを、前記マネージドディレクトリサービスから受信することと、
前記ユーザが前記受信ディレクトリトークンを活用して、アクションを前記ディレクトリ内で実行することを可能にすることと、
を備える、前記コンピュータ実装方法。
第2項
前記シャドウ管理アカウントが、前記マネージドディレクトリサービス内のディレクトリ内の1つまたは複数のリソースを管理するためにさらに使用可能である、第1項に記載のコンピュータ実装方法。
第3項
前記ユーザが、前記コンピューティングリソースサービスプロバイダによって提供される前記インターフェースにアクセスするための認証情報の前記セットを活用して、前記マネージドディレクトリサービスにアクセスすることを可能にすることが、前記コンピューティングリソースサービスプロバイダによって提供される識別管理サービスにおいて、前記ユーザが前記マネージドディレクトリサービスにアクセスする権限を与えられていることを確認すること、を条件とする、第1項から第2項に記載のコンピュータ実装方法。
第4項
前記ユーザが、前記マネージドディレクトリサービスへのアクセスを、他のユーザに、前記コンピューティングリソースサービスプロバイダによって提供される識別管理サービスにおいて、前記他のユーザのための1つまたは複数のポリシーを定義することによって、委任することができる、第1項から第3項に記載のコンピュータ実装方法。
第5項
前記ユーザが、識別管理サービス識別プール内のプリンシパルであり、前記識別管理サービス識別プールが、前記コンピューティングリソースサービスプロバイダの1つまたは複数のサービスへのアクセスを管理するために使用可能である、第1項から第4項に記載のコンピュータ実装方法。
第6項
前記識別プールと前記シャドウ管理者アカウントとの作成後、アプリケーションプログラミングインターフェースコマンドが、前記コンピューティングリソースサービスプロバイダ内で、前記ユーザによって使用可能になることを可能にして、前記マネージドディレクトリサービスに、前記ディレクトリトークンを前記ユーザに送信させること、をさらに備える、第1項から第5項に記載のコンピュータ実装方法。
第7項
コンピュータシステムであって、
1つまたは複数のプロセッサと、
前記コンピュータシステムによって実行されると、前記コンピュータシステムに、
コンピューティングリソースサービスプロバイダによって提供される1つまたは複数のサービスにアクセスするための認証情報を活用する要求者を、認証することと、
前記要求者から、識別プールを前記コンピューティングリソースサービスプロバイダによって提供されるマネージドディレクトリサービス内に作成するための要求を受信することであって、前記マネージドディレクトリサービスへの前記アクセスが、前記認証情報に少なくとも部分的に基づく、受信することと、
前記要求者を認証した後、前記識別プールを前記マネージドディレクトリサービス内に、前記要求者によって使用可能なアカウントを前記作成された識別プール内に、作成することと、
前記要求者が、前記アカウントに、前記マネージドディレクトリサービス内からアクセスすることを可能にすることと、
を行わせる命令を、その中に集合的に格納して有するメモリと、
を備える、前記コンピュータシステム。
第8項
前記識別プールと前記アカウントとの前記作成が、要求が前記マネージドディレクトリサービスに送信されて、前記アカウントに前記マネージドディレクトリサービス内からアクセスするためのディレクトリ認証情報を取得するように、アプリケーションプログラミングインターフェースコマンドをコール可能にする結果になる、第7項に記載のコンピュータシステム。
第9項
前記要求者が前記アカウントにアクセスすることを可能にすることが、
前記コンピューティングリソースサービスプロバイダを通して、前記マネージドディレクトリサービスに、前記要求者からの前記アプリケーションプログラミングインターフェースコマンドを送信して、前記アカウントにアクセスするためのディレクトリ認証情報を取得することと、
前記ディレクトリ認証情報を前記マネージドディレクトリサービスから受信することと、
前記受信ディレクトリ認証情報を前記要求者に提供することと、
を含む、第8項に記載のコンピュータシステム。
第10項
前記要求者が、識別管理サービス識別プール内のプリンシパルであり、前記識別管理サービス識別プールが、前記コンピューティングリソースサービスプロバイダによって提供される前記1つまたは複数のサービスへのアクセスを管理するために使用可能である、第7項から第9項に記載のコンピュータシステム。
第11項
前記要求者が、前記マネージドディレクトリサービスへのアクセスを、他のユーザに、前記他のユーザのための1つまたは複数のポリシーを前記識別管理サービス内で定義することによって、委任することができる、第10項に記載のコンピュータシステム。
第12項
前記アカウントが、前記マネージドディレクトリサービス内のディレクトリ内の1つまたは複数のリソースを管理するために使用可能である、第7項から第11項に記載のコンピュータシステム。
第13項
前記1つまたは複数のリソースが、前記マネージドディレクトリサービスの1人または複数のユーザと、前記マネージドディレクトリサービスの1つまたは複数のグループと、前記マネージドディレクトリサービス内のディレクトリ内の1つまたは複数のポリシー及び1つまたは複数のアプリケーションと、を含む、第12項に記載のコンピュータシステム。
第14項
コンピュータシステムの1つまたは複数のプロセッサによって実行されると、前記コンピュータシステムに、少なくとも、
コンピューティングリソースサービスプロバイダによって提供される1つまたは複数のサービスにアクセスするための認証情報を活用する要求者が、前記コンピューティングリソースサービスプロバイダによって提供されるマネージドディレクトリサービスにアクセスする権限を与えられていることを確認することと、
前記要求者から、識別プールを前記マネージドディレクトリサービス内に作成するための要求を受信することと、
前記要求者が前記マネージドディレクトリサービスにアクセスする権限を与えられていることを確認した後、前記識別プールを前記マネージドディレクトリサービス内に、前記要求者によって使用可能なアカウントを前記作成された識別プール内に、作成することと、
前記要求者が、前記アカウントに、前記マネージドディレクトリサービス内からアクセスすることを可能にすることと、
を行わせる実行可能命令を、その上に集合的に格納して有する、非一時的コンピュータ可読ストレージ媒体。
第15項
前記識別プールと前記アカウントとの前記作成が、要求が前記マネージドディレクトリサービスに送信されて、前記アカウントに前記マネージドディレクトリサービス内からアクセスするためのディレクトリ認証情報を取得するように、アプリケーションプログラミングインターフェースコマンドをコール可能にする結果になる、第14項に記載の非一時的コンピュータ可読ストレージ媒体。
第16項
前記要求者が前記アカウントにアクセスすることを可能にすることが、
前記コンピューティングリソースサービスプロバイダを通して、前記マネージドディレクトリサービスに、前記要求者からの前記アプリケーションプログラミングインターフェースコマンドを送信して、前記アカウントにアクセスするためのディレクトリ認証情報を取得することと、
前記ディレクトリ認証情報を前記マネージドディレクトリサービスから受信することと、
前記受信ディレクトリ認証情報を前記要求者に提供することと、
を含む、第15項に記載の非一時的コンピュータ可読ストレージ媒体。
第17項
前記要求者が、識別管理サービス識別プール内のプリンシパルであり、前記識別管理サービス識別プールが、前記コンピューティングリソースサービスプロバイダによって提供される前記1つまたは複数のサービスへのアクセスを管理するために使用可能である、第14項から第16項に記載の非一時的コンピュータ可読ストレージ媒体。
第18項
前記要求者が、前記マネージドディレクトリサービスへのアクセスを、他のユーザに、前記他のユーザのための1つまたは複数のポリシーを前記識別管理サービス内で定義することによって、委任することができる、第17項に記載の非一時的コンピュータ可読ストレージ媒体。
第19項
前記アカウントが、前記マネージドディレクトリサービス内の1つまたは複数のリソースを管理するために使用可能である、第14項から第18項に記載の非一時的コンピュータ可読ストレージ媒体。
第20項
前記1つまたは複数のリソースが、前記マネージドディレクトリサービスの1人または複数のユーザと、前記マネージドディレクトリサービスの1つまたは複数のグループと、前記マネージドディレクトリサービス内のディレクトリ内の1つまたは複数のポリシー及び1つまたは複数のアプリケーションと、を含む、第19項に記載の非一時的コンピュータ可読ストレージ媒体。
したがって、明細書及び図面は、限定的意味よりも、例示的な意味とみなされる。しかしながら、さまざまな改良と変更とを、それらに、特許請求の範囲に記載する本発明の広範囲な精神と範囲とから逸脱することなく行うことができる、ということは明らかである。
他の変形物は、本開示の精神に含まれる。したがって、開示する手法は、さまざまな改良物と代替的な構造物とを受け入れる余地があるが、それらの特定の例示的な実施形態が図面に示されており、上記で詳細に説明された。しかしながら、本発明を開示した具体的な形式または複数の形式に限定する意図はなく、反対に、意図は、添付の特許請求の範囲に定める本発明の精神と範囲とに含まれる、全ての改良物と代替的な構造物と同等物とを含むことである、ということを理解すべきである。
開示した実施形態を説明している文脈における(特に、以下の特許請求の範囲の文脈における)、「1つの(a)」、「1つの(an)」、及び「前記(the)」という用語と、同様の指示対象と、の使用は、本明細書で別段に指示しない限り、または文脈が明らかに矛盾しない限り、単数形と複数形の両方を含むと解釈されるものである。「備える」、「有する」、「含む(including)」、及び「含む(containing)」という用語は、別段に記さない限り、オープンエンドな用語(つまり、「含むが、限定しない」を意味する)として解釈されるものである。「接続された」という用語は、未修飾で、物理的接続を指している時には、介在する何かがある場合でさえも、部分的または全体的に、内部に含まれている、付着している、または共に接合している、として解釈されるものである。本明細書における値の範囲の列挙は、その範囲内に含まれる各別々の値を個別に指す簡単な方法としての役割を果たすことを単に意図しており、本明細書で別段に指示しない限り、各別々の値は、あたかもそれが本明細書で個別に列挙されたかのように、本明細書の中に組み込まれる。「セット」(たとえば、「アイテムのセット」)または「サブセット」という用語の使用は、別段に記さない限り、または文脈が矛盾しない限り、1つまたは複数のメンバを備える非空の集合として解釈されるものである。さらに、別段に記さない限り、または文脈が矛盾しない限り、対応するセットの「サブセット」という用語は、必ずしも対応するセットの適切なサブセットを意味しないが、サブセット及び対応するセットは、等しいことがある。
「AとBとCとのうちの少なくとも1つ」または「AとBとCとのうちの少なくとも1つ」という形式の表現などの接続言語は、具体的に反対のことを述べない限り、または明確に文脈が矛盾しない限り、一般に、アイテム、期間、などが、AまたはBまたはCのいずれか、またはAとBとCとから成るセットの任意の非空のサブセットであり得る、ということを示すために使用される文脈を用いて理解される。たとえば、3つのメンバを有するセットの例示的な実施例では、接続表現である、「AとBとCとのうちの少なくとも1つ」及び「AとBとCとのうちの少なくとも1つ」は、以下の、{A}、{B}、{C}、{A、B}、{A、C}、{B、C}、{A、B、C}というセットのうちの任意のものを指す。したがって、そのような接続言語は、一般に、特定の実施形態が、Aのうちの少なくとも1つ、Bのうちの少なくとも1つ、及びCのうちの少なくとも1つ、がそれぞれ存在することを必要とする、ということを暗示することを意図しない。
本明細書で説明したプロセスの動作を、本明細書で別段に指示しない限り、または明確に文脈が矛盾しない限り、任意の適切な順番で実行することができる。本明細書で説明したプロセス(またはそれらの変形物及び/または組み合わせ)を、実行可能命令を有して構成された1つまたは複数のコンピュータシステムの制御の下で実行することができ、1つまたは複数のプロセッサ上で、ハードウェアによって、またはそれらの組み合わせによって、集合的に動いているコード(たとえば、実行可能命令、1つまたは複数のコンピュータプログラム、または1つまたは複数のアプリケーション)として実装することができる。コードを、コンピュータ可読ストレージ媒体上に、たとえば、1つまたは複数のプロセッサによって実行可能な複数の命令を備えるコンピュータプログラムの形式で、格納することができる。コンピュータ可読ストレージ媒体は、非一時的であってよい。
本明細書で提供した、任意及び全ての実施例、または例示的言語(たとえば、「など」)の使用は、単に、本発明の実施形態をより良く明らかにすることを意図しており、別段に特許請求されない限り、本発明の範囲に制限を課さない。本明細書内のどの言葉も、非特許請求の要素が本発明の実施に必須であることを示している、と解釈されるべきでない。
本開示の好適な実施形態を本明細書で説明し、それには、本発明を実行するための、発明者達に知られている最良モードが含まれる。それらの好適な実施形態の変形物は、前述の説明を読むことで、当業者に明白になり得る。発明者達は、熟練の技術者がそのような変形物を必要に応じて用いることを予期し、発明者達は、本開示の実施形態が、本明細書で具体的に説明したものとは別の方法で実施されることを意図する。したがって、本開示の範囲は、本明細書に添付する特許請求の範囲で列挙する、本主題の全ての改良物と同等物とを、適用法が許す限りで含む。さらに、上述の要素の任意の組み合わせは、それらの全ての可能性のある変形物において、本明細書で別段に指示しない限り、または文脈が明確に矛盾しない限り、本開示の範囲によって包含される。

Claims (16)

  1. コンピュータシステムであって、
    1つまたは複数のプロセッサと、
    前記コンピュータシステムによって実行されると、前記コンピュータシステムに、
    コンピューティングリソースサービスプロバイダによって提供される1つまたは複数のサービスにアクセスするための認証情報を活用する要求者を、認証することと、
    前記要求者から、識別プールを前記コンピューティングリソースサービスプロバイダによって提供されるマネージドディレクトリサービス内に作成するための要求を受信することであって、前記マネージドディレクトリサービスへの前記アクセスが、前記認証情報に少なくとも部分的に基づく、受信することと、
    前記要求者を認証した後、前記識別プールを前記マネージドディレクトリサービス内に、前記要求者によって使用可能なアカウントを前記作成された識別プール内に、作成することと、
    前記要求者が、前記アカウントに、前記マネージドディレクトリサービス内からアクセスすることを可能にすることと、
    を行わせる命令を、その中に集合的に格納して有するメモリと、
    を備える、前記コンピュータシステム。
  2. 前記識別プールと前記アカウントとの前記作成が、要求が前記マネージドディレクトリサービスに送信されて、前記アカウントに前記マネージドディレクトリサービス内からアクセスするためのディレクトリ認証情報を取得するように、アプリケーションプログラミングインターフェースコマンドをコール可能にする結果になる、請求項1に記載のコンピュータシステム。
  3. 前記要求者が前記アカウントにアクセスすることを可能にすることが、
    前記コンピューティングリソースサービスプロバイダを通して、前記マネージドディレクトリサービスに、前記要求者からの前記アプリケーションプログラミングインターフェースコマンドを送信して、前記アカウントにアクセスするためのディレクトリ認証情報を取得することと、
    前記ディレクトリ認証情報を前記マネージドディレクトリサービスから受信することと、
    前記受信ディレクトリ認証情報を前記要求者に提供することと、
    を含む、請求項2に記載のコンピュータシステム。
  4. 前記要求者が、識別管理サービス識別プール内のプリンシパルであり、前記識別管理サービス識別プールが、前記コンピューティングリソースサービスプロバイダによって提供される前記1つまたは複数のサービスへのアクセスを管理するために使用可能である、請求項1から3のいずれかに記載のコンピュータシステム。
  5. 前記要求者が、前記マネージドディレクトリサービスへのアクセスを、他のユーザに、前記他のユーザのための1つまたは複数のポリシーを前記識別管理サービス内で定義することによって、委任することができる、請求項4に記載のコンピュータシステム。
  6. 前記アカウントが、前記マネージドディレクトリサービス内のディレクトリ内の1つまたは複数のリソースを管理するために使用可能である、請求項1から5のいずれかに記載のコンピュータシステム。
  7. 前記1つまたは複数のリソースが、前記マネージドディレクトリサービスの1人または複数のユーザと、前記マネージドディレクトリサービスの1つまたは複数のグループと、前記マネージドディレクトリサービス内のディレクトリ内の1つまたは複数のポリシー及び1つまたは複数のアプリケーションと、を含む、請求項6に記載のコンピュータシステム。
  8. コンピュータシステムの1つまたは複数のプロセッサによって実行されると、前記コンピュータシステムに、少なくとも、
    コンピューティングリソースサービスプロバイダによって提供される1つまたは複数のサービスにアクセスするための認証情報を活用する要求者が、前記コンピューティングリソースサービスプロバイダによって提供されるマネージドディレクトリサービスにアクセスする権限を与えられていることを確認することと、
    前記要求者から、識別プールを前記マネージドディレクトリサービス内に作成するための要求を受信することと、
    前記要求者が前記マネージドディレクトリサービスにアクセスする権限を与えられていることを確認した後、前記識別プールを前記マネージドディレクトリサービス内に、前記要求者によって使用可能なアカウントを前記作成された識別プール内に、作成することと、
    前記要求者が、前記アカウントに、前記マネージドディレクトリサービス内からアクセスすることを可能にすることと、
    を行わせる実行可能命令を、その上に集合的に格納して有する、非一時的コンピュータ可読ストレージ媒体。
  9. 前記識別プールと前記アカウントとの前記作成が、要求が前記マネージドディレクトリサービスに送信されて、前記アカウントに前記マネージドディレクトリサービス内からアクセスするためのディレクトリ認証情報を取得するように、アプリケーションプログラミングインターフェースコマンドをコール可能にする結果になる、請求項8に記載の非一時的コンピュータ可読ストレージ媒体。
  10. 前記要求者が前記アカウントにアクセスすることを可能にすることが、
    前記コンピューティングリソースサービスプロバイダを通して、前記マネージドディレクトリサービスに、前記要求者からの前記アプリケーションプログラミングインターフェースコマンドを送信して、前記アカウントにアクセスするためのディレクトリ認証情報を取得することと、
    前記ディレクトリ認証情報を前記マネージドディレクトリサービスから受信することと、
    前記受信ディレクトリ認証情報を前記要求者に提供することと、
    を含む、請求項9に記載の非一時的コンピュータ可読ストレージ媒体。
  11. 前記要求者が、識別管理サービス識別プール内のプリンシパルであり、前記識別管理サービス識別プールが、前記コンピューティングリソースサービスプロバイダによって提供される前記1つまたは複数のサービスへのアクセスを管理するために使用可能である、請求項8から10のいずれかに記載の非一時的コンピュータ可読ストレージ媒体。
  12. 前記要求者が、前記マネージドディレクトリサービスへのアクセスを、他のユーザに、前記他のユーザのための1つまたは複数のポリシーを前記識別管理サービス内で定義することによって、委任することができる、請求項11に記載の非一時的コンピュータ可読ストレージ媒体。
  13. 前記アカウントが、前記マネージドディレクトリサービス内の1つまたは複数のリソースを管理するために使用可能である、請求項8から12のいずれかに記載の非一時的コンピュータ可読ストレージ媒体。
  14. 前記1つまたは複数のリソースが、前記マネージドディレクトリサービスの1人または複数のユーザと、前記マネージドディレクトリサービスの1つまたは複数のグループと、前記マネージドディレクトリサービス内のディレクトリ内の1つまたは複数のポリシー及び1つまたは複数のアプリケーションと、を含む、請求項13に記載の非一時的コンピュータ可読ストレージ媒体。
  15. 識別プールブリッジングのためのコンピュータ実装方法であって、
    実行可能命令を有して構成された1つまたは複数のコンピュータシステムの制御下において、
    ユーザが、コンピューティングリソースサービスプロバイダによって提供されたインターフェースにアクセスするための認証情報のセットを活用して、マネージドディレクトリサービスにアクセスすることを可能にすることと、
    前記コンピューティングリソースサービスプロバイダにおいて、識別プールを前記コンピューティングリソースサービスプロバイダの前記マネージドディレクトリサービス内に作成するための第1の要求を、前記ユーザから受信することであって、前記第1の要求が、認証情報の前記セットに少なくとも部分的に基づいた情報を備える、受信することと、
    前記第1の要求の結果として、前記マネージドディレクトリサービスにおいて、前記識別プールと前記識別プール内のシャドウ管理アカウントとを作成することであって、前記シャドウ管理アカウントが、前記マネージドディレクトリサービス内のディレクトリへのアクセスを管理するために使用可能である、作成することと、
    前記コンピューティングリソースサービスプロバイダを通して、前記マネージドディレクトリサービスに、前記ユーザからの、前記シャドウ管理アカウントにアクセスするためのディレクトリトークンを取得するための第2の要求を送信することと、
    前記ディレクトリトークンを、前記マネージドディレクトリサービスから受信することと、
    前記ユーザが前記受信ディレクトリトークンを活用して、アクションを前記ディレクトリ内で実行することを可能にすることと、
    を備える、前記コンピュータ実装方法。
  16. 前記シャドウ管理アカウントが、前記マネージドディレクトリサービス内のディレクトリ内の1つまたは複数のリソースを管理するためにさらに使用可能である、請求項15に記載のコンピュータ実装方法。
JP2016528218A 2013-11-11 2014-11-11 マネージドディレクトリサービスのための識別プールブリッジング Active JP6163264B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201361902790P 2013-11-11 2013-11-11
US61/902,790 2013-11-11
US14/098,298 2013-12-05
US14/098,298 US9736159B2 (en) 2013-11-11 2013-12-05 Identity pool bridging for managed directory services
PCT/US2014/065084 WO2015070246A2 (en) 2013-11-11 2014-11-11 Identity pool bridging for managed directory services

Publications (2)

Publication Number Publication Date
JP2017503231A true JP2017503231A (ja) 2017-01-26
JP6163264B2 JP6163264B2 (ja) 2017-07-12

Family

ID=53042361

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016528218A Active JP6163264B2 (ja) 2013-11-11 2014-11-11 マネージドディレクトリサービスのための識別プールブリッジング

Country Status (6)

Country Link
US (1) US9736159B2 (ja)
EP (1) EP3069464B1 (ja)
JP (1) JP6163264B2 (ja)
CN (1) CN105830388B (ja)
CA (1) CA2930255C (ja)
WO (1) WO2015070246A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022526019A (ja) * 2019-04-09 2022-05-20 ツイッター インコーポレイテッド 管理されたマルチテナントサービスにおけるユーザ属性情報の管理

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9424429B1 (en) * 2013-11-18 2016-08-23 Amazon Technologies, Inc. Account management services for load balancers
US9313193B1 (en) * 2014-09-29 2016-04-12 Amazon Technologies, Inc. Management and authentication in hosted directory service
US10509663B1 (en) * 2015-02-04 2019-12-17 Amazon Technologies, Inc. Automatic domain join for virtual machine instances
US11973758B2 (en) * 2016-09-14 2024-04-30 Microsoft Technology Licensing, Llc Self-serve appliances for cloud services platform
US10630682B1 (en) 2016-11-23 2020-04-21 Amazon Technologies, Inc. Lightweight authentication protocol using device tokens
US10129223B1 (en) 2016-11-23 2018-11-13 Amazon Technologies, Inc. Lightweight encrypted communication protocol
US10397199B2 (en) * 2016-12-09 2019-08-27 Microsoft Technology Licensing, Llc Integrated consent system
US11281796B2 (en) 2018-06-13 2022-03-22 At&T Intellectual Property I, L.P. Blockchain based information management
US11196748B1 (en) * 2018-06-13 2021-12-07 Amazon Technologies, Inc. Directory proxy for accessing remote domains
US11030329B2 (en) * 2018-06-15 2021-06-08 Paypal, Inc. Unified identity services for multi-tenant architectures
US11102214B2 (en) * 2018-08-27 2021-08-24 Amazon Technologies, Inc. Directory access sharing across web services accounts
US11122048B2 (en) 2018-09-26 2021-09-14 International Business Machines Corporation User profile access from engaging applications with privacy assurance associated with an API
EP3967008A4 (en) * 2019-05-09 2022-12-21 Services Pétroliers Schlumberger CUSTOMER ISOLATION WITH CLOUD-NATIVE FEATURES
US11899685B1 (en) 2021-12-10 2024-02-13 Amazon Technologies, Inc. Dividing authorization between a control plane and a data plane for sharing database data
WO2024065147A1 (en) * 2022-09-27 2024-04-04 Citrix Systems, Inc. Group management

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006127504A (ja) * 2004-10-28 2006-05-18 Microsoft Corp 軽量ディレクトリアクセスプロトコルトラフィックのセキュリティ保護
US20110314520A1 (en) * 2010-06-22 2011-12-22 Microsoft Corporation Online service access controls using scale out directory features
JP2013033449A (ja) * 2011-06-29 2013-02-14 Canon Inc サーバーシステムおよび制御方法およびプログラム
JP2013257859A (ja) * 2012-02-01 2013-12-26 Ricoh Co Ltd 情報処理システム、情報処理装置、プログラム及び認証方法

Family Cites Families (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6055637A (en) 1996-09-27 2000-04-25 Electronic Data Systems Corporation System and method for accessing enterprise-wide resources by presenting to the resource a temporary credential
US7188138B1 (en) 1999-03-22 2007-03-06 Eric Schneider Method, product, and apparatus for resource identifier registration and aftermarket services
US6609128B1 (en) 1999-07-30 2003-08-19 Accenture Llp Codes table framework design in an E-commerce architecture
US7711818B2 (en) * 2000-12-22 2010-05-04 Oracle International Corporation Support for multiple data stores
AU2003289118A1 (en) 2002-12-18 2004-07-09 International Business Machines Corporation Web service providing system, server device for the same, control method for controlling computer system as server device for web service providing system, program for executing the control method, and recording medium
US7590667B2 (en) 2003-01-30 2009-09-15 Hitachi, Ltd. File replication method for distributed file systems
JP2004355439A (ja) 2003-05-30 2004-12-16 Aruze Corp 情報管理システム
US20050203993A1 (en) 2003-12-31 2005-09-15 Grobman Steven L. System and method for optimizing data store selection for write operations
JP2005258672A (ja) 2004-03-10 2005-09-22 Jfe Systems Inc トップページ介在シングルサインオン方法及びトップページ装置
US8732182B2 (en) 2004-12-02 2014-05-20 Desktopsites Inc. System and method for launching a resource in a network
US8326899B2 (en) 2005-11-09 2012-12-04 Ca, Inc. Method and system for improving write performance in a supplemental directory
US8418234B2 (en) 2005-12-15 2013-04-09 International Business Machines Corporation Authentication of a principal in a federation
US9213513B2 (en) 2006-06-23 2015-12-15 Microsoft Technology Licensing, Llc Maintaining synchronization of virtual machine image differences across server and host computers
US7574202B1 (en) 2006-07-21 2009-08-11 Airsurf Wireless Inc. System and methods for a secure and segregated computer network
JP2008035250A (ja) 2006-07-28 2008-02-14 Fujitsu Ltd 情報提供サービス制御システム
US7562075B2 (en) 2006-12-07 2009-07-14 International Business Machines Corporation Change approvals for computing systems
US8434129B2 (en) * 2007-08-02 2013-04-30 Fugen Solutions, Inc. Method and apparatus for multi-domain identity interoperability and compliance verification
US8200810B2 (en) 2007-12-13 2012-06-12 Highwinds Holdings, Inc. Content delivery network
US8418238B2 (en) 2008-03-30 2013-04-09 Symplified, Inc. System, method, and apparatus for managing access to resources across a network
US8478902B1 (en) 2012-02-06 2013-07-02 Skytap Virtual gateway router
US9736153B2 (en) * 2008-06-27 2017-08-15 Microsoft Technology Licensing, Llc Techniques to perform federated authentication
US20100017889A1 (en) 2008-07-17 2010-01-21 Symantec Corporation Control of Website Usage Via Online Storage of Restricted Authentication Credentials
US8458290B2 (en) 2011-02-01 2013-06-04 Limelight Networks, Inc. Multicast mapped look-up on content delivery networks
US8566821B2 (en) 2008-11-11 2013-10-22 Netapp Inc. Cloning virtual machines
US20100142401A1 (en) 2008-12-04 2010-06-10 Morris Robert P Methods, Systems, And Computer Program Products For Determining A Network Identifier Of A Node Providing A Type Of Service For A Geospatial Region
US8311038B2 (en) 2009-03-30 2012-11-13 Martin Feuerhahn Instant internet browser based VoIP system
US8307003B1 (en) 2009-03-31 2012-11-06 Amazon Technologies, Inc. Self-service control environment
US8255984B1 (en) 2009-07-01 2012-08-28 Quest Software, Inc. Single sign-on system for shared resource environments
WO2011023134A1 (en) 2009-08-28 2011-03-03 Beijing Innovation Works Technology Company Limited Method and system for managing distributed storage system through virtual file system
US8335765B2 (en) 2009-10-26 2012-12-18 Amazon Technologies, Inc. Provisioning and managing replicated data instances
WO2011106716A1 (en) 2010-02-25 2011-09-01 Secureauth Corporation Security device provisioning
WO2011159842A2 (en) 2010-06-15 2011-12-22 Nimbula, Inc. Virtual computing infrastructure
US9560036B2 (en) 2010-07-08 2017-01-31 International Business Machines Corporation Cross-protocol federated single sign-on (F-SSO) for cloud enablement
US10482254B2 (en) 2010-07-14 2019-11-19 Intel Corporation Domain-authenticated control of platform resources
JP5678508B2 (ja) 2010-07-29 2015-03-04 日本電気株式会社 シンクライアントシステム、管理サーバ、仮想マシン作成管理方法及び仮想マシン作成管理プログラム
EP2619677A4 (en) 2010-09-21 2015-05-13 Hewlett Packard Development Co APPLYING DIFFERENTIAL POLICIES TO AT LEAST ONE DIGITAL DOCUMENT
US9596122B2 (en) * 2010-12-03 2017-03-14 International Business Machines Corporation Identity provider discovery service using a publish-subscribe model
JP5608527B2 (ja) 2010-12-06 2014-10-15 株式会社日立ソリューションズ 仮想環境管理システム、及びその制御方法
US9165134B2 (en) * 2011-03-08 2015-10-20 Telefonica, S.A. Method for providing authorized access to a service application in order to use a protected resource of an end user
US20120233314A1 (en) 2011-03-11 2012-09-13 Ebay Inc. Visualization of Access Information
US8533796B1 (en) 2011-03-16 2013-09-10 Google Inc. Providing application programs with access to secured resources
US20120246738A1 (en) 2011-03-21 2012-09-27 Microsoft Corporation Resource Sharing and Isolation in Role Based Access
US9015710B2 (en) 2011-04-12 2015-04-21 Pivotal Software, Inc. Deployment system for multi-node applications
EP2705632B8 (en) 2011-05-06 2018-09-12 Citrix Systems, Inc. Systems and methods for cloud bridging between public and private clouds
US8769622B2 (en) * 2011-06-30 2014-07-01 International Business Machines Corporation Authentication and authorization methods for cloud computing security
US8412945B2 (en) 2011-08-09 2013-04-02 CloudPassage, Inc. Systems and methods for implementing security in a cloud computing environment
US8990227B2 (en) 2011-08-23 2015-03-24 Oracle International Corporation Globally unique identification of directory server changelog records
CA2849260A1 (en) 2011-09-20 2013-03-28 Aetherworks, Llc Systems and methods for the demand-driven deployment of location-neutral software
FI20116299A (fi) 2011-12-21 2013-06-22 Sensinode Oy Menetelmä, laite ja järjestelmä resurssien osoittamiseksi
US8656471B1 (en) 2012-03-12 2014-02-18 Amazon Technologies, Inc. Virtual requests
US10176335B2 (en) 2012-03-20 2019-01-08 Microsoft Technology Licensing, Llc Identity services for organizations transparently hosted in the cloud
US9063792B2 (en) 2012-04-18 2015-06-23 Entrata Systems, Inc. Managing mobile execution environments
US9069979B2 (en) * 2012-09-07 2015-06-30 Oracle International Corporation LDAP-based multi-tenant in-cloud identity management system
EP2936785A1 (en) 2012-12-24 2015-10-28 Telefonaktiebolaget L M Ericsson (PUBL) Enabling external access to multiple services on a local server
US20140250075A1 (en) 2013-03-03 2014-09-04 Jacob Broido Using a file system interface to access a remote storage system
US9448830B2 (en) 2013-03-14 2016-09-20 Google Inc. Service bridges
US9509719B2 (en) 2013-04-02 2016-11-29 Avigilon Analytics Corporation Self-provisioning access control
US9658899B2 (en) 2013-06-10 2017-05-23 Amazon Technologies, Inc. Distributed lock management in a cloud computing environment

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006127504A (ja) * 2004-10-28 2006-05-18 Microsoft Corp 軽量ディレクトリアクセスプロトコルトラフィックのセキュリティ保護
US20110314520A1 (en) * 2010-06-22 2011-12-22 Microsoft Corporation Online service access controls using scale out directory features
JP2013033449A (ja) * 2011-06-29 2013-02-14 Canon Inc サーバーシステムおよび制御方法およびプログラム
JP2013257859A (ja) * 2012-02-01 2013-12-26 Ricoh Co Ltd 情報処理システム、情報処理装置、プログラム及び認証方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022526019A (ja) * 2019-04-09 2022-05-20 ツイッター インコーポレイテッド 管理されたマルチテナントサービスにおけるユーザ属性情報の管理

Also Published As

Publication number Publication date
JP6163264B2 (ja) 2017-07-12
WO2015070246A2 (en) 2015-05-14
EP3069464A4 (en) 2017-06-28
EP3069464A2 (en) 2016-09-21
CA2930255A1 (en) 2015-05-14
WO2015070246A3 (en) 2015-11-12
CA2930255C (en) 2019-11-26
US20150135272A1 (en) 2015-05-14
EP3069464B1 (en) 2019-01-09
US9736159B2 (en) 2017-08-15
CN105830388A (zh) 2016-08-03
CN105830388B (zh) 2019-06-18

Similar Documents

Publication Publication Date Title
JP6163264B2 (ja) マネージドディレクトリサービスのための識別プールブリッジング
JP6605056B2 (ja) 仮想マシンインスタンスのための自動ディレクトリ結合
JP6568974B2 (ja) 複数のコンピューティング・リソース・サービスにアクセスするための単一の資格認定セット
US9853978B2 (en) Domain join and managed directory support for virtual computing environments
US10447610B1 (en) Techniques for network redirection
US10362039B2 (en) Permissions for hybrid distributed network resources
US20200117498A1 (en) Automatic domain join for virtual machine instances
KR101973361B1 (ko) 컴퓨팅 환경 선택 기술
US11196748B1 (en) Directory proxy for accessing remote domains

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170427

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170616

R150 Certificate of patent or registration of utility model

Ref document number: 6163264

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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