(57)【要約】コンピューティングリソースサービスプロバイダの顧客は、認証情報のセットを活用して、識別プールのマネージドディレクトリサービス内での作成を要求することができる。したがって、マネージドディレクトリサービスは、識別プールすることができる。顧客に、別のアカウントをこの識別プール内に作成させる代わりに、マネージドディレクトリサービスは、シャドウ管理者アカウントを識別プール内に作成することができ、それは、マネージドディレクトリサービス内の識別プール内の他のユーザとリソースとを管理するために使用され得る。マネージドディレクトリサービスは、シャドウ管理者アカウントにアクセスするための認証情報のセットを取得するために使用され得るアプリケーションプログラミングインターフェースコマンドを、さらに露出させることができる。顧客は、このコマンドを使用して、認証情報のセットを受信し、シャドウ管理者アカウントにアクセスすることができる。したがって、顧客は、マネージドディレクトリサービス内の識別プール内のユーザとリソースとを管理することができる。【選択図】図１
2017503231.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータシステムであって、
１つまたは複数のプロセッサと、
前記コンピュータシステムによって実行されると、前記コンピュータシステムに、
コンピューティングリソースサービスプロバイダによって提供される１つまたは複数のサービスにアクセスするための認証情報を活用する要求者を、認証することと、
前記要求者から、識別プールを前記コンピューティングリソースサービスプロバイダによって提供されるマネージドディレクトリサービス内に作成するための要求を受信することであって、前記マネージドディレクトリサービスへの前記アクセスが、前記認証情報に少なくとも部分的に基づく、受信することと、
前記要求者を認証した後、前記識別プールを前記マネージドディレクトリサービス内に、前記要求者によって使用可能なアカウントを前記作成された識別プール内に、作成することと、
前記要求者が、前記アカウントに、前記マネージドディレクトリサービス内からアクセスすることを可能にすることと、
を行わせる命令を、その中に集合的に格納して有するメモリと、
を備える、前記コンピュータシステム。
【請求項２】
前記識別プールと前記アカウントとの前記作成が、要求が前記マネージドディレクトリサービスに送信されて、前記アカウントに前記マネージドディレクトリサービス内からアクセスするためのディレクトリ認証情報を取得するように、アプリケーションプログラミングインターフェースコマンドをコール可能にする結果になる、請求項１に記載のコンピュータシステム。
【請求項３】
前記要求者が前記アカウントにアクセスすることを可能にすることが、
前記コンピューティングリソースサービスプロバイダを通して、前記マネージドディレクトリサービスに、前記要求者からの前記アプリケーションプログラミングインターフェースコマンドを送信して、前記アカウントにアクセスするためのディレクトリ認証情報を取得することと、
前記ディレクトリ認証情報を前記マネージドディレクトリサービスから受信することと、
前記受信ディレクトリ認証情報を前記要求者に提供することと、
を含む、請求項２に記載のコンピュータシステム。
【請求項４】
前記要求者が、識別管理サービス識別プール内のプリンシパルであり、前記識別管理サービス識別プールが、前記コンピューティングリソースサービスプロバイダによって提供される前記１つまたは複数のサービスへのアクセスを管理するために使用可能である、請求項１から３のいずれかに記載のコンピュータシステム。
【請求項５】
前記要求者が、前記マネージドディレクトリサービスへのアクセスを、他のユーザに、前記他のユーザのための１つまたは複数のポリシーを前記識別管理サービス内で定義することによって、委任することができる、請求項４に記載のコンピュータシステム。
【請求項６】
前記アカウントが、前記マネージドディレクトリサービス内のディレクトリ内の１つまたは複数のリソースを管理するために使用可能である、請求項１から５のいずれかに記載のコンピュータシステム。
【請求項７】
前記１つまたは複数のリソースが、前記マネージドディレクトリサービスの１人または複数のユーザと、前記マネージドディレクトリサービスの１つまたは複数のグループと、前記マネージドディレクトリサービス内のディレクトリ内の１つまたは複数のポリシー及び１つまたは複数のアプリケーションと、を含む、請求項６に記載のコンピュータシステム。
【請求項８】
コンピュータシステムの１つまたは複数のプロセッサによって実行されると、前記コンピュータシステムに、少なくとも、
コンピューティングリソースサービスプロバイダによって提供される１つまたは複数のサービスにアクセスするための認証情報を活用する要求者が、前記コンピューティングリソースサービスプロバイダによって提供されるマネージドディレクトリサービスにアクセスする権限を与えられていることを確認することと、
前記要求者から、識別プールを前記マネージドディレクトリサービス内に作成するための要求を受信することと、
前記要求者が前記マネージドディレクトリサービスにアクセスする権限を与えられていることを確認した後、前記識別プールを前記マネージドディレクトリサービス内に、前記要求者によって使用可能なアカウントを前記作成された識別プール内に、作成することと、
前記要求者が、前記アカウントに、前記マネージドディレクトリサービス内からアクセスすることを可能にすることと、
を行わせる実行可能命令を、その上に集合的に格納して有する、非一時的コンピュータ可読ストレージ媒体。
【請求項９】
前記識別プールと前記アカウントとの前記作成が、要求が前記マネージドディレクトリサービスに送信されて、前記アカウントに前記マネージドディレクトリサービス内からアクセスするためのディレクトリ認証情報を取得するように、アプリケーションプログラミングインターフェースコマンドをコール可能にする結果になる、請求項８に記載の非一時的コンピュータ可読ストレージ媒体。
【請求項１０】
前記要求者が前記アカウントにアクセスすることを可能にすることが、
前記コンピューティングリソースサービスプロバイダを通して、前記マネージドディレクトリサービスに、前記要求者からの前記アプリケーションプログラミングインターフェースコマンドを送信して、前記アカウントにアクセスするためのディレクトリ認証情報を取得することと、
前記ディレクトリ認証情報を前記マネージドディレクトリサービスから受信することと、
前記受信ディレクトリ認証情報を前記要求者に提供することと、
を含む、請求項９に記載の非一時的コンピュータ可読ストレージ媒体。
【請求項１１】
前記要求者が、識別管理サービス識別プール内のプリンシパルであり、前記識別管理サービス識別プールが、前記コンピューティングリソースサービスプロバイダによって提供される前記１つまたは複数のサービスへのアクセスを管理するために使用可能である、請求項８から１０のいずれかに記載の非一時的コンピュータ可読ストレージ媒体。
【請求項１２】
前記要求者が、前記マネージドディレクトリサービスへのアクセスを、他のユーザに、前記他のユーザのための１つまたは複数のポリシーを前記識別管理サービス内で定義することによって、委任することができる、請求項１１に記載の非一時的コンピュータ可読ストレージ媒体。
【請求項１３】
前記アカウントが、前記マネージドディレクトリサービス内の１つまたは複数のリソースを管理するために使用可能である、請求項８から１２のいずれかに記載の非一時的コンピュータ可読ストレージ媒体。
【請求項１４】
前記１つまたは複数のリソースが、前記マネージドディレクトリサービスの１人または複数のユーザと、前記マネージドディレクトリサービスの１つまたは複数のグループと、前記マネージドディレクトリサービス内のディレクトリ内の１つまたは複数のポリシー及び１つまたは複数のアプリケーションと、を含む、請求項１３に記載の非一時的コンピュータ可読ストレージ媒体。
【請求項１５】
識別プールブリッジングのためのコンピュータ実装方法であって、
実行可能命令を有して構成された１つまたは複数のコンピュータシステムの制御下において、
ユーザが、コンピューティングリソースサービスプロバイダによって提供されたインターフェースにアクセスするための認証情報のセットを活用して、マネージドディレクトリサービスにアクセスすることを可能にすることと、
前記コンピューティングリソースサービスプロバイダにおいて、識別プールを前記コンピューティングリソースサービスプロバイダの前記マネージドディレクトリサービス内に作成するための第１の要求を、前記ユーザから受信することであって、前記第１の要求が、認証情報の前記セットに少なくとも部分的に基づいた情報を備える、受信することと、
前記第１の要求の結果として、前記マネージドディレクトリサービスにおいて、前記識別プールと前記識別プール内のシャドウ管理アカウントとを作成することであって、前記シャドウ管理アカウントが、前記マネージドディレクトリサービス内のディレクトリへのアクセスを管理するために使用可能である、作成することと、
前記コンピューティングリソースサービスプロバイダを通して、前記マネージドディレクトリサービスに、前記ユーザからの、前記シャドウ管理アカウントにアクセスするためのディレクトリトークンを取得するための第２の要求を送信することと、
前記ディレクトリトークンを、前記マネージドディレクトリサービスから受信することと、
前記ユーザが前記受信ディレクトリトークンを活用して、アクションを前記ディレクトリ内で実行することを可能にすることと、
を備える、前記コンピュータ実装方法。
【請求項１６】
前記シャドウ管理アカウントが、前記マネージドディレクトリサービス内のディレクトリ内の１つまたは複数のリソースを管理するためにさらに使用可能である、請求項１５に記載のコンピュータ実装方法。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本出願は、参照により、全ての目的のために、２０１３年１１月１１日に出願された、「ＭＡＮＡＧＥＤ  ＤＩＲＥＣＴＯＲＹ  ＳＥＲＶＩＣＥ」という題名の、Ｕ．Ｓ．Ｐａｔｅｎｔ  Ｐｒｏｖｉｓｉｏｎａｌ  Ａｐｐｌｉｃａｔｉｏｎ  Ｎｏ．６１／９０２，７９０と、２０１３年１２月５日に出願された、「ＩＤＥＮＴＩＴＹ  ＰＯＯＬ  ＢＲＩＤＧＩＮＧ  ＦＯＲ  ＭＡＮＡＧＥＤ  ＤＩＲＥＣＴＯＲＹ  ＳＥＲＶＩＣＥＳ」という題名の、Ｕ．Ｓ．Ｐａｔｅｎｔ  Ａｐｐｌｉｃａｔｉｏｎ  Ｎｏ．１４／０９８，２９８との完全な開示を組み込む。
【背景技術】
【０００２】
顧客は、ディレクトリサービスを活用して、データ管理と、一般的に、さまざまなリソースへのアクセスとのためのディレクトリ（たとえば、ファイルシステム、ファイル、ユーザ、セキュリティポリシー、ネットワークリソース、アプリケーション、システムストレージ、など）を作成し、維持する。ディレクトリサービスは、顧客の事業ニーズによって、ディレクトリを、（たとえば、社内の）顧客によって運営されているデータセンタ内に、または（たとえば、社外の）遠隔ネットワーク内に、作成するように構成され得る。しかしながら、ディレクトリを、社内及び社外で維持したいと望む顧客は、多数の困難に遭遇することがある。たとえば、社内ディレクトリを活用する顧客は、別のディレクトリを社外に作成し、データを２つのディレクトリ間で同期して、同一セットのデータを維持する必要があり得る。これは、顧客に、ディレクトリの各ユーザのための複数のアカウントを維持することを要求し得る。さらに、複数のディレクトリの維持は、顧客の管理上の負担を増加させ得、それは、複数のディレクトリの維持及びセキュリティが、実行するために追加のリソースを必要とし得るからである。顧客は、コンピューティングリソースサービスプロバイダによって提供されるサービスのユーザを作成し、管理するために使用される識別プールとは別の、新しい識別プールをディレクトリサービス内に作成することを要求され得、それが問題を悪化させている。
【発明の概要】
【０００３】
本開示によるさまざまな実施形態を、図面を参照して説明する。
【図面の簡単な説明】
【０００４】
【図１】さまざまな実施形態を実装することができる環境の例示的な実施例の図である。
【図２】さまざまな実施形態を実装することができる環境の例示的な実施例の図である。
【図３】少なくとも一実施形態による、コンピュータシステムリソースがコンピュータシステムエンティティによってアクセスされ得る環境の、例示的な実施例の図である。
【図４】少なくとも一実施形態による、マネージドディレクトリサービスを備える１つまたは複数の構成要素の、例示的な実施例の図である。
【図５】少なくとも一実施形態による、認証と権限付与認証情報のために使用される、中心位置識別プールとストアとシステムポリシーとを維持するための環境の、例示的な実施例の図である。
【図６】少なくとも一実施形態による、シャドウ管理者アカウントをマネージドディレクトリサービス内に作成するためのプロセスの、例示的な実施例の図である。
【図７】少なくとも一実施形態による、マネージドディレクトリサービスへのアクセスを認証するためのプロセスの、例示的な実施例の図である。
【図８】少なくとも一実施形態による、シャドウ管理アカウントにアクセスするための認証情報のセットを要求エンティティに送信するためのプロセスの、例示的な実施例の図である。
【図９】さまざまな実施形態を実装することができる環境の図である。
【発明を実施するための形態】
【０００５】
以下の記述において、さまざまな実施形態を説明する。説明の目的のために、具体的な構成及び詳細が、実施形態の完全な理解を提供するために記載される。しかしながら、当業者にとっては、実施形態を具体的な詳細なしに実施することができる、ということも明白である。さらに、良く知られた特徴は、説明されている実施形態を分かりにくくしないために、省略され、または簡略化され得る。
【０００６】
本明細書で説明し、提案する手法は、コンピューティングリソースサービスプロバイダとマネージドディレクトリサービスとの間の、マネージドディレクトリサービス内のリソースの管理のための識別プールブリッジングに関する。一実施形態では、エンティティ（たとえば、組織）は、関連コンピューティングデバイスを通して、マネージドディレクトリサービスと通信する。通信は、サービスへの１つまたは複数の適切に構成されたアプリケーションプログラミングインターフェース（ＡＰＩ）コールを通してなど、マネージドディレクトリサービスによって活用される１つまたは複数のプロトコルにしたがって、行われてよい。いくつかの実施例では、マネージドディレクトリサービスへの通信は、ユーザとディレクトリとを管理するための、マネージドディレクトリサービス内への新しい識別プールの作成を要求するためである。エンティティは、仮想コンピュータシステムサービス、オブジェクトベースのデータストレージサービス、データベースサービス、前述のマネージドディレクトリサービス、及び複数の他のサービスなどの、さまざまなサービスを運営するコンピューティングリソースサービスプロバイダの顧客であってよい。
【０００７】
さまざまな実施形態では、は、エンティティは、マネージドディレクトリサービスと通信し、新しい識別プールの作成を要求するために、認証情報のセットを活用して、コンピューティングリソースサービスプロバイダにアクセスする。たとえば、エンティティは、電子署名がコンピューティングリソースサービスプロバイダによって確認可能であるように、暗号化キーを使用して生成された電子署名を活用することができる。別の場合では、エンティティは、コンピューティングリソースサービスプロバイダによって確認可能であり得る、ユーザ名とパスワードとを活用することができる。したがって、コンピューティングリソースサービスプロバイダによって提供される識別管理サービスは、認証情報のこのセットを活用して、エンティティを特定し、コンピューティングリソースサービスプロバイダによって提供される１つまたは複数のサービスへのアクセスレベルを判断することができる。したがって、エンティティが、マネージドディレクトリサービスへのアクセスを与えられている場合、エンティティは、この新しい識別プールを作成するための要求を生成することを許可され得る。一実施形態では、エンティティは、この新しく作成された識別プールを使用して、リソースと、ユーザと、マネージドディレクトリサービス内に提供されている、１つまたは複数のディレクトリとアプリケーションとへの彼らのアクセスと、を管理することができる。
【０００８】
一実施形態では、顧客がマネージドディレクトリサービスを活用してこの新しい識別プールを作成すると、マネージドディレクトリサービスは、シャドウ管理者アカウントを識別プール内に作成する。シャドウ管理者アカウントは、マネージドディレクトリサービス内のディレクトリのためのアカウントであり、コンピューティングリソースサービスプロバイダ内の顧客アカウントと、シャドウ管理者アカウントにアクセスするためにその顧客が有効にした代理ユーザアカウントと、に対応することができる。このシャドウ管理者アカウントは、エンティティまたはエンティティによって定義された他の代理ユーザによって使用されて、ディレクトリ内のリソースを管理することができ、それには、マネージドディレクトリサービス内のディレクトリのユーザと、ディレクトリのユーザのグループと、これらのユーザとグループとに適応可能なポリシーと、ディレクトリを通して管理される１つまたは複数のアプリケーションと、を含むが、これらに限定されない。したがって、マネージドディレクトリサービスは、エンティティが、シャドウ管理者アカウントにアクセスするために使用され得る認証情報のセットを、新しく作成された識別プールから取得することを可能にすることができる、新しい適切に構成されたＡＰＩコールを露出するように構成され得る。
【０００９】
一実施形態では、コンピューティングリソースサービスプロバイダによって運営されている識別管理サービスは、別の識別プールを維持し、それは、コンピューティングリソースサービスプロバイダによって提供される１つまたは複数のサービスを活用する無数のユーザを格納し、これらのサービスへの彼らのアクセスを管理するために使用される。したがって、この識別プールの一部でもあり得るエンティティは、識別管理サービスを活用して、どのユーザが、マネージドディレクトリサービスによって露出された新しい適切に構成されたＡＰＩコールを活用して、このシャドウ管理者アカウントにアクセスすることを許可されているか、を特定することができる。したがって、ユーザが、適切に構成されたＡＰＩコールを活用するためにコンピューティングリソースサービスプロバイダにアクセスして、識別プール内のシャドウ管理者アカウントにアクセスする場合、識別管理サービスは、ユーザがこのＡＰＩコールを活用するための必要な許可を有しているかどうか、を判断することができる。ユーザがアクセスを有しない場合、識別管理サービスは、ユーザがＡＰＩコールを活用して、新しく作成された識別プール内のシャドウ管理者アカウントにアクセスすることを防ぐことができる。
【００１０】
このようにして、エンティティは、マネージドディレクトリサービス内の新しく作成された識別プールにアクセスして、１人または複数のユーザと、マネージドディレクトリサービス内のディレクトリとアプリケーションとリソースとへの彼らのアクセスとを、別の管理者アカウントを新しく作成された識別プール内に明示的に作成することを要求されずに、管理することができる。加えて、本明細書で説明し提案する手法は、追加的な技術的利点をもたらす。たとえば、識別プール内のシャドウ管理者アカウントは、エンティティがマネージドディレクトリサービスを活用して識別プールの作成を要求する時に自動的に作成されるため、エンティティは、サービスへの適切に構成されたＡＰＩコールを第１のインスタンス上で生じさせることなく、ユーザを作成し、マネージドディレクトリサービス内のアプリケーションとディレクトリとへのアクセスレベルを定義するための１つまたは複数のポリシーを有効にすることができる。
【００１１】
図１は、さまざまな実施形態を実施することができる環境１００の、例示的な実施例を示している。環境１００では、コンピューティングリソースサービスプロバイダ１０２は、さまざまなコンピューティングリソースサービスを、コンピューティングリソースサービスプロバイダの顧客に提供する。コンピューティングリソースサービスプロバイダ１０２は、さまざまなコンピューティングリソースを１人または複数の顧客のためにホストする組織であってよい。たとえば、コンピューティングリソースサービスプロバイダ１０２は、ハードウェアサーバ、データストレージデバイス、ネットワークデバイス、及びサーバラック、ネットワークケーブルなどの他の装置など、さまざまなコンピュータハードウェアリソースをホストするために使用される、１つまたは複数の施設を運営することができる。コンピューティングリソースサービスプロバイダ１０２は、そのコンピューティングハードウェアリソースを活用して、１つまたは複数のサービスを運営することができる。そのようなサービスは、顧客の物理的装置に投資する必要性を減少させ、または排除しさえもしながら、コンピューティングリソースサービスプロバイダ１０２の顧客がコンピューティングリソースを遠隔で管理して、顧客の事業をサポートすることを可能にするサービスを含むことができる。例示的なサービスは、さまざまなデータストレージサービス（オブジェクトベースのデータストレージサービス、アーカイバルデータストレージサービス、データベースサービス、など）と、プログラム実行サービスと、他のサービスと、を含むが、それらに限定されない。サービスは、顧客によって使用されて、ウェブサイトを運営すること、組織をサポートする企業システムを運営すること、分散計算活動及び／または他の活動などの、多種多様な活動をサポートすることができる。
【００１２】
したがって、図１に示す通り、環境１００は顧客１０４を含む。顧客１０４は、コンピューティングリソースサービスプロバイダ１０２によって提供される１つまたは複数のサービスを活用して、自身の事業をサポートするために１つまたは複数のディレクトリ１２２を運営し、管理することができる、個人、組織、または自動プロセスであってよい。これらのディレクトリ１２２を運営し、管理するために、たとえば、顧客１０４は、マネージドディレクトリサービス１１６と通信して、識別プール１１８をマネージドディレクトリサービス１１６内に作成することを要求され得る。この識別プール１１６は、マネージドディレクトリサービス１１６内のさまざまなユーザとディレクトリ１２２とを管理することと、これらのユーザに適用可能な１つまたは複数のディレクトリポリシー１２４を定義することと、のために使用され得る。
【００１３】
識別プール１１８をマネージドディレクトリサービス１１６内に作成し、管理するために、顧客１０４は、顧客コンピュータシステムデバイスを通して、認証情報のセットを活用して、コンピューティングリソースサービスプロバイダ１０２とマネージドディレクトリサービス１１６とにアクセスすることができる。したがって、コンピューティングリソースサービスプロバイダ１０２とその関連サービスとへのアクセスを要求するユーザの識別を確認するように構成された識別管理サービス１０６は、認証情報を審査し、顧客１０４が、識別管理サービス１０６によって管理されている識別プール１０８内のプリンシパル１１０であるかどうか、を判断することができる。加えて、識別管理サービス１０６は、プリンシパル１１０を特定すると、どのインフラストラクチャポリシー１１２がこのプリンシパル１１０に適用されるか、を判断することができる。たとえば、プリンシパル１１０がマネージドディレクトリサービス１１６にアクセスする権限を与えられていないと述べて、インフラストラクチャポリシーが定義されている場合、識別管理サービス１０６は、プリンシパル１１０からの、マネージドディレクトリサービス１１６にアクセスするための要求を、拒否することができる。インフラストラクチャポリシー１１２は、また、コンピューティングリソースサービスプロバイダ１０２によって提供される１つまたは複数の他のサービス１１４に対しても適用可能である、と定義され得る。
【００１４】
以下でより詳細に説明する通り、顧客１０４は、認証情報のセットを活用して、コンピューティングリソースサービスプロバイダ１０２にアクセスし、要求を、１つまたは複数の適切に構成されたＡＰＩコールなどを通して、マネージドディレクトリサービス１１８に送信して、新しい識別プール１１８を作成することができる。上述した通り、この新しい識別プール１１８を使用して、リソースを管理し、マネージドディレクトリサービス１１６内の１人または複数のユーザを管理し、これらのユーザに適用可能であり得る１つまたは複数のディレクトリポリシー１２４を定義することができる。これらのディレクトリポリシー１２４を使用して、マネージドディレクトリサービス１１６内の１つまたは複数のディレクトリ１２２と、これらの１つまたは複数のディレクトリ１２２内の任意のアプリケーションとへの、ユーザのアクセスを定義することができる。マネージドディレクトリサービス１１６は、シャドウ管理者アカウント１２０をこの新しく作成された識別プール１１８内に作成して、顧客１０４が識別プール１１８にアクセスすることを可能にするように構成され得る。
【００１５】
したがって、マネージドディレクトリサービス１１６は、顧客１０４によって使用され得る、新しい適切に構成されたＡＰＩコール（たとえば、図１に例示した「ＧｅｔＤｉｒｅｃｔｏｒｙＴｏｋｅｎ（）」）を、プリンシパル１１０を通して露出させて、シャドウ管理者アカウント１２０にアクセスするために使用され得る認証情報のセットを取得するように構成され得る。顧客１０４は、いつでも、サービスへのこの適切に構成されたＡＰＩコールなどを通して、認証情報のこのセットを要求して、マネージドディレクトリサービス１１６内のシャドウ管理者アカウント１２０にアクセスすることができる。加えて、顧客１０４は、識別管理サービス１０６を活用して、この適切に構成されたＡＰＩコール、したがって、シャドウ管理者アカウント１２０を使用することを許可され得る、１つまたは複数の代理ユーザを、新しいインフラストラクチャポリシー１１２の作成を通して特定することができる。一実施形態では、マネージドディレクトリサービス１１６は、新しい識別プール１１８の作成を要求している顧客１０４が、認証情報の追加のセットを要求することなく、シャドウ管理者アカウント１２０にアクセスすることを可能にするように構成されている。これは、顧客１０４がシャドウ管理者アカウント１２０を活用して、ディレクトリ１２２内のリソースを管理することを可能にすることができ、リソースは、ディレクトリ１２２のユーザと、ディレクトリ１２２のユーザのグループと、これらのユーザにすぐに適用可能なディレクトリポリシー１２４と、を含む。
【００１６】
図２は、本開示のさまざまな実施形態を実施することができる環境２００の例示的な実施例を示している。環境２００では、コンピューティングリソースサービスプロバイダ２０６は、さまざまなサービスを顧客２０２に提供することができる。顧客２０２は、コンピューティングリソースサービスプロバイダ２０６によって提供されるさまざまなサービスを活用して、さまざまなユーザがマネージドディレクトリ２０８内の１つまたは複数のディレクトリにアクセスすることを可能にする識別プールを、遠隔で生成し、維持することができる組織であってよい。図２に例示した通り、顧客２０２は、コンピューティングリソースサービスプロバイダ２０６と、インターネットなどの１つまたは複数の通信ネットワーク２０４を通して通信することができる。顧客２０２からコンピューティングリソースサービスプロバイダ２０６へのいくつかの通信は、コンピューティングリソースサービスプロバイダ２０６に、本明細書で説明したさまざまな手法またはその変形物にしたがって動作することを行わせることができる。
【００１７】
上述の通り、コンピューティングリソースサービスプロバイダ２０６は、さまざまなコンピューティングリソースサービスを、その顧客に提供することができる。たとえば、この特定の例示的な実施例では、コンピューティングリソースサービスプロバイダ２０６は、少なくとも７種類のサービスを提供する。コンピューティングリソースサービスプロバイダによって提供されるサービスは、本実施例では、マネージドディレクトリサービス２０８と、識別管理サービス２１０と、オブジェクトベースのデータストレージサービス２１２と、ブロックレベルのデータストレージサービス２１４と、データベースサービス２１６と、仮想コンピュータシステムサービス２１８と、ドメイン名システムサービス２２０と、１つまたは複数の他のサービス２２２と、を含むが、本開示の全ての実施形態が、全てのこのようなサービスを含むわけではなく、追加的なサービスを、本明細書で明示的に説明したサービスに加えて、またはその代替物として、提供することができる。
【００１８】
マネージドディレクトリサービス２０８は、さまざまなサービスを提供して、コンピュータシステム及び／またはコンピュータシステムクライアントデバイスが、顧客ディレクトリにアクセスすることを可能にすることができ、さまざまなサービスは、認証サービスと権限付与サービスとディレクトリサービスとを含むが、これらに限定されない。たとえば、マネージドディレクトリサービス２０８は、認証サービスを提供することができ、認証サービスは、ユーザ、コンピュータシステム、プロセス、自動プロセス、または他のそのようなエンティティの認証情報を認証して、そのエンティティが、マネージドディレクトリサービス２０８及び／またはマネージドディレクトリサービス２０８に関連する顧客ディレクトリにアクセスする権限を与えられているかどうかを、少なくとも判断することができる。いくつかの実施形態では、認証情報は、マネージドディレクトリサービス２０８自体によって認証され得、または認証情報は、マネージドディレクトリサービス２０８の制御下のプロセス、プログラム、またはサービスによって認証され得、または認証情報は、マネージドディレクトリサービス２０８が通信し得るプロセス、プログラム、またはサービスによって認証され得、または認証情報は、これら及び／または他のそのようなサービスまたはエンティティの組み合わせによって認証され得る。
【００１９】
マネージドディレクトリサービス２０８は、また、権限付与サービスを提供することができ、権限付与サービスは、ユーザ、コンピュータシステム、プロセス、自動プロセス、または他のそのようなエンティティに権限を与えて、１つまたは複数の可能性のあるアクションのうちのどのアクションを、そのエンティティが実行することができるかを、少なくとも判断することができる。エンティティが、実行する権限を与えられるかもしれず、与えられないかもしれないアクションの実施例は、リソースを顧客ディレクトリ上に作成すること、リソースを顧客ディレクトリ上で破棄すること、顧客ディレクトリ上のリソースに結合すること、顧客ディレクトリ上のリソースから分離すること、顧客ディレクトリ上のリソースへのアクセスリンクを提供すること、顧客ディレクトリ上のリソースへのアクセスリンクを再要求すること、顧客ディレクトリ上のリソースからの読み出しを可能にすること、顧客ディレクトリ上のリソースへの書き込みを可能にすること、及び／または他のそのようなアクションを含むが、これらに限定されない。
【００２０】
マネージドディレクトリサービス２０８は、また、ディレクトリサービスを提供することができ、ディレクトリサービスは、権限付与認証情報及び／またはポリシーにしたがって、認証されたエンティティに、顧客ディレクトリへのアクセスを提供することができる。たとえば、コンピュータシステムエンティティが、顧客ディレクトリ上の特定のデータストアを読み書きする権限を与えられ得る一実施形態では、そうする能力は、ディレクトリサービスによって提供され得る。ディレクトリサービスは、顧客ディレクトリへのアクセスを、統一資源識別子（ＵＲＩ）オブジェクトまたはいくつかの他のそのようなリンク機構などによって、顧客ディレクトリの場所へのリンクを提供することによって、提供することができる。考慮され得る通り、ＵＲＩは、コンピュータシステムクライアントデバイスによって、またはデータセンタで動いているプロセスによって、またはデータセンタに接続されたコンピュータシステム上で動いているプロセスによって、またはマネージドディレクトリサービスによって、またはこれら及び／または他のそのようなコンピュータシステムエンティティによって、提供され得る。
【００２１】
上述の通り、顧客は、マネージドディレクトリサービス２０８を活用して、識別プールを作成し、管理することができ、識別プールは、マネージドディレクトリサービス２０８を活用して１つまたは複数のディレクトリにアクセスし得る、さまざまなユーザを格納するために使用され得る。加えて、顧客は、この識別プールを活用して、これらの１つまたは複数のディレクトリへの各ユーザのアクセスをさらに管理することができる。識別プールの作成後、マネージドディレクトリサービスは、シャドウ管理者アカウントを識別プール内に作成することができ、顧客が、認証情報のセットを取得するために、顧客によって使用され得る新しい適切に構成されたＡＰＩコールを活用して、このシャドウ管理者アカウントにアクセスすることを可能にすることができる。シャドウ管理者アカウントを使用して、ディレクトリとディレクトリ内のアプリケーションとへの各ユーザのアクセスレベルを定義するために、１人または複数のユーザプロファイルをさらに管理することができる。
【００２２】
識別管理サービス２１０は、さまざまなサービスを提供して、顧客が、コンピューティングリソースサービスプロバイダ２０６によって提供される、図２に例示したものなどの他のサービスへのアクセスレベルを定義することを可能にすることができる。したがって、顧客２０２は、識別管理サービス２１０にアクセスして、コンピューティングリソースサービスプロバイダ２０６によって提供されるサービスを活用し得る、１人または複数のユーザとグループとを作成し、管理することができる。顧客２０２は、識別管理サービス２１０を活用して、各ユーザ及び／またはグループに対するインフラストラクチャポリシーのセットを定義し、コンピューティングリソースサービスプロバイダ２０６によって提供されるサービスにアクセスするための彼らの許可を、許可または拒否することができる。
【００２３】
上述の通り、顧客２０２は、認証情報のセットを活用して、コンピューティングリソースサービスプロバイダ２０６にアクセスすることができる。識別管理サービス２１０は、顧客２０２の識別を確認し、顧客２０２が、識別管理サービス２１０内の識別プールにおけるプリンシパルとして動作することを可能にするように構成され得る。したがって、顧客２０２は、マネージドディレクトリサービス２０８にアクセスし、新しい識別プールの作成を要求することができる。以下でより詳細に説明する通り、いったんマネージドディレクトリサービス２０８内に新しく作成された識別プールが利用可能になると、顧客２０２は、識別管理サービス２１０を活用して、コンピューティングリソースサービスプロバイダ２０６の１人または複数のユーザを特定することができ、コンピューティングリソースサービスプロバイダ２０６の１人または複数のユーザは、マネージドディレクトリサービス２０８によって提供された新しい適切に構成されたＡＰＩコールを活用して、シャドウ管理者アカウントにアクセスすることを許され得る。
【００２４】
オブジェクトベースのデータストレージサービス２１２は、顧客２０２のためのデータを格納するように集合的に動作する、コンピューティングリソースの集合を備えることができる。オブジェクトベースのデータストレージサービス２１２内に格納されたデータは、データオブジェクトにまとめられ得る。データオブジェクトは、おそらく、大きさに関する特定の制約を除き、任意の大きさを有することができる。したがって、オブジェクトベースのデータストレージサービス２１２は、さまざまな大きさの、多数のデータオブジェクトを格納することができる。オブジェクトベースのデータストレージサービス２１２は、データオブジェクトをデータオブジェクトの識別子に関連付けるキー値ストアとして動作することができ、データオブジェクトの識別子は、データストレージサービス２１２によって格納されているデータオブジェクトを読み出し、またはそれに関連する他の動作を実行するために、顧客によって使用され得る。データストレージサービスへのアクセスは、適切に構成されたＡＰＩコールを通してであってよい。
【００２５】
ブロックレベルのデータストレージサービス２１４は、顧客のためのデータを格納するように集合的に動作する、コンピューティングリソースの集合を備えることができる。たとえば、ブロックレベルのデータストレージシステムは、仮想マシンインスタンスと共に使用するための、ブロックレベルのデータストレージボリュームを提供するように構成され得る。顧客２０２は、ブロックレベルのデータストレージサービス２１４と相互作用して、ブロックレベルのデータストレージボリュームをプロビジョニングすることができ、ブロックレベルのデータストレージボリュームは、今度は、ストレージデバイス（たとえば、ハードドライブ）として、仮想マシンインスタンス上にマウントされ得る。ストレージボリュームは、ブロックレベルの顧客インターフェースを有する、未加工で、未フォーマットのブロックストレージデバイスのように振る舞うように構成され得る。したがって、顧客は、サービスへの適切に構成されたＡＰＩコールを通して、ファイルシステムをブロックレベルのデータストレージボリュームの一番上に作成し、またはボリュームを、ブロックレベルのストレージデバイス（たとえば、ハードドライブ）として活用することができる。
【００２６】
データベースサービス２１６は、１人または複数の顧客のための１つまたは複数のデータベースを動かすように集合的に動作する、コンピューティングリソースの集合であってよい。コンピューティングリソースサービスプロバイダ２０６の顧客２０２は、データベースサービス２１６からのデータベースを、適切に構成されたＡＰＩコールを活用することによって、運営し、管理することができる。これは、今度は、顧客２０２がデータベース内の動作を維持し、潜在的に大きさを変えることを可能にする。
【００２７】
仮想コンピュータシステムサービス２１８は、仮想マシンインスタンスを、仮想コンピューティングシステム上に、コンピューティングリソースサービスプロバイダ２０６の顧客２０２のためにインスタンス化するように構成された、コンピューティングリソースの集合であってよい。コンピューティングリソースサービスプロバイダ２０６の顧客２０２は、仮想コンピュータシステムサービス２１８と相互作用して、コンピューティングリソースサービスプロバイダによってホストされ、運営されている物理コンピューティングデバイス上にインスタンス化された仮想コンピュータシステムを、プロビジョニングし、運営することができる。仮想コンピュータシステムは、ウェブサイトをサポートするサーバとして動作するためなど、さまざまな目的のために使用され得る。仮想コンピュータシステムのための他のアプリケーションは、データベースアプリケーション、電子商取引アプリケーション、ビジネスアプリケーション、及び／または他のアプリケーションをサポートするためであってよい。
【００２８】
ドメイン名システム（ＤＮＳ）サービス２２０は、顧客２０２に、エンドユーザを１つまたは複数の通信ネットワークアプリケーションに導く方法を与えるように設計され得る。たとえば、ＤＮＳサービス２２０は、統一資源位置指定子（ＵＲＬ）などの人間が読むことができる名前を、コンピュータシステムがインターネット上で互いに接続するために使用することができる、数字の、インターネットプロトコル（ＩＰ）アドレスに変換するように構成され得る。したがって、ＤＮＳサービス２２０は、コンピューティングリソースサービスプロバイダ２０６によって提供される１つまたは複数のサービスにアクセスするための要求を、データゾーン内で動作しているインフラストラクチャに接続するように構成され得る。ＤＮＳサービス２２０は、加えて、コンピューティングリソースサービスプロバイダ２０６の顧客２０２を、別のプロバイダによって運営されている別のコンピューティングシステムなどの、データゾーンの外部のインフラストラクチャに導くように構成され得る。
【００２９】
コンピューティングリソースサービスプロバイダ２０６は、加えて、１つまたは複数の他のサービス２２２を、その顧客２０２のニーズに基づいて維持することができる。たとえば、コンピューティングリソースサービスプロバイダ２０６は、アカウントサービスを維持することができ、アカウントサービスは、コンピューティングリソースサービスプロバイダ２０６の各顧客２０２のための顧客アカウント情報を維持するように集合的に動作する、コンピューティングリソースの集合を備えることができる。アカウントサービスは、たとえば、顧客名と、住所と、電話番号と、請求詳細と、コンピューティングリソースサービスプロバイダの各顧客の他の個人識別情報と、を含むことができる。他のサービスは、ロードバランシングサービス、他のサービスを管理するサービス、及び／または他のサービスを含むが、これらに限定されない。
【００３０】
上述の通り、コンピューティングリソースサービスプロバイダの顧客は、マネージドディレクトリサービスを活用して、マネージドディレクトリサービス内での識別プールの作成を要求し、１人または複数のユーザと、マネージドディレクトリサービス内のディレクトリ及びこれらのディレクトリ内のアプリケーションと、への彼らのアクセスとを管理することができる。したがって、図３は、少なくとも一実施形態による、分散コンピュータシステム環境及び／または仮想コンピュータシステム環境上のコンピュータシステムディレクトリリソースと、その上で動いている関連コードと、にアクセスするための環境３００を示しており、コンピュータシステムディレクトリリソースには、ディレクトリサービスなどのコンピュータシステムサービスと、ディレクトリサービスに関連する、ユーザリソース、ポリシーリソース、ネットワークリソース、及び／またはストレージリソースなどのリソースと、が含まれるが、これらに限定されない。コンピュータシステムエンティティ、ユーザ、またはプロセス３０２は、コンピュータシステムに、コンピュータシステムクライアントデバイス３０４を通して接続し、１つまたは複数のサービス３２６へのアクセスを、接続３０６を介して要求することができる。サービスへのアクセスを要求するためのコマンドまたは複数のコマンドは、外部のコンピュータシステム及び／またはサーバから生じることができ、または遠隔ネットワークの場所上のエンティティ、ユーザ、またはプロセスから生じることができ、またはコンピュータシステムから生じることができ、またはコンピュータシステムクライアントデバイスのユーザから生じることができ、またはこれら及び／または他のそのようなオブジェクトの組み合わせの結果として生じることができる。サービスへのアクセスを要求するためのコマンドまたは複数のコマンドは、いくつかの実施形態では、特権ユーザによって、または非特権ユーザによって、または自立型プロセスによって、または警告または条件の結果として、またはこれら及び／または他の方法の組み合わせによって、発行され得る。
【００３１】
コンピュータシステムクライアントデバイスは、サービスへのアクセスを、ネットワークに接続された他のサーバなどの、それに関連した１つまたは複数のネットワーク３１６及び／またはエンティティを直接的または間接的のいずれかで介して、要求することができる。コンピュータシステムクライアントデバイスは、コンピュータシステムにネットワークを介して接続することができる任意のデバイスを含むことができ、デバイスには、少なくとも、サーバ、ノートパソコン、スマートフォンまたはタブレットなどのモバイルデバイス、スマートウォッチ、スマートテレビなどの他のスマートデバイス、セットトップボックス、ビデオゲーム機、他のそのようなネットワーク使用可能なスマートデバイス、分散コンピューティングシステム及びその構成要素、ゲストコンピュータシステムまたは仮想マシンなどの抽象化構成要素、及び／または他の種類のコンピューティングデバイス及び／または構成要素を含む。ネットワークは、たとえば、ローカルネットワーク、内部ネットワーク、インターネットなどの公衆ネットワーク、広域ネットワーク、無線ネットワーク、モバイルネットワーク、衛星ネットワーク、複数のネットワークノードを有する分散コンピューティングシステム、及び／または同様なものを含むことができる。ネットワークは、また、以下に挙げるものなどのさまざまなプロトコルに従って動作することができ、プロトコルは、Ｂｌｕｅｔｏｏｔｈ（登録商標）、ＷｉＦｉ（登録商標）、セルラーネットワークプロトコル、衛星ネットワークプロトコル、及び／または他のものである。
【００３２】
いくつかの実施形態では、コンピュータシステムは、１つまたは複数のローカルコンピュータシステムリソース３０８を含むことができ、ローカルコンピュータシステムリソース３０８は、顧客の施設に少なくとも部分的に配置され得、また、ファイル及び／または他のコンピュータシステムリソースをそこに格納することができ、ファイル及び／または他のコンピュータシステムリソースは、ディレクトリ、アプリケーション、データ、データベース、他のコンピュータシステムリソースへのリンク、システムドライバ、コンピュータオペレーティングシステム、仮想マシン、及び／または他のそのようなリソースを含むが、それらに限定されない。いくつかの実施形態では、ローカルコンピュータシステムリソースは、ローカルファイルシステムリソースであってよく、システムランダムアクセスメモリ（ＲＡＭ）、ディスクドライブ、半導体ドライブ、取り外し可能ドライブ、またはこれら及び／または他のそのようなストレージデバイスの組み合わせなどの、さまざまなストレージデバイス上に格納され得る。いくつかの実施形態では、ローカルコンピュータシステムリソースは、コンピュータシステムクライアントデバイスによって、たとえば、本明細書で説明するネットワーク接続などの１つまたは複数の接続を介してアクセスされ得る、データセンタ（一緒に配置され得る、複数のコンピュータシステムリソース、サービス、及び／またはストレージデバイス）内に、少なくとも部分的に配置され得る。コンピュータシステムリソース及び／またはデータセンタは、ローカルに、またはローカルと遠隔とを組み合わせて、配置され得る。たとえば、いくつかの実施形態では、ファイルシステム及び／またはディレクトリは、ローカルのデータセンタ内に配置されたディスク上に配置され得、ファイルシステム及び／またはディレクトリの内容は、また、遠隔データセンタ内に配置されたディスクに複製され得る。いくつかの他の実施形態では、ファイルシステム及び／またはディレクトリは、その内容の少なくとも一部を、ローカルであり得る１つのデータセンタ内に配置されて、また、その内容の他の部分を、ローカルまたは遠隔であり得る１つまたは複数の他のデータセンタ内に配置されて、有することができる。ストレージデバイスは、本明細書で説明するものなどの物理デバイス、及び／または、そのような物理デバイスの仮想表示を含むことができる。たとえば、ファイルシステム及び／またはディレクトリストレージデバイスは、ある程度の量の物理メモリを含むことができ、そのうちの一部は、仮想ディスクドライブ上に作成されたファイルシステムを有する仮想ディスクドライブとして、ストレージ専用にされる。他のそのようなローカルストレージデバイスを、本開示の範囲内としてみなすことができる。
【００３３】
いくつかの実施形態では、サービス３２６は、本明細書で説明するものなどの、１つまたは複数のコンピュータシステムディレクトリリソースにアクセスする必要があり得る。サービス３２６は、いくつかの実施形態では、さまざまな他のコンピュータシステムエンティティを含むことができ、それには、ユーザ、他のコンピュータシステム、プロセス及び／または自動プロセス、及び／または他のそのようなコンピュータシステムエンティティが含まれるが、これらに限定されない。システムディレクトリリソースへのアクセス３１４は、いくつかの実施形態では、１つまたは複数のシステムリソースへのアクセスを提供することができるマネージドディレクトリサービス３１８などのサービスによって、提供され得る。マネージドディレクトリサービスは、さまざまなサービスを提供して、コンピュータシステム及び／またはコンピュータシステムクライアントデバイスがシステムリソースにアクセスすることを可能にすることができ、サービスは、認証サービス３２０と権限付与サービス３２２とディレクトリサービス３２４とを含むが、これらに限定されない。
【００３４】
たとえば、マネージドディレクトリサービスは、認証サービス３２０を提供することができ、認証サービス３２０は、ユーザ、コンピュータシステム、プロセス、自動プロセス、または他のそのようなエンティティの認証情報を認証して、そのエンティティが、マネージドディレクトリサービス及び／またはマネージドディレクトリサービスに関連するシステムリソースにアクセスする権限を与えられているかどうかを、少なくとも判断することができる。いくつかの実施形態では、認証情報は、マネージドディレクトリサービス自体によって認証され得、または認証情報は、マネージドディレクトリサービスの制御下のプロセス、プログラム、またはサービスによって認証され得、または認証情報は、マネージドディレクトリサービスが通信することができるプロセス、プログラム、またはサービスによって認証され得、または認証情報は、これら及び／または他のそのようなサービスまたはエンティティの組み合わせによって認証され得る。
【００３５】
マネージドディレクトリサービスは、また、権限付与サービス３２２を提供することができ、権限付与サービス３２２は、ユーザ、コンピュータシステム、プロセス、自動プロセス、または他のそのようなエンティティに権限を与えて、１つまたは複数の可能性のあるアクションのうちのどのアクションをそのエンティティが実行することができるかを、少なくとも判断することができる。たとえば、ファイルシステムリソースなどのコンピュータシステムリソースの場合では、エンティティが実行する権限を与えられるかもしれず、与えられないかもしれないアクションは、ファイルシステムをファイルシステムリソース上に作成すること、ファイルシステムをファイルシステムリソース上で破棄すること、フィルシステムリソース上のファイルシステムに結合すること、ファイルシステムリソース上のファイルシステムから切り離すこと、ファイルシステムリソース上のファイルシステムへのアクセスリンクを提供すること、ファイルシステムリソース上のファイルシステムへのアクセスリンクを再要求すること、ファイルシステムリソース上のファイルシステムからの読み出しを可能にすること、ファイルシステムリソース上のファイルシステムへの書き込みを可能にすること、及び／または他のそのようなファイルシステムリソースアクションを含むが、これらに限定されない。
【００３６】
システムリソースに対するアクションは、ディレクトリ、ファイル、アプリケーション、データ、データベース、他のリソースへのリンク、システムドライバ、オペレーティングシステム、仮想マシン、及び／またはそれらの上の他のそのようなシステムリソースオブジェクトに対するアクションを含むが、それらに限定されず、本明細書で述べるアクションなどのアクションを含むことができる。システムリソースを開始し、停止し、再要求し、破棄し、及び／またはそうでなければ管理するためのアクション、及び他のそのようなアクションは、また、利用可能なアクションの中に含まれ得る。アクションを実行する権限は、たとえば、特定のエンティティに関連する認証情報及び／またはポリシーのセットを維持し、認証情報及び／またはポリシーのセットに少なくとも部分的に基づいて、エンティティがどのアクションを実行する権限を与えられているかを判断することができるシステムなどの、認証情報システムまたはポリシーシステムなどのエンティティによって管理され得る。エンティティが実行する権限を与えられ得るアクションは、静的であり得、または、多数の要因に従って変化し得、要因には、時刻、認証情報の種類、システムポリシー、アクセスされているオブジェクトの性質、種類、または場所、またはこれら及び／または他のそのような権限付与要因の組み合わせを含むが、それらに限定されない。たとえば、コンピュータシステムエンティティは、ファイルシステム上の特定のファイルを読み出すことと、ファイルシステム上の特定の他のファイルを読み書きすることと、ファイルシステム上で特定の他のファイルを追加、削除すること、のみの権限を与えられ得る。異なるコンピュータシステムエンティティは、任意のアクションをファイルシステム上で実行する権限を与えられ得るが、それは、それらのアクションが、特定の場所で、特定の時間に生じた場合のみである。１つまたは複数のプロセスは、たとえば、システムログなどの、ファイルシステム上のファイルに書き込む権限のみを与えられ得、一方で、他のプロセスは、ファイルから読み出す権限のみを与えられ得る。考慮され得る通り、これらは例示的な実施例である。他の種類の動作は、マネージドディレクトリサービス権限付与システムによって権限を与えられ得、そのような他の種類の動作は、また、本開示の範囲内であるとみなされる。
【００３７】
マネージドディレクトリサービスは、また、ディレクトリサービス３２４を提供することができ、ディレクトリサービス３２４は、権限付与認証情報及び／またはポリシーに従って、コンピュータシステムリソースへの認証されたエンティティアクセス３１４を提供することができる。たとえば、コンピュータシステムエンティティが、ファイルシステムリソースなどのコンピュータシステムリソース上の特定のデータストアを読み書きする権限を与えられ得る一実施形態では、そうする能力は、ディレクトリサービスによって提供され得る。ディレクトリサービスは、ファイルシステムリソースへのアクセスを、ＵＲＩオブジェクトまたはいくつかの他のそのようなリンク機構によってなど、ファイルシステムリソースの場所へのリンクを提供することによって、提供することができる。ＵＲＩは、コンピュータシステムクライアントデバイスによって、またはデータセンタで動いているプロセスによって、またはデータセンタに接続されたコンピュータシステム上で動いているプロセスによって、またはマネージドディレクトリサービスによって、またはこれら及び／または他のそのようなコンピュータシステムエンティティの組み合わせによって、提供され得る。
【００３８】
いくつかの実施形態では、コンピュータシステムリソースへのアクセスは、要求エンティティにはアクセスが見えない方法で提供され得る。たとえば、アクセス３１４は、要求エンティティに、ＵＲＩまたはローカルファイルシステム３０８上の場所３１０への他のそのようなリンクとして提供され得る。コンピュータシステムリソース上の場所は、ＵＲＩに、コンピュータシステム上で動いている１つまたは複数のプロセスによって変換３１２され得る。コンピュータシステムリソースへのアクセスを要求したサービスまたはエンティティ３２６は、受信ＵＲＩ３２８を使用して、コンピュータシステムリソースに、コンピュータシステムリソースの場所に依存する構成を必要とせずにアクセスすることができ、いくつかの実施形態では、ＵＲＩを使用してコンピュータシステムリソースにリンクし、あたかもサービスまたはエンティティ３２６がコンピュータシステムリソースに直接接続されているかのように動作することができる。たとえば、サービスまたはエンティティに対してローカルな場所に配置されているように、サービスまたはエンティティにとって見え得るファイルにデータのセットを書き込むように見える動作は、データをネットワークパケットに実際にパッケージ化することができ、その後、そのパケットを、ネットワーク３１６上で、アクセスリンク３１４を介して伝達して、ローカルファイルシステム３０８上に配置されたファイルに実際に書き込むことができる。考慮され得る通り、これらは例示的な実施例であり、マネージドディレクトリサービスによって実行され得る他の種類の動作も、また、本開示の範囲内とみなされ得る。
【００３９】
上述の通り、顧客は、識別プールをマネージドディレクトリサービス内に作成し、１人または複数のユーザと、マネージドディレクトリサービス内のさまざまなディレクトリ及びアプリケーションと、への彼らのアクセスとを管理するために、コンピューティングリソースサービスプロバイダとマネージドディレクトリサービスとにアクセスするための認証情報のセットを使用することができる。したがって、図４は、少なくとも一実施形態による、コンピューティングリソースサービスプロバイダ４０２によって提供される、マネージドディレクトリサービス４０４のさまざまな構成要素を含む環境４００の、例示的な実施例を示している。マネージドディレクトリサービス４０４は、適切な許可を与えられている顧客とユーザとに、識別管理サービスを通して、顧客または代理ユーザがマネージドディレクトリサービス４０４にアクセスすることを可能にするインターフェース４０６を提供することができる。顧客または代理ユーザは、インターフェース４０６を、インターネットなどの１つまたは複数の通信ネットワークを通して活用することができる。インターフェース４０６は、顧客または代理ユーザがマネージドディレクトリサービス４０４にアクセスするための権限を有することを保証する、特定のセキュリティ予防手段を備えることができる。たとえば、マネージドディレクトリサービス４０４にアクセスするために、顧客は、ユーザ名と、対応するパスワードまたは暗号化キーとを、インターフェース４０６を使用する時に提供する必要があり得る。加えて、インターフェース４０６に提出される要求（たとえば、ＡＰＩコール）は、電子署名が、（図示しない）権限付与システムによってなど、マネージドディレクトリサービス４０４によって確認可能であるように、暗号化キーを使用して生成した電子署名を要求することができる。
【００４０】
インターフェース４０６を通して、顧客または代理ユーザは、ディレクトリ構造を見ることができ得、ディレクトリ構造は、ディレクトリ内の全ての利用可能なコンピュータと、ディレクトリにアクセスする権限を与えられているユーザと、のリストを含む。したがって、顧客または代理ユーザは、インターフェース４０６を使用して、識別プール４０８にアクセスし、１人または複数のユーザを作成し、管理し、ユーザ特性（たとえば、名及び苗字、位置、電話番号、など）を閲覧し、コンピューティングリソースサービスプロバイダ４０２によって提供される１つまたは複数のサービス４１４へのアクセスレベルを判断するために使用され得る、１つまたは複数のディレクトリポリシーを定義することができる。加えて、顧客または代理ユーザは、識別プール４０８にアクセスして、マネージドディレクトリサービス４０４によって管理されている１つまたは複数のディレクトリによって影響を受ける、１つまたは複数のディレクトリまたはアプリケーション４１２への各ユーザのアクセスを、さらに管理することができる。たとえば、顧客または代理ユーザは、識別プール４０８にアクセスして、ユーザプロファイル内のポリシー生成器にアクセスし、コンピューティングリソースサービスプロバイダ４０２によって提供されるサービス４１４へのユーザのアクセスレベルを定義するための、１つまたは複数のポリシーを定義することができる。したがって、いったん顧客または代理ユーザが、適用可能なユーザポリシーをポリシー生成器を通して定義すると、顧客または代理ユーザは、適用されたポリシーを、ユーザプロファイル内で見ることができ得る。加えて、ポリシー生成器は、１つまたは複数の実行可能命令をポリシー管理サブシステム４１０に送信することができ、１つまたは複数の実行可能命令は、ポリシー管理サブシステム４１０に、ユーザ固有のコンピューティングリソースサービスプロバイダインターフェースのためのＵＲＩを生成させることができる。このコンピューティングリソースサービスプロバイダインターフェースは、ユーザが、コンピューティングリソースサービスプロバイダ４０２によって提供される１つまたは複数のサービス４１４に、ディレクトリ内からアクセスすることを可能にすることができる。
【００４１】
一実施形態では、顧客または代理ユーザは、マネージドディレクトリサービス４０４にアクセスし、新しい識別プール４０８の作成を要求するために、認証情報の第１のセットを活用して、コンピューティングリソースサービスプロバイダ４０２にアクセスすることができる。顧客または代理ユーザは、マネージドディレクトリサービス４０４にアクセスする許可を有する、識別管理サービス内の識別プール内のプリンシパルであってよい。したがって、顧客または代理ユーザは、コンピューティングリソースサービスプロバイダ４０２のインターフェースを活用して、識別プール４０８のマネージドディレクトリサービス４０４内での作成を要求することができる。マネージドディレクトリサービス４０４は、要求に応答して、識別プール４０８を、要求に少なくとも部分的に基づいて作成し、識別プール４０８内に、顧客または代理ユーザがディレクトリ内のリソース（たとえば、ディレクトリ内のユーザ、ディレクトリマネージドディレクトリサービス４０４内のアプリケーション４１２と他のディレクトリとにアクセスするためのポリシー、コンピューティングリソースサービスプロバイダ４０２によって提供される他のサービス４１４）を管理するために使用し得る、シャドウ管理者アカウントを作成することができる。
【００４２】
マネージドディレクトリサービス４０４は、適切に構成されたＡＰＩコール（たとえば、「ＧｅｔＤｉｒｅｃｔｏｒｙＴｏｋｅｎ（）」）をコンピューティングリソースサービスプロバイダ４０２に露出させて、顧客または代理ユーザが、シャドウ管理者アカウントにアクセスするための認証情報のセットを取得することを可能にするように構成され得る。したがって、顧客または代理ユーザは、このＡＰＩコールをコンピューティングリソースサービスプロバイダ４０２のインターフェース内で活用して、マネージドディレクトリサービス４０４にシャドウ管理者としてアクセスするための認証情報のセットを取得することができる。したがって、顧客または代理ユーザは、マネージドディレクトリサービス４０４のインターフェース４０６にアクセスし、マネージドディレクトリサービス４０４内のディレクトリ及びアプリケーション４１２と、識別プール４０８とにアクセスするための認証情報のセットを活用して、これらのディレクトリ及びアプリケーション４１２と、コンピューティングリソースサービスプロバイダ４０２によって提供される他のサービス４１４とへの、他のユーザのアクセスを管理することができる。
【００４３】
図５は、少なくとも一実施形態による、本明細書で説明する認証と権限付与認証情報とのために使用される、中心位置識別プールとストアとシステムポリシーとを維持するための例示的な環境５００を示している。管理者５０２は、システムアクセスデータ５０４のセットを維持することができ、システムアクセスデータ５０４のセットは、いくつかの実施形態では、顧客の施設上に配置され得る１つまたは複数のローカルストレージの場所内に配置され得、またはいくつかの実施形態では、コンピュータサービスリソース内に配置され得る１つまたは複数の遠隔ストレージの場所内に配置され得、またはいくつかの実施形態では、ローカルと遠隔とのストレージの場所の組み合わせ内に配置され得るストレージの場所内に配置され得る。いくつかの実施形態では、システムアクセスデータは、識別プール５０６を含むことができ、識別プール５０６は、ユーザ名、ユーザパスワード、ユーザ経歴データ、及び／または他のそのようなユーザプロファイル情報を含む、１人または複数のユーザプロファイルを備えることができる。識別プール５０６は、１つまたは複数のシステムによって使用されて、少なくとも一実施形態にしたがって本明細書で説明した認証サービスなどの、認証サービスを提供することができる。いくつかの実施形態では、システムアクセスデータ５０４は、１つまたは複数のストア５０８を備えることができ、ストア５０８は、１つまたは複数のコンピュータシステムリソースへの参照を含むことができる。いくつかの実施形態では、システムアクセスデータ５０４は、１つまたは複数のポリシー５１０を備えることができ、ポリシー５１０は、たとえば、システムサービス、ファイルシステム、ディレクトリ、マシン、仮想マシン、アプリケーション、文書、及び／または他のそのようなシステムリソースなどの、システムリソースへのアクセスを許可し、却下し、及び／または制限する、１つまたは複数のポリシーステートメントを含むことができる。ポリシーステートメントは、システムリソースへのアクセスを、１人または複数のユーザプロファイルの内容、ユーザプロファイルの種類、要求サービス、要求サービスの種類、要求サービスの場所、時刻、ユーザ、クライアント、顧客、要求の事業価値、及び／または他のそのような事業価値、これら及び／または他のそのような要因の組み合わせなどの要因に基づいて、許可し、拒否し、及び／または制限することができる。
【００４４】
上述の通り、新しい識別プールのマネージドディレクトリサービス内での作成は、マネージドディレクトリサービスに、シャドウ管理者アカウントをこの新しい識別プール内に作成して、顧客または代理ユーザが、マネージドディレクトリサービスにアクセスし、ユーザまたはユーザのグループなどのディレクトリ内のさまざまなリソースと、ディレクトリとディレクトリ内のアプリケーションとへの彼らアクセスとを管理することを可能にすること、を行わせることができる。したがって、図６は、少なくとも一実施形態による、シャドウ管理者アカウントをマネージドディレクトリサービス内に作成するためのプロセス６００の、例示的な実施例である。プロセス６００は、コンピューティングリソースサービスプロバイダによって運営されているマネージドディレクトリサービスによって実行され得、管理者及び他の代理ユーザが、マネージドディレクトリサービス内の１つまたは複数のディレクトリとアプリケーションとを管理することと、１人または複数のユーザと、これらのディレクトリとアプリケーションとへの彼らのアクセスを管理することと、を可能にするように構成され得る。
【００４５】
上述の通り、顧客または他の代理ユーザ（たとえば、顧客のために行動する許可を与えられたユーザ）は、認証情報のセットを活用して、コンピューティングリソースサービスプロバイダとマネージドディレクトリサービスとにアクセスすることができる。したがって、コンピューティングリソースサービスプロバイダとその関連サービスとにアクセスすることを要求するユーザの識別を確認するように構成された識別管理サービスは、認証情報を審査し、顧客が、識別管理サービスによって管理されている識別プール内のプリンシパルであるかどうかを判断することができる。加えて、識別管理サービスは、プリンシパルを特定した後、どのインフラストラクチャポリシーがこのプリンシパルに適用されるかを判断することができる。プリンシパルが必要な許可を有している場合、適用可能なポリシーに従って、プリンシパルは、新しい識別プールを作成するための要求を、マネージドディレクトリサービスに送信することができ得る。したがって、マネージドディレクトリサービスは、この要求を受信して６０２、新しい識別プールをマネージドディレクトリサービス内に作成することができる。
【００４６】
新しい識別プールを作成するための要求をプリンシパルから受信したことに応答して、マネージドディレクトリサービスは、この新しい識別プールを作成する６０４ように構成され得る。上述の通り、この識別プールは、マネージドディレクトリサービス内の１つまたは複数のディレクトリとアプリケーションとの管理者が、これらのディレクトリとアプリケーションとを活用し得る無数のユーザを管理することを可能にすることができる。したがって、図４と図５とに例示した通り、管理者は、マネージドディレクトリサービスによって提供されるインターフェースを活用して、識別プールにアクセスし、１人または複数のユーザプロファイルを管理することができる。これらのユーザプロファイルの各々は、マネージドディレクトリサービス内のディレクトリ及びアプリケーションと、コンピューティングリソースサービスプロバイダによって提供される他のサービスと、へのアクセスレベルを定義するために使用されるディレクトリポリシーのセットを、含むことができる。
【００４７】
マネージドディレクトリサービスとこの新しく作成された識別プールとに、管理者としてアクセスするために、顧客または代理ユーザは、別のアカウントをマネージドディレクトリサービス内に作成することを要求され得る。代替的に、マネージドディレクトリサービスは、シャドウ管理者アカウントを新しく作成された識別プール内に生成する６０６ように構成され得、それを、顧客または代理ユーザが活用して、マネージドディレクトリサービスにアクセスすることができる。このシャドウ管理者アカウントは、アカウントのユーザに、識別プール内の１人または複数のユーザと、ディレクトリを通して利用可能なアプリケーション及び他のリソースと、を管理することを許可するように構成され得る。たとえば、上記で説明した通り、管理者は、識別プール内のユーザプロファイルにアクセスして、マネージドディレクトリサービス内のディレクトリ及びアプリケーションと、コンピューティングリソースサービスプロバイダによって提供される他のサービスと、へのアクセスレベルを定義する、１つまたは複数のディレクトリポリシーを生成することができる。加えて、管理者は、マネージドディレクトリサービス内のディレクトリとアプリケーションとを、顧客の事業ニーズに基づいて管理することができ得る。
【００４８】
いったんシャドウ管理者アカウントが識別プール内に生成されると、マネージドディレクトリサービスは、シャドウ管理者アカウントにアクセスするために使用され得る認証情報のセットを取得するために使用され得る適切に構成されたＡＰＩコールを、顧客または他の代理ユーザから受信する６０８ことができる。上述の通り、マネージドディレクトリサービスは、顧客または代理ユーザがシャドウ管理者アカウントにアクセスするための認証情報のセットを取得することを可能にし得る、適切に構成されたＡＰＩコール（たとえば、「ＧｅｔＤｉｒｅｃｔｏｒｙＴｏｋｅｎ（）」）を、コンピューティングリソースサービスプロバイダに露出させるように構成され得る。したがって、顧客または代理ユーザは、コンピューティングリソースサービスプロバイダにアクセスし、この適切に構成されたＡＰＩコールをマネージドディレクトリサービスに送信して、シャドウ管理者アカウントにアクセスするために使用され得る認証情報のセットを取得することができる。以下で図８に関連して説明する通り、顧客は、識別管理サービスを活用して、１つまたは複数の代理ユーザに提供可能なインフラストラクチャポリシーを管理し、どの代理ユーザがこの新しく露出されたＡＰＩコールを活用することができるかを判断することができる。加えて、代替的な実施形態では、この新しい識別プールの作成とシャドウ管理者アカウントの生成との後、マネージドディレクトリサービスは、顧客または代理ユーザが、ＡＰＩコールをこの最初のインスタンス中に使用する必要なく、シャドウ管理者アカウントにアクセスすることを可能にする。しかしながら、シャドウ管理者アカウントに後からアクセスするために、顧客または代理ユーザは、このＡＰＩコールをマネージドディレクトリサービスに送信して、シャドウ管理者アカウントにアクセスするために必要な認証情報のセットを取得するように要求され得る。
【００４９】
上述の通り、顧客または代理ユーザは、認証情報の取得したセットを使用して、マネージドディレクトリサービス識別プールにシャドウ管理者としてアクセスすることができる。したがって、マネージドディレクトリサービスは、シャドウ管理者アカウントを有効にして６１０、ディレクトリ内の他のユーザ及び／またはアプリケーションを含む、ディレクトリ内の１つまたは複数のリソースを管理するように構成され得る。一実施形態では、マネージドディレクトリサービスは、シャドウ管理者アカウントのための１つまたは複数のポリシーを定義するように構成されており、それは、シャドウ管理者アカウントに適用されると、シャドウ管理者アカウントに、ディレクトリ内の他のユーザ及び／またはアプリケーションを含む、ディレクトリ内の１つまたは複数のリソースを管理するための必要な許可を与える。したがって、顧客または代理ユーザが認証情報のセットを活用してこのシャドウ管理者アカウントにアクセスすると、顧客または代理ユーザは、ディレクトリ内の他のユーザ及び／またはアプリケーションを適切に管理することができ得る。
【００５０】
上述の通り、顧客は、マネージドディレクトリサービスへの適切に構成されたＡＰＩコールを活用して、マネージドディレクトリサービス内に新しく作成された識別プール内のシャドウ管理者アカウントにアクセスするために使用され得る、認証情報のセットを取得することができる。したがって、図７は、少なくとも図４に関連して本明細書で説明し、少なくとも一実施形態による、マネージドディレクトリサービスへのアクセスを認証するためと、マネージドディレクトリサービスに関連する１つまたは複数のコマンドを実行する権限を、認証されたエンティティに与えるためとの、例示的なプロセス７００を示している。図４で説明したマネージドディレクトリサービス４０４などのサービス、またはマネージドディレクトリサービスに関連するプロセスは、プロセス７００に例示したアクションを実行することができる。
【００５１】
マネージドディレクトリサービスは、要求者がマネージドディレクトリサービスと、１つまたは複数のコマンドと、マネージドディレクトリサービスによって提供されるディレクトリ及び／またはサービスと、にアクセスすることを可能にする、要求７０２を受信することができる。いくつかの実施形態では、要求者は、少なくとも一実施形態に少なくともしたがって本明細書で説明したコンピュータシステムエンティティ、ユーザ、またはプロセスなどの、コンピュータシステムエンティティ、ユーザ、またはプロセスであってよい。いくつかの実施形態では、要求は、外部のコンピュータシステム及び／またはサーバから生じることができ、または遠隔ネットワークの場所上のエンティティ、ユーザ、またはプロセスから生じることができ、またはローカルコンピュータシステムから生じることができ、またはコンピュータシステムクライアントデバイスのユーザから生じることができ、またはこれら及び／または他のそのような条件の組み合わせの結果として生じることができる。要求を発行するためのコマンドまたは複数のコマンドは、いくつかの実施形態では、特権ユーザによって、または非特権ユーザによって、または自立型プロセスによって、または警告または条件の結果として、またはこれら及び／または他の方法の組み合わせによって、発行され得る。
【００５２】
マネージドディレクトリサービスは、最初に、ユーザを、図４に少なくとも関連して本明細書で説明し、少なくとも一実施形態によるプロセスなどのプロセスを使用して、認証する７０４ことができる。マネージドディレクトリサービスは、いくつかの実施形態では、図５に少なくとも関連して本明細書で説明し、少なくとも一実施形態による識別プール内のユーザプロファイルデータなどの、システムアクセスデータを使用することができる。要求者が認証された７０４場合、マネージドディレクトリサービスは、接続を許可し７０８、コマンドを要求者から受信し始める７１０ことができる。要求者が認証されなかった７０４場合、マネージドディレクトリサービスは、接続を拒否する７０６ことができる。
【００５３】
いったんマネージドディレクトリサービスがコマンドを要求者から受信し始める７１０と、マネージドディレクトリサービスは、要求者が各コマンドを実行する権限を与えられているかどうか、を判断する７１４ことができる。マネージドディレクトリサービスは、要求者に、少なくとも一実施形態による権限付与プロセスを使用して、各コマンドを実行する権限を与えることができる。マネージドディレクトリサービスは、いくつかの実施形態では、図５に少なくとも関連して本明細書で説明し、少なくとも一実施形態による、ユーザプロファイル及び／またはポリシーデータなどのシステムアクセスデータを使用することができる。
【００５４】
要求者が、受信コマンドを実行する権限を与えられていない７１４場合、マネージドディレクトリサービスは、特定のコマンドを拒否する７１６ことができ、その後、それが要求者からのコマンドを処理し続ける７１２べきかどうかを判断することができる。したがって、いくつかの拒否されたコマンドは、コマンドを実行しない結果になり得、いくつかの拒否されたコマンドは、要求者及び／または他のコンピュータシステムエンティティに、コマンドが拒否されたということを警告する結果になり得、いくつかの拒否されたコマンドは、要求者への接続を終了する結果になり得、いくつかの拒否されたコマンドは、これら及び／または他のそのようなアクションの組み合わせという結果になり得る。マネージドディレクトリサービスが、コマンドを要求者から受信し続ける７１２ことを選択する場合、マネージドディレクトリサービスは、次のコマンドを待つ７１０ことができる。マネージドディレクトリサービスが継続する７１２ことを選択しない場合、マネージドディレクトリサービスは、要求者との接続を切る７２２ことができる。考慮され得る通り、要求者との接続を切る７２２ことは、要求者とのとの接続を切ること、要求者に切断について通知すること、１つまたは複数の他のコンピュータシステムエンティティに切断について通知すること、またはこれら及び／または他のそのような切断アクションの組み合わせを含むことができる。
【００５５】
要求者が受信コマンドを実行する権限を与えられている７１４場合、マネージドディレクトリサービスは、コマンドを許可する７１８ことができ、それには、コマンドを実行すること、要求者にコマンドが許可されたことを通知すること、１つまたは複数の他のシステムエンティティにコマンドが許可されたことを通知すること、１つまたは複数の他のシステムエンティティにコマンドを実行することを要求すること、またはこれら及び／または他のそのような応答の組み合わせ、を含むことができる。考慮され得る通り、受信コマンド及び／または許可コマンド７１８への応答は、マネージドディレクトリサービスに要求者への接続を切る７２２ことを行わせ得る切断のための要求７２０を、少なくとも部分的に含むことができる。マネージドディレクトリが切断コマンド７２０を受信していない場合、マネージドディレクトリサービスは、次のコマンドを待つ７１０ことができる。
【００５６】
上述の通り、いったんマネージドディレクトリサービスが、識別プールを、顧客または代理ユーザからの要求に応答して作成すると、マネージドディレクトリサービスは、シャドウ管理者アカウントを生成し、顧客が新しく露出された適切に構成されたＡＰＩコール（たとえば、図１に例示した「ＧｅｔＤｉｒｅｃｔｏｒｙＴｏｋｅｎ（）」）を活用して、顧客または代理ユーザがシャドウ管理者アカウントにアクセスするための認証情報のセットを要求することを可能にすることができる。コンピューティングリソースサービスプロバイダ内の識別管理サービスは、顧客及び代理ユーザがこのＡＰＩコールを活用して、認証情報のこのセットをマネージドディレクトリサービスから取得することを可能にすることができる。したがって、図８は、一実施形態による、シャドウ管理アカウントにアクセスするための認証情報のセットを要求エンティティに送信するプロセス８００の、例示的な実施例である。プロセス８００は、要求エンティティに適用可能な１つまたは複数のポリシーを特定し、マネージドディレクトリサービスと通信して、要求を送信し、認証情報のセットを受信するように構成された、識別管理サービスによって実行され得る。
【００５７】
マネージドディレクトリサービス内での識別プールの作成の後、施設間ディレクトリサービスは、顧客または代理が、新しく露出された適切に構成されたＡＰＩコールを活用して、この識別プール内のシャドウ管理者アカウントにアクセスするための認証情報のセットを要求することを可能にすることができる。したがって、顧客または代理ユーザは、コンピューティングリソースサービスプロバイダにアクセスし、コンピューティングリソースサービスプロバイダによって提供されるインターフェースを通して、認証情報のこのセットを取得するための要求を送信することができる。顧客は、新しく露出された適切に構成されたＡＰＩコールを通したこの要求を、マネージドディレクトリサービスに、コンピューティングリソースサービスプロバイダを通して送信することができる。したがって、コンピューティングリソースサービスプロバイダ内の識別管理サービスは、この要求を受信する８０２ことができる。以下で説明する通り、識別管理サービスは、要求をマネージドディレクトリサービスに提供すること、または要求を行っているユーザの識別とこのユーザに適用可能なインフラストラクチャポリシーとにより、要求を拒否すること、のいずれかを行うように構成され得る。
【００５８】
いったん識別管理サービスが、シャドウ管理アカウントにアクセスするための認証情報のセットを取得するための要求を受信すると、識別管理サービスは、要求を提供しているエンティティと、このエンティティに適用可能なインフラストラクチャポリシーとを特定する８０４ことができる。上述の通り、顧客は、マネージドディレクトリサービス内の１つまたは複数のディレクトリと、新しく作成された識別プールとを、運営し、維持することができる。顧客は、特定のタスクをマネージドディレクトリサービス内で実行するためのその権限を、多数の代理ユーザに、１つまたは複数のインフラストラクチャポリシーを識別管理サービス内で定義することによって、委任することができる。たとえば、顧客は、すべての代理ユーザが新しく露出された適切に構成されたＡＰＩコールを活用して、シャドウ管理者アカウントにアクセスするための認証情報のセットを取得することができる、と指定することができる。シャドウ管理者アカウントにアクセスするためにＡＰＩコールの使用を定義するインフラストラクチャポリシーは、本開示の至る所で広く使用されているが、コンピューティングリソースサービスプロバイダの顧客は、１つまたは複数の代理ユーザのための無数のポリシーを定義することができる。たとえば、顧客は、コンピューティングリソースサービスプロバイダによって提供される１つまたは複数のサービスへのアクセスレベルを定義する、１人または複数のユーザポリシーを定義することができる。
【００５９】
要求を提供しているエンティティの識別と、このエンティティのための適用可能なインフラストラクチャポリシーと、に少なくとも部分的に基づいて、識別管理サービスは、エンティティが認証情報のセットを取得するための要求を提出するのに必要な許可を有しているかどうか、を判断する８０６ことができる。ポリシーが、エンティティはこの要求を提出することを許可されていない、というステートメントを含む場合、識別管理サービスは、エンティティからの要求を拒否する８０８ことができる。しかしながら、エンティティが要求を提出すること、したがって、シャドウ管理者アカウントにアクセスするために必要な認証情報のセットを取得することを許可されている場合、識別管理サービスは、エンティティからの要求を、マネージドディレクトリサービスに送信する８１０ことができる。
【００６０】
上述の通り、いったんマネージドディレクトリサービスが、シャドウ管理者アカウントにアクセスするために必要な認証情報のセットを取得するための要求を受信すると、マネージドディレクトリサービスは、認証情報のセットを、コンピューティングリソースサービスプロバイダと、転じて、要求を提出した顧客または代理ユーザと、に送信することができる。したがって、識別管理サービスは、認証情報のセットをマネージドディレクトリサービスから受信し８１２、これらを、要求エンティティへの提供のために準備することができる。識別管理サービスは、１つまたは複数の適切に構成されたＡＰＩコールをコンピューティングリソースサービスプロバイダインターフェースに送信して８１４、認証情報のセットをエンティティに対して利用可能にするように構成され得る。したがって、要求エンティティは、それが顧客であろうと、代理ユーザであろうと、シャドウ管理者アカウントにアクセスするために要求され得る認証情報のセットを取得し、マネージドディレクトリサービス内のディレクトリ内の１人または複数のユーザ及び／またはアプリケーションを管理することに進むことができ得る。
【００６１】
図９は、さまざまな実施形態による態様を実装するための、例示的な環境９００の態様を示している。理解される通り、ウェブベースの環境が説明の目的のために使用されているが、異なる環境を、必要に応じて使用して、さまざまな実施形態を実装することができる。環境は、電子クライアントデバイス９０２を含み、電子クライアントデバイス９０２は、要求、メッセージ、または情報を、適切なネットワーク９０４上で送信及び／または受信し、いくつかの実施形態では、情報を、デバイスのユーザに伝え返すように動作可能な、任意の適切なデバイスを含むことができる。そのようなクライアントデバイスの実施例は、パーソナルコンピュータと、携帯電話と、携帯型メッセージングデバイスと、ノートパソコンと、タブレットコンピュータと、セットトップボックスと、パーソナルデータアシスタントと、埋込コンピュータシステムと、電子書籍リーダなどとを含む。ネットワークは、任意の適切なネットワークを含むことができ、ネットワークには、イントラネット、インターネット、セルラーネットワーク、ローカルエリアネットワーク、衛星ネットワーク、または他のそのようなネットワーク、及び／またはそれらの組み合わせが含まれる。そのようなシステムのために使用される構成要素は、選択されるネットワーク及び／または環境の種類に、少なくとも部分的に基づき得る。そのようなネットワークを介して通信するためのプロトコル及び構成要素は、良く知られており、本明細書では詳細に説明しない。ネットワークを介した通信を、有線接続または無線接続と、それらの組み合わせとによって可能にすることができる。本実施例では、ネットワークはインターネットを含み、それは、環境が、要求を受信し、それに応答してコンテンツを供給するためのウェブサーバ９０６を含むからであるが、当業者には明白な通り、他のネットワークでは、同様の目的を果たす代替的なデバイスを使用することができる。
【００６２】
例示の環境は、少なくとも１つのアプリケーションサーバ９０８と、データストア９１０と、を含む。繋げられ得る、またはそうでなければ構成され得る、いくつかのアプリケーションサーバ、層または他の要素、プロセスまたは構成要素があり、それらが相互作用して、データを適切なデータストアから取得することなどのタスクを実行することができる、ということを理解すべきである。本明細書で使用するサーバを、ハードウェアデバイスまたは仮想コンピュータシステムなどの、さまざまな方法で実装することができる。いくつかの文脈では、サーバは、コンピュータシステム上で実行されているプログラミングモジュールを指すことができる。本明細書で使用する通り、別段に述べるか、文脈から明らかでない限り、「データストア」という用語は、データを格納し、データにアクセスし、データを読み出すことができる任意のデバイスまたはデバイスの組み合わせを指し、それは、任意の規格の、分散環境、仮想環境またはクラスタ化環境における、任意の組み合わせ及び任意の数の、データサーバとデータベースとデータストレージデバイスとデータストレージ媒体とを含むことができる。アプリケーションサーバは、クライアントデバイスのための１つまたは複数のアプリケーションの態様を実行するために必要に応じて、データストアに統合するための、任意の適切なハードウェアとソフトウェアとファームウェアとを含むことができ、アプリケーションのためのデータアクセスとビジネス論理とのうちの一部または全部を扱う。アプリケーションサーバは、アクセス制御サービスを、データストアと協力して提供することができ、またコンテンツを生成することができ、コンテンツには、テキスト、グラフィックス、音声、ビデオ、及び／またはユーザに提供されるために使用可能な他のコンテンツが含まれるが、これらに限定されず、コンテンツは、ユーザに、ウェブサーバによって、ハイパーテキストマークアップ言語（「ＨＴＭＬ」）、拡張マークアップ言語（「ＸＭＬ」）、ＪａｖａＳｃｒｉｐｔ、カスケーディングスタイルシート（「ＣＳＳ」）、または他の適切なクライアント側構造化言語の形式で提供され得る。クライアントデバイスに伝達されたコンテンツを、クライアントデバイスによって処理して、１つまたは複数の形式のコンテンツを提供することができ、形式には、音声で、視覚で、及び／または触覚、味覚及び／または嗅覚を含む他の感覚を通してユーザが知覚可能な形式を含むが、これらに限定されない。全ての要求と応答との取り扱いと、クライアントデバイス９０２とアプリケーションサーバ９０８との間でのコンテンツの提供とを、ウェブサーバによって、ＰＨＰを使用して扱うことができ、ＰＨＰとは、本実施例では、ハイパーテキストプリプロセッサ（「ＰＨＰ」）、Ｐｙｔｈｏｎ、Ｒｕｂｙ、Ｐｅｒｌ、Ｊａｖａ、ＨＴＭＬ、ＸＭＬ、または、他の適切なサーバ側構造化言語である。ウェブサーバ及びアプリケーションサーバが必須ではなく、単に例示的な構成要素であり、それは、本明細書で説明する構造化コードが、本明細書のどこかで説明する任意の適切なデバイスまたはホストマシン上で実行され得るためである、ということを理解すべきである。さらに、１つのデバイスによって実行されているとして本明細書で説明する動作は、そうでないことが文脈から明白でない限り、複数のデバイスによって集合的に実行され得、複数のデバイスは、分散システム及び／または仮想システムを形成し得る。
【００６３】
データストア９１０は、いくつかの別々のデータ表、データベース、データ文書、動的データストレージスキーム、及び／または本開示の特定の態様に関連するデータを格納するための他のデータストレージ機構及び媒体を含むことができる。たとえば、例示のデータストアは、生産側のためのコンテンツを提供するために使用され得る、生産データ９１２とユーザ情報９１６とを格納するための機構を含むことができる。データストアは、また、報告、分析、または他のそのような目的のために使用され得るログデータ９１４を格納するための機構を含むように示されている。ページ画像情報及びアクセス権情報などの、データストア内に格納される必要があり得る多くの他の態様があり得、それは、必要に応じて、上記で挙げた機構のうちの任意のものの中に、またはデータストア９１０内の追加機構内に格納され得る。データストア９１０は、それに関連する論理を通して、命令をアプリケーションサーバ９０８から受信し、それに応答して、データを、取得し、更新し、またはそうでない場合は処理するように動作可能である。アプリケーションサーバ９０８は、受信した命令に応答して、静的データ、動的データ、または静的データと動的データとの組み合わせを提供することができる。ウェブログ（ブログ）、ショッピングアプリケーション、ニュースサービス、及び他のそのようなアプリケーション内で使用されるデータなどの動的データを、本明細書で説明したサーバ側構造化言語によって生成することができ、または、アプリケーションサーバ上で動作している、またはアプリケーションサーバの制御の下で動作している、コンテンツ管理システム（「ＣＭＳ」）によって提供することができる。一実施例では、ユーザは、ユーザによって操作されているデバイスを通して、特定の種類のアイテムに対する検索要求を提出することができる。この場合、データストアは、ユーザの識別を確認するためにユーザ情報にアクセスすることができ、その種類のアイテムについての情報を取得するためにカタログ詳細情報にアクセスすることができる。情報を、その後、ユーザがユーザデバイス９０２上のブラウザを介して見ることができる、ウェブページ上の結果リスト内などで、ユーザに返すことができる。興味を持っている特定のアイテムについての情報を、ブラウザの専用ページまたはウィンドウで見ることができる。しかしながら、本開示の実施形態が、必ずしもウェブページのコンテンツに限定されておらず、要求が必ずしもコンテンツに対する要求ではない一般的な要求を処理することに、より広く適用され得る、ということに留意すべきである。
【００６４】
各サーバは、通常、そのサーバの一般管理と操作とのための実行可能プログラム命令を提供するオペレーティングシステムを含み、また、通常、サーバのプロセッサによって実行された時に、サーバがその意図された機能を実行することを可能にする命令を格納する、コンピュータ可読ストレージ媒体（たとえば、ハードディスク、ランダムアクセスメモリ、リードオンリメモリ、など）を含む。サーバのオペレーティングシステムと一般的な機能とのための適切な実装形態は、良く知られており、または市販であり、特に本明細書の開示を踏まえて、当業者によって容易に実装される。
【００６５】
一実施形態では、環境は、１つまたは複数のコンピュータネットワークまたは直接接続を使用して、通信リンクを介して相互接続されたいくつかのコンピュータシステムと構成要素とを活用する、分散コンピューティング環境及び／または仮想コンピューティング環境である。しかしながら、当業者は、そのようなシステムが、図９に例示したものよりも少ない数または多い数の構成要素を有するシステムにおいても同じように良く動作することができる、ということを理解する。したがって、図９のシステム９００の描写は、本来例示として、本開示の範囲を限定しないものとして受け取られるべきである。
【００６６】
さまざまな実施形態を、さらに、多種多様な動作環境で実装することができ、動作環境は、いくつかの場合では、任意の数のアプリケーションを動かすために使用され得る、１人または複数のユーザコンピュータ、コンピューティングデバイス、または処理デバイスを含むことができる。ユーザまたはクライアントデバイスは、標準オペレーティングシステムを実行している、デスクトップ、ノートパソコン、またはタブレットコンピュータなどの、多数の汎用パーソナルコンピュータのうちの任意のものと、モバイルソフトウェアを実行し、多数のネットワーキングプロトコルとメッセージングプロトコルとをサポートすることができる、セルラーデバイスと無線デバイスと携帯型デバイスとを含むことができる。そのようなシステムは、また、さまざまな市販のオペレーティングシステムのうちの任意のものと、開発及びデータベース管理などの目的のための他の知られているアプリケーションとを実行している、多数のワークステーションを含むことができる。これらのデバイスは、また、ダミー端末、シンクライアント、ゲームシステム、及びネットワークを介して通信することができる他のデバイスなどの、他の電子デバイスを含むことができる。これらのデバイスは、また、仮想マシン、ハイパーバイザ、及びネットワークを介して通信することができる他の仮想デバイスなどの、仮想デバイスを含むことができる。
【００６７】
本開示のさまざまな実施形態は、通信制御プロトコル／インターネットプロトコル（「ＴＣＰ／ＩＰ」）、ユーザデータグラムプロトコル（「ＵＤＰ」）、オープンシステムインターコネクション（「ＯＳＩ」）モデルのさまざまな層内で動作しているプロトコル、ファイル転送プロトコル（「ＦＴＰ」）、Ｕｎｉｖｅｒｓａｌ  Ｐｌｕｇ  ａｎｄ  Ｐｌａｙ（「ＵｐｎＰ」）、ネットワークファイルシステム（「ＮＦＳ」）、Ｃｏｍｍｏｎ  Ｉｎｔｅｒｎｅｔ  Ｆｉｌｅ  Ｓｙｓｔｅｍ（「ＣＩＦＳ」）、及びＡｐｐｌｅＴａｌｋ（登録商標）などの、さまざまな市販のプロトコルのうちの任意のものを使用する通信をサポートするための、当業者に良く知られている、少なくとも１つのネットワークを活用する。ネットワークは、たとえば、ローカルエリアネットワーク、広域ネットワーク、仮想プライベートネットワーク、インターネット、イントラネット、エクストラネット、公衆交換電話網、赤外線ネットワーク、無線ネットワーク、衛星ネットワーク、及びそれらの組み合わせであってよい。
【００６８】
ウェブサーバを活用する実施形態では、ウェブサーバは、さまざまなサーバまたは中間階層アプリケーションのうちの任意のものを実行することができ、ハイパーテキスト転送プロトコル（「ＨＴＴＰ」）サーバと、ＦＴＰサーバと、共通ゲートウェイインターフェース（「ＣＧＩ」）サーバと、データサーバと、Ｊａｖａ（登録商標）サーバと、Ａｐａｃｈｅ（登録商標）サーバと、ビジネスアプリケーションサーバとが含まれる。サーバは、また、Ｊａｖａ（登録商標）、Ｃ、Ｃ＃、またはＣ＋＋などの任意のプログラミング言語、またはＲｕｂｙ、ＰＨＰ、Ｐｅｒｌ（登録商標）、Ｐｙｔｈｏｎ（登録商標）、またはＴＣＬなどの任意のスクリプト言語、及びそれらの組み合わせで記述された１つまたは複数のスクリプトまたはプログラムとして実装され得る、１つまたは複数のウェブアプリケーションを実行することなどによって、プログラムまたはスクリプトを、ユーザデバイスからの要求に応答して、実行することができ得る。サーバは、また、データベースサーバを含むことができ、データベースサーバは、Ｏｒａｃｌｅ（登録商標）、Ｍｉｃｒｏｓｏｆｔ（登録商標）、Ｓｙｂａｓｅ（登録商標）、及びＩＢＭ（登録商標）からの市販のものと、ＭｙＳＱＬ、Ｐｏｓｔｇｒｅｓ、ＳＱＬｉｔｅ、ＭｏｎｇｏＤＢなどのオープンソースサーバと、構造化データまたは非構造化データを格納し、読み出し、アクセスすることが可能な任意の他のサーバとを、限定せずに含む。データベースサーバは、表ベースのサーバ、文書ベースのサーバ、非構造化サーバ、関係型サーバ、非関係型サーバ、またはこれら及び／または他のデータベースサーバの組み合わせを含むことができる。
【００６９】
環境は、上記で説明した通り、さまざまなデータストアと他のメモリとストレージ媒体とを含むことができる。これらは、コンピュータのうちの１つまたは複数にローカルの（及び／または内在する）ストレージ媒体上、またはネットワーク上のコンピュータのうちの任意のものまたは全部から遠隔のストレージ媒体上など、さまざまな場所に存在することができる。特定のセットの実施形態では、情報は、当業者には知られている、ストレージエリアネットワーク（「ＳＡＮ」）内に存在することができる。同様に、コンピュータ、サーバ、または他のネットワークデバイスに起因する機能を実行するための必要ファイルは、必要に応じて、ローカルに、及び／または遠隔で格納され得る。システムがコンピュータ化デバイスを含む場合、各そのようなデバイスは、バスを介して電気的に連結され得るハードウェア要素を含むことができ、その要素は、たとえば、少なくとも１つの中央処理装置（「ＣＰＵ」または「プロセッサ」）と、少なくとも１つの入力デバイス（たとえば、マウス、キーボード、コントローラ、タッチ画面、またはキーパッド）と、少なくとも１つの出力デバイス（たとえば、表示デバイス、プリンタ、またはスピーカ）とを含む。そのようなシステムは、また、ディスクドライブ、光ストレージデバイス、及びランダムアクセスメモリ（「ＲＡＭ」）またはリードオンリメモリ（「ＲＯＭ」）などの半導体ストレージデバイスなどの、１つまたは複数のストレージデバイスと、取り外し可能媒体デバイス、メモリカード、フラッシュカードなどを含むことができる。
【００７０】
そのようなデバイスは、また、上記で説明した通り、コンピュータ可読ストレージ媒体リーダと、通信デバイス（たとえば、モデム、ネットワークカード（無線または有線）、赤外線通信デバイス、など）と、作業メモリとを含むことができる。コンピュータ可読ストレージ媒体リーダは、遠隔、ローカル、固定、及び／または取り外し可能なストレージデバイスと、コンピュータ可読情報を一時的及び／またはより永久的に含み、格納し、送信し、読み出すためのストレージ媒体とを代表する、コンピュータ可読ストレージ媒体に接続され得、またはコンピュータ可読ストレージ媒体を受け入れるように構成され得る。システム及びさまざまなデバイスは、また、通常、少なくとも１つの作業メモリデバイス内に配置された、多数のソフトウェアアプリケーション、モジュール、サービス、または他の要素を含み、それらは、オペレーティングシステムと、クライアントアプリケーションまたはウェブブラウザなどのアプリケーションプログラムとを含む。代替的な実施形態が、上記で説明したものからの多数の変形物を有し得る、ということを理解すべきである。たとえば、カスタマイズされたハードウェアを、また、使用することができ、及び／または特定の要素を、ハードウェア、ソフトウェア（アプレットなどの携帯型ソフトウェアを含む）、またはその両方で実装することができる。さらに、ネットワーク入力／出力デバイスなどの他のコンピューティングデバイスへの接続を用いることができる。
【００７１】
コードまたはコードの一部を含むためのストレージ媒体及びコンピュータ可読媒体は、当技術分野で知られている、または使用されている、任意の適切な媒体を含むことができ、媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータなどの情報の格納及び／または送信のための任意の方法または技術で実装された、揮発性媒体及び非揮発性媒体、取り外し可能媒体及び固定媒体などであるが、これらに限定されない、ストレージ媒体と通信媒体とを含み、それらには、ＲＡＭ、ＲＯＭ、電気的消去可能プログラマブルリードオンリメモリ（「ＥＥＰＲＯＭ」）、フラッシュメモリまたは他のメモリ技術、コンパクトディスクリードオンリメモリ（「ＣＤ−ＲＯＭ」）、デジタル多用途ディスク（ＤＶＤ）または他の光ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージまたは他の磁気ストレージデバイス、または所望の情報を格納するために使用され得、システムデバイスによってアクセスされ得る任意の他の媒体を含む。本明細書で提供した開示と教示とに基づいて、当業者は、さまざまな実施形態を実装する、適切な他のやり方及び／または方法を理解する。
【００７２】
本開示の実施形態を、以下の条項を考慮して説明することができる。
第１項
識別プールブリッジングのためのコンピュータ実装方法であって、
実行可能命令を有して構成された１つまたは複数のコンピュータシステムの制御下において、
ユーザが、コンピューティングリソースサービスプロバイダによって提供されたインターフェースにアクセスするための認証情報のセットを活用して、マネージドディレクトリサービスにアクセスすることを可能にすることと、
前記コンピューティングリソースサービスプロバイダにおいて、識別プールを前記コンピューティングリソースサービスプロバイダの前記マネージドディレクトリサービス内に作成するための第１の要求を、前記ユーザから受信することであって、前記第１の要求が、認証情報の前記セットに少なくとも部分的に基づいた情報を備える、受信することと、
前記第１の要求の結果として、前記マネージドディレクトリサービスにおいて、前記識別プールと前記識別プール内のシャドウ管理アカウントとを作成することであって、前記シャドウ管理アカウントが、前記マネージドディレクトリサービス内のディレクトリへのアクセスを管理するために使用可能である、作成することと、
前記コンピューティングリソースサービスプロバイダを通して、前記マネージドディレクトリサービスに、前記ユーザからの、前記シャドウ管理アカウントにアクセスするためのディレクトリトークンを取得するための第２の要求を送信することと、
前記ディレクトリトークンを、前記マネージドディレクトリサービスから受信することと、
前記ユーザが前記受信ディレクトリトークンを活用して、アクションを前記ディレクトリ内で実行することを可能にすることと、
を備える、前記コンピュータ実装方法。
第２項
前記シャドウ管理アカウントが、前記マネージドディレクトリサービス内のディレクトリ内の１つまたは複数のリソースを管理するためにさらに使用可能である、第１項に記載のコンピュータ実装方法。
第３項
前記ユーザが、前記コンピューティングリソースサービスプロバイダによって提供される前記インターフェースにアクセスするための認証情報の前記セットを活用して、前記マネージドディレクトリサービスにアクセスすることを可能にすることが、前記コンピューティングリソースサービスプロバイダによって提供される識別管理サービスにおいて、前記ユーザが前記マネージドディレクトリサービスにアクセスする権限を与えられていることを確認すること、を条件とする、第１項から第２項に記載のコンピュータ実装方法。
第４項
前記ユーザが、前記マネージドディレクトリサービスへのアクセスを、他のユーザに、前記コンピューティングリソースサービスプロバイダによって提供される識別管理サービスにおいて、前記他のユーザのための１つまたは複数のポリシーを定義することによって、委任することができる、第１項から第３項に記載のコンピュータ実装方法。
第５項
前記ユーザが、識別管理サービス識別プール内のプリンシパルであり、前記識別管理サービス識別プールが、前記コンピューティングリソースサービスプロバイダの１つまたは複数のサービスへのアクセスを管理するために使用可能である、第１項から第４項に記載のコンピュータ実装方法。
第６項
前記識別プールと前記シャドウ管理者アカウントとの作成後、アプリケーションプログラミングインターフェースコマンドが、前記コンピューティングリソースサービスプロバイダ内で、前記ユーザによって使用可能になることを可能にして、前記マネージドディレクトリサービスに、前記ディレクトリトークンを前記ユーザに送信させること、をさらに備える、第１項から第５項に記載のコンピュータ実装方法。
第７項
コンピュータシステムであって、
１つまたは複数のプロセッサと、
前記コンピュータシステムによって実行されると、前記コンピュータシステムに、
コンピューティングリソースサービスプロバイダによって提供される１つまたは複数のサービスにアクセスするための認証情報を活用する要求者を、認証することと、
前記要求者から、識別プールを前記コンピューティングリソースサービスプロバイダによって提供されるマネージドディレクトリサービス内に作成するための要求を受信することであって、前記マネージドディレクトリサービスへの前記アクセスが、前記認証情報に少なくとも部分的に基づく、受信することと、
前記要求者を認証した後、前記識別プールを前記マネージドディレクトリサービス内に、前記要求者によって使用可能なアカウントを前記作成された識別プール内に、作成することと、
前記要求者が、前記アカウントに、前記マネージドディレクトリサービス内からアクセスすることを可能にすることと、
を行わせる命令を、その中に集合的に格納して有するメモリと、
を備える、前記コンピュータシステム。
第８項
前記識別プールと前記アカウントとの前記作成が、要求が前記マネージドディレクトリサービスに送信されて、前記アカウントに前記マネージドディレクトリサービス内からアクセスするためのディレクトリ認証情報を取得するように、アプリケーションプログラミングインターフェースコマンドをコール可能にする結果になる、第７項に記載のコンピュータシステム。
第９項
前記要求者が前記アカウントにアクセスすることを可能にすることが、
前記コンピューティングリソースサービスプロバイダを通して、前記マネージドディレクトリサービスに、前記要求者からの前記アプリケーションプログラミングインターフェースコマンドを送信して、前記アカウントにアクセスするためのディレクトリ認証情報を取得することと、
前記ディレクトリ認証情報を前記マネージドディレクトリサービスから受信することと、
前記受信ディレクトリ認証情報を前記要求者に提供することと、
を含む、第８項に記載のコンピュータシステム。
第１０項
前記要求者が、識別管理サービス識別プール内のプリンシパルであり、前記識別管理サービス識別プールが、前記コンピューティングリソースサービスプロバイダによって提供される前記１つまたは複数のサービスへのアクセスを管理するために使用可能である、第７項から第９項に記載のコンピュータシステム。
第１１項
前記要求者が、前記マネージドディレクトリサービスへのアクセスを、他のユーザに、前記他のユーザのための１つまたは複数のポリシーを前記識別管理サービス内で定義することによって、委任することができる、第１０項に記載のコンピュータシステム。
第１２項
前記アカウントが、前記マネージドディレクトリサービス内のディレクトリ内の１つまたは複数のリソースを管理するために使用可能である、第７項から第１１項に記載のコンピュータシステム。
第１３項
前記１つまたは複数のリソースが、前記マネージドディレクトリサービスの１人または複数のユーザと、前記マネージドディレクトリサービスの１つまたは複数のグループと、前記マネージドディレクトリサービス内のディレクトリ内の１つまたは複数のポリシー及び１つまたは複数のアプリケーションと、を含む、第１２項に記載のコンピュータシステム。
第１４項
コンピュータシステムの１つまたは複数のプロセッサによって実行されると、前記コンピュータシステムに、少なくとも、
コンピューティングリソースサービスプロバイダによって提供される１つまたは複数のサービスにアクセスするための認証情報を活用する要求者が、前記コンピューティングリソースサービスプロバイダによって提供されるマネージドディレクトリサービスにアクセスする権限を与えられていることを確認することと、
前記要求者から、識別プールを前記マネージドディレクトリサービス内に作成するための要求を受信することと、
前記要求者が前記マネージドディレクトリサービスにアクセスする権限を与えられていることを確認した後、前記識別プールを前記マネージドディレクトリサービス内に、前記要求者によって使用可能なアカウントを前記作成された識別プール内に、作成することと、
前記要求者が、前記アカウントに、前記マネージドディレクトリサービス内からアクセスすることを可能にすることと、
を行わせる実行可能命令を、その上に集合的に格納して有する、非一時的コンピュータ可読ストレージ媒体。
第１５項
前記識別プールと前記アカウントとの前記作成が、要求が前記マネージドディレクトリサービスに送信されて、前記アカウントに前記マネージドディレクトリサービス内からアクセスするためのディレクトリ認証情報を取得するように、アプリケーションプログラミングインターフェースコマンドをコール可能にする結果になる、第１４項に記載の非一時的コンピュータ可読ストレージ媒体。
第１６項
前記要求者が前記アカウントにアクセスすることを可能にすることが、
前記コンピューティングリソースサービスプロバイダを通して、前記マネージドディレクトリサービスに、前記要求者からの前記アプリケーションプログラミングインターフェースコマンドを送信して、前記アカウントにアクセスするためのディレクトリ認証情報を取得することと、
前記ディレクトリ認証情報を前記マネージドディレクトリサービスから受信することと、
前記受信ディレクトリ認証情報を前記要求者に提供することと、
を含む、第１５項に記載の非一時的コンピュータ可読ストレージ媒体。
第１７項
前記要求者が、識別管理サービス識別プール内のプリンシパルであり、前記識別管理サービス識別プールが、前記コンピューティングリソースサービスプロバイダによって提供される前記１つまたは複数のサービスへのアクセスを管理するために使用可能である、第１４項から第１６項に記載の非一時的コンピュータ可読ストレージ媒体。
第１８項
前記要求者が、前記マネージドディレクトリサービスへのアクセスを、他のユーザに、前記他のユーザのための１つまたは複数のポリシーを前記識別管理サービス内で定義することによって、委任することができる、第１７項に記載の非一時的コンピュータ可読ストレージ媒体。
第１９項
前記アカウントが、前記マネージドディレクトリサービス内の１つまたは複数のリソースを管理するために使用可能である、第１４項から第１８項に記載の非一時的コンピュータ可読ストレージ媒体。
第２０項
前記１つまたは複数のリソースが、前記マネージドディレクトリサービスの１人または複数のユーザと、前記マネージドディレクトリサービスの１つまたは複数のグループと、前記マネージドディレクトリサービス内のディレクトリ内の１つまたは複数のポリシー及び１つまたは複数のアプリケーションと、を含む、第１９項に記載の非一時的コンピュータ可読ストレージ媒体。
【００７３】
したがって、明細書及び図面は、限定的意味よりも、例示的な意味とみなされる。しかしながら、さまざまな改良と変更とを、それらに、特許請求の範囲に記載する本発明の広範囲な精神と範囲とから逸脱することなく行うことができる、ということは明らかである。
【００７４】
他の変形物は、本開示の精神に含まれる。したがって、開示する手法は、さまざまな改良物と代替的な構造物とを受け入れる余地があるが、それらの特定の例示的な実施形態が図面に示されており、上記で詳細に説明された。しかしながら、本発明を開示した具体的な形式または複数の形式に限定する意図はなく、反対に、意図は、添付の特許請求の範囲に定める本発明の精神と範囲とに含まれる、全ての改良物と代替的な構造物と同等物とを含むことである、ということを理解すべきである。
【００７５】
開示した実施形態を説明している文脈における（特に、以下の特許請求の範囲の文脈における）、「１つの（ａ）」、「１つの（ａｎ）」、及び「前記（ｔｈｅ）」という用語と、同様の指示対象と、の使用は、本明細書で別段に指示しない限り、または文脈が明らかに矛盾しない限り、単数形と複数形の両方を含むと解釈されるものである。「備える」、「有する」、「含む（ｉｎｃｌｕｄｉｎｇ）」、及び「含む（ｃｏｎｔａｉｎｉｎｇ）」という用語は、別段に記さない限り、オープンエンドな用語（つまり、「含むが、限定しない」を意味する）として解釈されるものである。「接続された」という用語は、未修飾で、物理的接続を指している時には、介在する何かがある場合でさえも、部分的または全体的に、内部に含まれている、付着している、または共に接合している、として解釈されるものである。本明細書における値の範囲の列挙は、その範囲内に含まれる各別々の値を個別に指す簡単な方法としての役割を果たすことを単に意図しており、本明細書で別段に指示しない限り、各別々の値は、あたかもそれが本明細書で個別に列挙されたかのように、本明細書の中に組み込まれる。「セット」（たとえば、「アイテムのセット」）または「サブセット」という用語の使用は、別段に記さない限り、または文脈が矛盾しない限り、１つまたは複数のメンバを備える非空の集合として解釈されるものである。さらに、別段に記さない限り、または文脈が矛盾しない限り、対応するセットの「サブセット」という用語は、必ずしも対応するセットの適切なサブセットを意味しないが、サブセット及び対応するセットは、等しいことがある。
【００７６】
「ＡとＢとＣとのうちの少なくとも１つ」または「ＡとＢとＣとのうちの少なくとも１つ」という形式の表現などの接続言語は、具体的に反対のことを述べない限り、または明確に文脈が矛盾しない限り、一般に、アイテム、期間、などが、ＡまたはＢまたはＣのいずれか、またはＡとＢとＣとから成るセットの任意の非空のサブセットであり得る、ということを示すために使用される文脈を用いて理解される。たとえば、３つのメンバを有するセットの例示的な実施例では、接続表現である、「ＡとＢとＣとのうちの少なくとも１つ」及び「ＡとＢとＣとのうちの少なくとも１つ」は、以下の、｛Ａ｝、｛Ｂ｝、｛Ｃ｝、｛Ａ、Ｂ｝、｛Ａ、Ｃ｝、｛Ｂ、Ｃ｝、｛Ａ、Ｂ、Ｃ｝というセットのうちの任意のものを指す。したがって、そのような接続言語は、一般に、特定の実施形態が、Ａのうちの少なくとも１つ、Ｂのうちの少なくとも１つ、及びＣのうちの少なくとも１つ、がそれぞれ存在することを必要とする、ということを暗示することを意図しない。
【００７７】
本明細書で説明したプロセスの動作を、本明細書で別段に指示しない限り、または明確に文脈が矛盾しない限り、任意の適切な順番で実行することができる。本明細書で説明したプロセス（またはそれらの変形物及び／または組み合わせ）を、実行可能命令を有して構成された１つまたは複数のコンピュータシステムの制御の下で実行することができ、１つまたは複数のプロセッサ上で、ハードウェアによって、またはそれらの組み合わせによって、集合的に動いているコード（たとえば、実行可能命令、１つまたは複数のコンピュータプログラム、または１つまたは複数のアプリケーション）として実装することができる。コードを、コンピュータ可読ストレージ媒体上に、たとえば、１つまたは複数のプロセッサによって実行可能な複数の命令を備えるコンピュータプログラムの形式で、格納することができる。コンピュータ可読ストレージ媒体は、非一時的であってよい。
【００７８】
本明細書で提供した、任意及び全ての実施例、または例示的言語（たとえば、「など」）の使用は、単に、本発明の実施形態をより良く明らかにすることを意図しており、別段に特許請求されない限り、本発明の範囲に制限を課さない。本明細書内のどの言葉も、非特許請求の要素が本発明の実施に必須であることを示している、と解釈されるべきでない。
【００７９】
本開示の好適な実施形態を本明細書で説明し、それには、本発明を実行するための、発明者達に知られている最良モードが含まれる。それらの好適な実施形態の変形物は、前述の説明を読むことで、当業者に明白になり得る。発明者達は、熟練の技術者がそのような変形物を必要に応じて用いることを予期し、発明者達は、本開示の実施形態が、本明細書で具体的に説明したものとは別の方法で実施されることを意図する。したがって、本開示の範囲は、本明細書に添付する特許請求の範囲で列挙する、本主題の全ての改良物と同等物とを、適用法が許す限りで含む。さらに、上述の要素の任意の組み合わせは、それらの全ての可能性のある変形物において、本明細書で別段に指示しない限り、または文脈が明確に矛盾しない限り、本開示の範囲によって包含される。
【図１】
2017503231.tif 000003
【図２】
2017503231.tif 000004
【図３】
2017503231.tif 000005
【図４】
2017503231.tif 000006
【図５】
2017503231.tif 000007
【図６】
2017503231.tif 000008
【図７】
2017503231.tif 000009
【図８】
2017503231.tif 000010
【図９】
2017503231.tif 000011
【国際調査報告】
2017503231.tif 000012
2017503231.tif 000013