(57)【特許請求の範囲】
【請求項１】
コンピュータによって実現される方法であって、
ルートノードを有するＬＤＡＰディレクトリにおいて、第２のアイデンティティドメインではなく第１のアイデンティティドメインに関連付けられるエンティティのアイデンティティを、前記ルートノードから派生する第１のディレクトリサブツリーに格納するステップと、
前記ＬＤＡＰディレクトリにおいて、前記第１のアイデンティティドメインではなく前記第２のアイデンティティドメインに関連付けられるエンティティのアイデンティティを、前記ルートノードから派生するが前記第１のディレクトリサブツリーとは別個である第２のディレクトリサブツリーに格納するステップと、
前記第２のアイデンティティドメインにではなく前記第１のアイデンティティドメインに対する第１のサービスインスタンスのデプロイメントに応じて、第１のクレデンシャルを生成するステップとを含み、前記第１のクレデンシャルは、前記ＬＤＡＰディレクトリを維持するＬＤＡＰサーバによる検査時に、前記第１のサービスインスタンスが、前記第２のディレクトリサブツリーに格納されたアイデンティティではなく前記第１のディレクトリサブツリーに格納されたアイデンティティにアクセスすることを前記ＬＤＡＰサーバに許可させ、前記方法はさらに、
前記第１のクレデンシャルを前記第１のサービスインスタンスに提供するステップと、
前記第１のアイデンティティドメインにではなく前記第２のアイデンティティドメインに対する第２のサービスインスタンスのデプロイメントに応じて、第２のクレデンシャルを生成するステップとを含み、前記第２のクレデンシャルは、前記ＬＤＡＰサーバによる検査時に、前記第２のサービスインスタンスが、前記第１のディレクトリサブツリーに格納されたアイデンティティではなく前記第２のディレクトリサブツリーに格納されたアイデンティティにアクセスすることを前記ＬＤＡＰサーバに許可させ、前記方法はさらに、
前記第２のクレデンシャルを前記第２のサービスインスタンスに提供するステップと、
クラウド管理コンポーネントが前記ルートノードから派生するすべてのディレクトリサブツリーに格納されたアイデンティティにアクセスすることを許可するステップとを含む、コンピュータによって実現される方法。
【請求項２】
前記第２のアイデンティティドメインではなく前記第１のアイデンティティドメインに関連付けられるユーザエンティティのアイデンティティを前記第１のディレクトリサブツリーに格納するステップと、
前記第２のアイデンティティドメインではなく前記第１のアイデンティティドメインに関連付けられるサービスインスタンスエンティティのアイデンティティを前記第１のディレクトリサブツリーに格納するステップと、
前記ユーザエンティティが前記ＬＤＡＰディレクトリを維持するＬＤＡＰサーバと直接対話するのを阻止するステップと、
前記サービスインスタンスエンティティが前記ユーザエンティティの代わりに前記ＬＤＡＰサーバと直接対話することを可能にするステップとを含む、請求項１に記載の、コンピュータによって実現される方法。
【請求項３】
複数のアイデンティティドメインからさまざまなアイデンティティドメインを規定するアクセスコントロールポリシーを前記ＬＤＡＰディレクトリに格納するステップと、
少なくとも部分的に前記アクセスコントロールポリシーに基づいて前記ＬＤＡＰディレクトリのアイデンティティドメイン関連のサブツリーへのアクセスを制御するステップとをさらに含む、請求項１に記載の、コンピュータによって実現される方法。
【請求項４】
前記第２のディレクトリサブツリーではなく前記第１のディレクトリサブツリーに適用されるアクセス制限を規定する第１のアクセスコントロールポリシーを前記ＬＤＡＰディレクトリに格納するステップと、
前記第１のディレクトリサブツリーではなく前記第２のディレクトリサブツリーに適用されるアクセス制限を規定する第２のアクセスコントロールポリシーを前記ＬＤＡＰディレクトリに格納するステップとをさらに含む、請求項３に記載の、コンピュータによって実現される方法。
【請求項５】
第１のユーザのログイン名に第１のアイデンティティドメインの識別子を添付することによって、前記第１のユーザのためのグローバルユニーク識別子を生成するステップと、
前記第１のユーザのための前記グローバルユニーク識別子を前記第１のディレクトリサブツリーに格納するステップと、
第２のユーザのログイン名に第２のアイデンティティドメインの識別子を添付することによって、前記第２のユーザのためのグローバルユニーク識別子を生成するステップと、
前記第２のユーザのための前記グローバルユニーク識別子を前記第２のディレクトリサブツリーに格納するステップとをさらに含む、請求項１に記載の、コンピュータによって実現される方法。
【請求項６】
前記第１のアイデンティティドメインの識別子を規定する第１のログインウェブページを、第１のユニフォーム・リソース・ロケータ（ＵＲＬ：uniformresourcelocator）に関連付けて格納するステップと、
前記第２のアイデンティティドメインの識別子を規定する第２のログインウェブページを、前記第１のＵＲＬとは異なる第２のＵＲＬに関連付けて格納するステップと、
特定のユーザから、前記第１のログインウェブページまたは前記第２のログインウェブページである特定のログインウェブページを介して、前記特定のユーザのログイン名を受取るステップと、
（ａ）前記特定のユーザの前記ログイン名および（ｂ）前記特定のログインウェブページによって規定される特定のアイデンティティドメイン識別子の両方に基づいて、前記特定のユーザのためのグローバルユニーク識別子を復元するステップと、
前記特定のユーザのための前記グローバルユニーク識別子に基づいて前記特定のユーザを認証するステップとをさらに含む、請求項５に記載の、コンピュータによって実現される方法。
【請求項７】
前記第１のアイデンティティドメインに対する特定のサービスインスタンスのデプロイメントに応じて、前記特定のサービスインスタンスの名前および任意に生成されたパスワードの両方を規定するバインドクレデンシャルを自動的に生成するステップと、
前記第１のアイデンティティドメインに対する前記特定のサービスインスタンスの前記デプロイメントに応じて、新しいアクセスコントロールポリシーを前記ＬＤＡＰディレクトリに自動的に追加するステップとを含み、前記新しいアクセスコントロールポリシーは、前記特定のサービスインスタンスの前記名前を有するエンティティが、前記特定のサービスインスタンスがデプロイされているアイデンティティドメインに関する情報にしかアクセスできないことを規定する、請求項１に記載の、コンピュータによって実現される方法。
【請求項８】
規定された動作を１つ以上のプロセッサに実行させることができる特定の命令を格納するコンピュータ読取可能記憶メモリであって、前記特定の命令は、
ルートノードを有するＬＤＡＰディレクトリにおいて、第２のアイデンティティドメインではなく第１のアイデンティティドメインに関連付けられるエンティティのアイデンティティを、前記ルートノードから派生する第１のディレクトリサブツリーに格納する命令と、
前記ＬＤＡＰディレクトリにおいて、前記第１のアイデンティティドメインではなく前記第２のアイデンティティドメインに関連付けられるエンティティのアイデンティティを、前記ルートノードから派生するが前記第１のディレクトリサブツリーとは別個である第２のディレクトリサブツリーに格納する命令と、
前記第２のアイデンティティドメインにではなく前記第１のアイデンティティドメインに対する第１のサービスインスタンスのデプロイメントに応じて、第１のクレデンシャルを生成する命令とを含み、前記第１のクレデンシャルは、前記ＬＤＡＰディレクトリを維持するＬＤＡＰサーバによる検査時に、前記第１のサービスインスタンスが、前記第２のディレクトリサブツリーに格納されたアイデンティティではなく前記第１のディレクトリサブツリーに格納されたアイデンティティにアクセスすることを前記ＬＤＡＰサーバに許可させ、前記特定の命令はさらに、
前記第１のクレデンシャルを前記第１のサービスインスタンスに提供する命令と、
前記第１のアイデンティティドメインにではなく前記第２のアイデンティティドメインに対する第２のサービスインスタンスのデプロイメントに応じて、第２のクレデンシャルを生成する命令とを含み、前記第２のクレデンシャルは、前記ＬＤＡＰサーバによる検査時に、前記第２のサービスインスタンスが、前記第１のディレクトリサブツリーに格納されたアイデンティティではなく前記第２のディレクトリサブツリーに格納されたアイデンティティにアクセスすることを前記ＬＤＡＰサーバに許可させ、前記特定の命令はさらに、
前記第２のクレデンシャルを前記第２のサービスインスタンスに提供する命令と、
クラウド管理コンポーネントが前記ルートノードから派生するすべてのディレクトリサブツリーに格納されたアイデンティティにアクセスすることを許可する命令とを含む、コンピュータ読取可能記憶メモリ。
【請求項９】
システムであって、
１つ以上のプロセッサと、
特定の命令を格納するコンピュータ読取可能記憶メモリとを含み、前記特定の命令は、
ルートノードを有するＬＤＡＰディレクトリにおいて、第２のアイデンティティドメインではなく第１のアイデンティティドメインに関連付けられるエンティティのアイデンティティを、前記ルートノードから派生する第１のディレクトリサブツリーに格納する命令と、
前記ＬＤＡＰディレクトリにおいて、前記第１のアイデンティティドメインではなく前記第２のアイデンティティドメインに関連付けられるエンティティのアイデンティティを、前記ルートノードから派生するが前記第１のディレクトリサブツリーとは別個である第２のディレクトリサブツリーに格納する命令と、
前記第２のアイデンティティドメインにではなく前記第１のアイデンティティドメインに対する第１のサービスインスタンスのデプロイメントに応じて、第１のクレデンシャルを生成する命令とを含み、前記第１のクレデンシャルは、前記ＬＤＡＰディレクトリを維持するＬＤＡＰサーバによる検査時に、前記第１のサービスインスタンスが、前記第２のディレクトリサブツリーに格納されたアイデンティティではなく前記第１のディレクトリサブツリーに格納されたアイデンティティにアクセスすることを前記ＬＤＡＰサーバに許可させ、前記特定の命令はさらに、
前記第１のクレデンシャルを前記第１のサービスインスタンスに提供する命令と、
前記第１のアイデンティティドメインにではなく前記第２のアイデンティティドメインに対する第２のサービスインスタンスのデプロイメントに応じて、第２のクレデンシャルを生成する命令とを含み、前記第２のクレデンシャルは、前記ＬＤＡＰサーバによる検査時に、前記第２のサービスインスタンスが、前記第１のディレクトリサブツリーに格納されたアイデンティティではなく前記第２のディレクトリサブツリーに格納されたアイデンティティにアクセスすることを前記ＬＤＡＰサーバに許可させ、前記特定の命令はさらに、
前記第２のクレデンシャルを前記第２のサービスインスタンスに提供する命令と、
クラウド管理コンポーネントが前記ルートノードから派生するすべてのディレクトリサブツリーに格納されたアイデンティティにアクセスすることを許可する命令とを含む、システム。
【請求項１０】
前記特定の命令はさらに、
第１のユーザのログイン名に第１のアイデンティティドメインの識別子を添付することによって、前記第１のユーザのためのグローバルユニーク識別子を生成する命令と、
前記第１のユーザのための前記グローバルユニーク識別子を前記第１のディレクトリサブツリーに格納する命令と、
第２のユーザのログイン名に第２のアイデンティティドメインの識別子を添付することによって、前記第２のユーザのためのグローバルユニーク識別子を生成する命令と、
前記第２のユーザのための前記グローバルユニーク識別子を前記第２のディレクトリサブツリーに格納する命令と、
前記第１のアイデンティティドメインの識別子を規定する第１のログインウェブページを、第１のユニフォーム・リソース・ロケータ（ＵＲＬ）に関連付けて格納する命令と、
前記第２のアイデンティティドメインの識別子を規定する第２のログインウェブページを、前記第１のＵＲＬとは異なる第２のＵＲＬに関連付けて格納する命令と、
特定のユーザから、前記第１のログインウェブページまたは前記第２のログインウェブページである特定のログインウェブページを介して、前記特定のユーザのログイン名を受取る命令と、
（ａ）前記特定のユーザの前記ログイン名および（ｂ）前記特定のログインウェブページによって規定される特定のアイデンティティドメイン識別子の両方に基づいて、前記特定のユーザのためのグローバルユニーク識別子を復元する命令と、
前記特定のユーザのための前記グローバルユニーク識別子に基づいて前記特定のユーザを認証する命令とを含む、請求項９に記載のシステム。
【請求項１１】
前記特定の命令はさらに、
前記第１のアイデンティティドメインに対する特定のサービスインスタンスのデプロイメントに応じて、前記特定のサービスインスタンスの名前および任意に生成されたパスワードの両方を規定するバインドクレデンシャルを自動的に生成する命令と、
前記第１のアイデンティティドメインに対する前記特定のサービスインスタンスの前記デプロイメントに応じて、新しいアクセスコントロールポリシーを前記ＬＤＡＰディレクトリに自動的に追加する命令とを含み、前記新しいアクセスコントロールポリシーは、前記特定のサービスインスタンスの前記名前を有するエンティティが、前記特定のサービスインスタンスがデプロイされているアイデンティティドメインに関する情報にしかアクセスできないことを規定する、請求項９または１０に記載のシステム。
【請求項１２】
規定された動作を１つ以上のプロセッサに実行させるコンピュータ読取可能プログラムであって、前記動作は、
ルートノードを有するＬＤＡＰディレクトリにおいて、第２のドメインではなく第１のドメインに関連付けられるエンティティのアイデンティティを、前記ルートノードから派生する第１のディレクトリサブツリーに格納するステップと、
前記ＬＤＡＰディレクトリにおいて、前記第１のドメインではなく前記第２のドメインに関連付けられるエンティティのアイデンティティを、前記ルートノードから派生するが前記第１のディレクトリサブツリーとは別個である第２のディレクトリサブツリーに格納するステップと、
前記第２のドメインにではなく前記第１のドメインに対する第１のサービスインスタンスのデプロイメントに応じて、第１のクレデンシャルを生成するステップとを含み、前記第１のクレデンシャルは、前記ＬＤＡＰディレクトリを維持するＬＤＡＰサーバによる検査時に、前記第１のサービスインスタンスが、前記第２のディレクトリサブツリーに格納されたアイデンティティではなく前記第１のディレクトリサブツリーに格納されたアイデンティティにアクセスすることを前記ＬＤＡＰサーバに許可させ、前記動作はさらに、
前記第１のクレデンシャルを前記第１のサービスインスタンスに提供するステップと、
前記第１のドメインにではなく前記第２のドメインに対する第２のサービスインスタンスのデプロイメントに応じて、第２のクレデンシャルを生成するステップとを含み、前記第２のクレデンシャルは、前記ＬＤＡＰサーバによる検査時に、前記第２のサービスインスタンスが、前記第１のディレクトリサブツリーに格納されたアイデンティティではなく前記第２のディレクトリサブツリーに格納されたアイデンティティにアクセスすることを前記ＬＤＡＰサーバに許可させ、前記動作はさらに、
前記第２のクレデンシャルを前記第２のサービスインスタンスに提供するステップと、
クラウド管理コンポーネントが前記ルートノードから派生するすべてのディレクトリサブツリーに格納されたアイデンティティにアクセスすることを許可するステップとを含む、コンピュータ読取可能プログラム。
【請求項１３】
装置であって、
ルートノードを有するＬＤＡＰディレクトリにおいて、第２のドメインではなく第１のドメインに関連付けられるエンティティのアイデンティティを、前記ルートノードから派生する第１のディレクトリサブツリーに格納するための手段と、
前記ＬＤＡＰディレクトリにおいて、前記第１のドメインではなく前記第２のドメインに関連付けられるエンティティのアイデンティティを、前記ルートノードから派生するが前記第１のディレクトリサブツリーとは別個である第２のディレクトリサブツリーに格納するための手段と、
前記第２のドメインにではなく前記第１のドメインに対する第１のサービスインスタンスのデプロイメントに応じて、第１のクレデンシャルを生成するための手段とを含み、前記第１のクレデンシャルは、前記ＬＤＡＰディレクトリを維持するＬＤＡＰサーバによる検査時に、前記第１のサービスインスタンスが、前記第２のディレクトリサブツリーに格納されたアイデンティティではなく前記第１のディレクトリサブツリーに格納されたアイデンティティにアクセスすることを前記ＬＤＡＰサーバに許可させ、前記装置はさらに、
前記第１のクレデンシャルを前記第１のサービスインスタンスに提供するための手段と、
前記第１のドメインにではなく前記第２のドメインに対する第２のサービスインスタンスのデプロイメントに応じて、第２のクレデンシャルを生成するための手段とを含み、前記第２のクレデンシャルは、前記ＬＤＡＰサーバによる検査時に、前記第２のサービスインスタンスが、前記第１のディレクトリサブツリーに格納されたアイデンティティではなく前記第２のディレクトリサブツリーに格納されたアイデンティティにアクセスすることを前記ＬＤＡＰサーバに許可させ、前記装置はさらに、
前記第２のクレデンシャルを前記第２のサービスインスタンスに提供するための手段と、
クラウド管理コンポーネントが前記ルートノードから派生するすべてのディレクトリサブツリーに格納されたアイデンティティにアクセスすることを許可するための手段とを含む、装置。
【請求項１４】
第１のユーザのログイン名に第１のドメインの識別子を添付することによって、前記第１のユーザのためのグローバルユニーク識別子を生成するための手段と、
前記第１のユーザのための前記グローバルユニーク識別子を前記第１のディレクトリサブツリーに格納するための手段と、
第２のユーザのログイン名に第２のドメインの識別子を添付することによって、前記第２のユーザのためのグローバルユニーク識別子を生成するための手段と、
前記第２のユーザのための前記グローバルユニーク識別子を前記第２のディレクトリサブツリーに格納するための手段と、
前記第１のドメインの識別子を規定する第１のログインウェブページを、第１のユニフォーム・リソース・ロケータ（ＵＲＬ）に関連付けて格納するための手段と、
前記第２のドメインの識別子を規定する第２のログインウェブページを、前記第１のＵＲＬとは異なる第２のＵＲＬに関連付けて格納するための手段と、
特定のユーザから、前記第１のログインウェブページまたは前記第２のログインウェブページである特定のログインウェブページを介して、前記特定のユーザのログイン名を受取るための手段と、
（ａ）前記特定のユーザの前記ログイン名および（ｂ）前記特定のログインウェブページによって規定される特定のドメイン識別子の両方に基づいて、前記特定のユーザのためのグローバルユニーク識別子を復元するための手段と、
前記特定のユーザのための前記グローバルユニーク識別子に基づいて前記特定のユーザを認証するための手段とを含む、請求項１３に記載の装置。
【請求項１５】
前記第１のドメインに対する特定のサービスインスタンスのデプロイメントに応じて、前記特定のサービスインスタンスの名前および任意に生成されたパスワードの両方を規定するバインドクレデンシャルを自動的に生成するための手段と、
前記第１のドメインに対する前記特定のサービスインスタンスの前記デプロイメントに応じて、新しいアクセスコントロールポリシーを前記ＬＤＡＰディレクトリに自動的に追加するための手段とを含み、前記新しいアクセスコントロールポリシーは、前記特定のサービスインスタンスの前記名前を有するエンティティが、前記特定のサービスインスタンスがデプロイされているアイデンティティドメインに関する情報にしかアクセスできないことを規定する、請求項１３または１４に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、米国特許法第１１９条（ｅ）に基づき、「ＬＤＡＰベースのマルチテナント・インクラウド・アイデンティティ管理システム」と題され、２０１３年３月１５日に出願された米国仮特許出願第６１／８０１，０４８号と、「ＬＤＡＰベースのマルチテナント・インクラウド・アイデンティティ管理システム」と題され、２０１３年９月５日に出願された米国特許出願第１４／０１９，０５１号との優先権を主張するものであって、その内容全体があらゆる目的で引用によりこの明細書中に援用されている。本願は、「共有アイデンティティ管理アーキテクチャ」と題され、２０１２年９月７日に出願され、その内容全体があらゆる目的で引用によりこの明細書中に援用されている米国仮特許出願第６１／６９８，４６３号；「テナント自動化システム」と題され、２０１２年９月７日に出願され、その内容全体があらゆる目的で引用によりこの明細書中に援用されている米国仮特許出願第６１／６９８，４１３号；「サービスデプロイメントインフラストラクチャ」と題され、２０１２年９月７日に出願された米国仮特許出願第６１／６９８，４５９号；「クラウドインフラストラクチャ」と題され、２０１３年３月１４日に出願され、その内容全体があらゆる目的で引用によりこの明細書中に援用されている米国仮特許出願第６１／７８５，２９９号；および、「マルチテナンシアイデンティティ管理システム」と題され、２０１３年３月１５日に出願され、その内容全体があらゆる目的で引用によりこの明細書中に援用されている米国特許出願第１３／８３８，８１３号に関する。
【０００２】
背景
以下の開示は概してコンピュータセキュリティに関し、より特定的には、さまざまな別個のアイデンティティドメインに分割されるクラウドコンピューティング環境内におけるアイデンティティ管理に関する。
【背景技術】
【０００３】
クラウドコンピューティングは、ネットワーク（典型的にインターネット）上のサービスとして送達されるコンピューティングリソース（例えばハードウェアおよびソフトウェア）の使用を必要とする。クラウドコンピューティングはユーザのデータ、ソフトウェアおよび演算をリモートサービスに委託する。クラウドコンピューティングは、例えば、ソフトウェア・アズ・ア・サービス（Software as a Service：ＳａａＳ）またはプラットフォーム・アズ・ア・サービス（Platform as a Service：ＰａａＳ）を提供するために用いることができる。ＳａａＳを用いるビジネスモデルにおいては、ユーザは、アプリケーションソフトウェアおよびデータベースに対してアクセス可能にされている。クラウドプロバイダは、アプリケーションが実行されているインフラストラクチャおよびプラットフォームを管理することができる。ＳａａＳプロバイダは一般にサブスクリプションフィーを用いてアプリケーションの価格設定を行なう。ＳａａＳは、ビジネスにおいて、ハードウェアおよびソフトウェアのメンテナンスおよびサポートをクラウドプロバイダに外部委託することによって、情報技術運用コストを減らす可能性を提供し得る。この外部委託により、ビジネスにおいて、情報技術運用コストをハードウェア／ソフトウェア費および人件費から他の情報技術目標の達成に再配分することが可能となり得る。さらに、アプリケーションが中心にホストされていれば、ユーザが新しいソフトウェアをインストールしなくても更新を公開することができる。しかしながら、ユーザのデータがクラウドプロバイダのサーバ上に格納されているので、そのデータが認証なしにアクセスされてしまう可能性があることについて懸念する組織もあるだろう。
【０００４】
エンドユーザは、ウェブブラウザまたはライトウェイトデスクトップまたはモバイルアプリケーションによってクラウドベースのアプリケーションにアクセスすることができる。一方で、ビジネスソフトウェアおよびユーザのデータは、そのビジネスおよびそれらのユーザから遠隔の位置にあるサーバ上に格納することができる。クラウドコンピューティングは、少なくとも理論的には、管理しやすさを向上し、メンテナンスをより少なくすることで、エンタープライズがそれらのアプリケーションをより迅速にデプロイすることを可能にする。クラウドコンピューティングは、少なくとも理論的には、しばしば変動する予測不可能なビジネス要求を満たすために、情報技術マネージャがより迅速にリソースを調整することを可能にする。
【０００５】
アイデンティティ管理（ＩＤＭ：Identity management）は、コンピュータシステムのユーザについての情報を制御するタスクである。このような情報は、このようなユーザのアイデンティティを認証する情報を含み得る。このような情報は、それらのユーザがアクセスする権限が与えられているのがどのデータであるのかを記述する情報を含み得る。このような情報は、それらのユーザがさまざまなシステムリソース（例えばファイル、ディレクトリ、アプリケーション、通信ポート、メモリセグメントなど）に対して実行する権限が与えられているのがどの動作であるのかを記述する情報を含み得る。ＩＤＭはまた、各々のユーザについての記述情報、ならびに、その記述情報に対するアクセスおよび変更を誰が如何にして行い得るかについての記述情報の管理を含み得る。
【０００６】
場合によっては、クラウドコンピューティング環境は、クラウドコンピューティング環境を用いた各々の別個の組織のための別個のＩＤＭシステムまたはＩＤＭシステムの別個のインスタンスを含み得るだろう。しかしながら、このような方式は、労力を無駄に重ねてコンピューティングリソースを浪費するものとみなされる可能性がある。
【発明の概要】
【課題を解決するための手段】
【０００７】
概要
本発明のいくつかの実施例は、クラウドコンピューティング環境において実現され、複数の別個のアイデンティティドメインに分割されるアイデンティティ管理（ＩＤＭ）システムを含む。
【０００８】
本発明の実施例においては、一組の構築物がすべて整列することにより、シングルＩＤＭシステムの抽象化または「テナントスライスされた」ビューを作成する。このシングルＩＤＭシステムは複数の別個のコンポーネントまたはサブシステムを含み得る。ＩＤＭシステムは、より稠密に利用されるように、複数の独立した別個の「テナント」またはＩＤＭシステム顧客間で共有することができる。このため、別個のＩＤＭシステムを各々の別個の顧客のためにインスタンス化する必要はない。シングルＩＤＭシステムは、ＩＤＭシステムの各々のテナントのために、そのテナントに特有のＩＤＭシステムの仮想図をそのテナントのユーザに提示することができるように構成することができる。シングルＬＤＡＰディレクトリは、ＬＤＡＰディレクトリの別個のパーティションまたはサブツリーにすべてのテナントのためのエンティティについてのアイデンティティを格納することができる。各々のこのようなパーティションまたはサブツリーは、テナントのための別個のアイデンティティドメイン専用とされる。クラウドコンピューティング環境のコンポーネントにより、特定のサブツリー内におけるＬＤＡＰエントリが、その特定のサブツリーに対応するアイデンティティドメインにデプロイされたサービスインスタンスのみにアクセス可能となることが確実にされる。
【０００９】
本発明の実施例は仮想化の概念を使用し得る。ＩＤＭシステムの別個のビューは、複数の別個の仮想マシンが単一のホスト演算装置上で仮想化され得る態様と概念的に同様の態様で、シングルＩＤＭシステム内で仮想化することができる。この仮想化は、特定の態様でＩＤＭシステムを構成することによって達成することができる。ＩＤＭシステムは、概念的に垂直に順に積重ねられた上層と下層とを含む複数の別個の層を含み得る。上層は少なくとも分割することができる。ＩＤＭシステムにおいては、さまざまな異なるサービス（例えば認証および／または認可サービス）を、ＩＤＭシステムのさまざまな異なるテナントに関連付けることができる。ＩＤＭシステムは、各々のテナントが、そのテナント専用であるＩＤＭシステム「スライス」またはパーティションとしか対話できないようにするために、各々のテナントを分離することができる。こうして、ＩＤＭシステムは、テナント間における分離を実施することができる。
【００１０】
本発明の具体的な実施例はコンピュータによって実現される方法を提供する。当該方法は、ルートノードを有するＬＤＡＰディレクトリにおいて、第２のアイデンティティドメインではなく第１のアイデンティティドメインに関連付けられるエンティティのアイデンティティを、ルートノードから派生する第１のディレクトリサブツリーに格納するステップと、ＬＤＡＰディレクトリにおいて、第１のアイデンティティドメインではなく第２のアイデンティティドメインに関連付けられるエンティティのアイデンティティを、ルートノードからも派生するが第１のディレクトリサブツリーとは別個である第２のディレクトリサブツリーに格納するステップと、第１のアイデンティティドメインにデプロイされたサービスインスタンスが第２のディレクトリサブツリーに格納されるアイデンティティにアクセスするのを阻止するステップと、第２のアイデンティティドメインにデプロイされたサービスインスタンスが第１のディレクトリサブツリーに格納されるアイデンティティにアクセスするのを阻止するステップとを含む。
【００１１】
一例においては、コンピュータによって実現される方法はさらに、第２のアイデンティティドメインではなく第１のアイデンティティドメインに関連付けられるユーザエンティティのアイデンティティを第１のディレクトリサブツリーに格納するステップと、第２のアイデンティティドメインではなく第１のアイデンティティドメインに関連付けられるサービスインスタンスエンティティのアイデンティティを第１のディレクトリサブツリーに格納するステップと、ユーザエンティティがＬＤＡＰディレクトリを維持するＬＤＡＰサーバと直接対話するのを阻止するステップと、サービスインスタンスエンティティがユーザエンティティの代わりにＬＤＡＰサーバと直接対話することを可能にするステップとを含む。
【００１２】
一例においては、コンピュータによって実現される方法はさらに、第２のアイデンティティドメインにではなく第１のアイデンティティドメインに対する第１のサービスインスタンスのデプロイメントに応じて、第１のクレデンシャルを生成するステップを含み、第１のクレデンシャルは、ＬＤＡＰディレクトリを維持するＬＤＡＰサーバによる検査時に、第１のサービスインスタンスが、第２のディレクトリサブツリーに格納されたアイデンティティではなく第１のディレクトリサブツリーに格納されたアイデンティティにアクセスすることをＬＤＡＰサーバに許可させ；当該方法はさらに、第１のクレデンシャルを第１のサービスインスタンスに提供するステップと；第１のアイデンティティドメインにではなく第２のアイデンティティドメインに対する第２のサービスインスタンスのデプロイメントに応じて、第２のクレデンシャルを生成するステップとを含み、第２のクレデンシャルは、ＬＤＡＰサーバによる検査時に、第２のサービスインスタンスが、第１のディレクトリサブツリーに格納されたアイデンティティではなく第２のディレクトリサブツリーに格納されたアイデンティティにアクセスすることをＬＤＡＰサーバに許可させ；当該方法はさらに、第２のクレデンシャルを第２のサービスインスタンスに提供するステップを含む。
【００１３】
一例においては、コンピュータによって実現される方法はさらに、複数のアイデンティティドメインからさまざまなアイデンティティドメインを規定するアクセスコントロールポリシーをＬＤＡＰディレクトリに格納するステップと；少なくとも部分的にアクセスコントロールポリシーに基づいてＬＤＡＰディレクトリのアイデンティティドメイン関連のサブツリーへのアクセスを制御するステップとを含む。
【００１４】
一例においては、コンピュータによって実現される方法はさらに、第２のディレクトリサブツリーではなく第１のディレクトリサブツリーに適用されるアクセス制限を規定する第１のアクセスコントロールポリシーをＬＤＡＰディレクトリに格納するステップと；第１のディレクトリサブツリーではなく第２のディレクトリサブツリーに適用されるアクセス制限を規定する第２のアクセスコントロールポリシーをＬＤＡＰディレクトリに格納するステップとを含む。
【００１５】
一例においては、コンピュータによって実現される方法はさらに、第１のユーザのログイン名に第１のアイデンティティドメインの識別子を添付することによって、第１のユーザのためのグローバルユニーク識別子を生成するステップと；第１のユーザのためのグローバルユニーク識別子を第１のディレクトリサブツリーに格納するステップと；第２のユーザのログイン名に第２のアイデンティティドメインの識別子を添付することによって、第２のユーザのためのグローバルユニーク識別子を生成するステップと；第２のユーザのためのグローバルユニーク識別子を第２のディレクトリサブツリーに格納するステップとを含む。
【００１６】
一例においては、コンピュータによって実現される方法はさらに、第１のアイデンティティドメインの識別子を規定する第１のログインウェブページを、第１のユニフォーム・リソース・ロケータ（ＵＲＬ：uniform resource locator）に関連付けて格納するステップと；第２のアイデンティティドメインの識別子を規定する第２のログインウェブページを、第１のＵＲＬとは異なる第２のＵＲＬに関連付けて格納するステップと；特定のユーザから、第１のログインウェブページまたは第２のログインウェブページである特定のログインウェブページを介して、特定のユーザのログイン名を受取るステップと；（ａ）特定のユーザのログイン名および（ｂ）特定のログインウェブページによって規定される特定のアイデンティティドメイン識別子の両方に基づいて、特定のユーザのためのグローバルユニーク識別子を復元するステップと；特定のユーザのためのグローバルユニーク識別子に基づいて特定のユーザを認証するステップとを含む。
【００１７】
一例においては、コンピュータによって実現される方法はさらに、第１のアイデンティティドメインに対する特定のサービスインスタンスのデプロイメントに応じて、特定のサービスインスタンスの名前および任意に生成されたパスワードの両方を規定するバインドクレデンシャルを自動的に生成するステップと；第１のアイデンティティドメインに対する特定のサービスインスタンスのデプロイメントに応じて、新しいアクセスコントロールポリシーをＬＤＡＰディレクトリに自動的に追加するステップとを含む。当該新しいアクセスコントロールポリシーは、特定のサービスインスタンスの名前を有するエンティティが、特定のサービスインスタンスがデプロイされているアイデンティティドメインに関する情報にしかアクセスできないことを規定する。
【図面の簡単な説明】
【００１８】
【図１】本発明の実施例に係る、クラウドコンピューティング環境において実現されるマルチテナント（またはマルチアイデンティティドメイン）ＩＤＭシステムにおいて用いられるＬＤＡＰアイデンティティストアの例を示すブロック図である。
【図２】本発明の実施例に係る、ＬＤＡＰディレクトリが編成され得るサブツリー構造の例を示す図である。
【図３】本発明の実施例に係る、ＬＤＡＰディレクトリツリーのアイデンティティドメインサブツリーの例を示す図である。
【図４】本発明の実施例に係る、ＬＤＡＰディレクトリツリーの顧客サポート代表（ＣＳＲ：customer support representative）サブツリーの例を示す図である。
【図５】本発明の実施例に係る、ＬＤＡＰディレクトリツリーのＣｌｏｕｄ９Ｃｏｎｔｅｘｔサブツリーの例を示す図である。
【図６】本発明の実施例に係る、シングルテナント（シングルアイデンティティドメイン）フュージョンアプリケーションインスタンスとオラクルアイデンティティマネージャ（ＯＩＭ：Oracle Identity Manager）を含む共有ＩＤＭシステムのコンポーネントとの間の対話の例を示す図である。
【図７】本発明の実施例に従って用いられ得るシステム環境のコンポーネントを示す簡略ブロック図である。
【図８】本発明の実施例に従って用いられ得るコンピュータシステムの簡略ブロック図である。
【図９】マルチテナントＬＤＡＰシステムを含むクラウドコンピューティング環境の例を示すブロック図である。
【図１０】本発明の実施例に係る、特定のアイデンティティドメインのために、アイデンティティドメイン規定のログインウェブページを生成および使用するための技術例を示すフロー図である。
【図１１】本発明の実施例に係る、特定のアイデンティティドメインに新しいユーザアイデンティティを追加するための技術例を示すフロー図である。
【図１２】本発明の実施例に係る、特定のアイデンティティドメインに新しいサービスインスタンスをデプロイするための技術例を示すフロー図である。
【図１３】本発明の実施例に係る、あるサービスインスタンスのデプロイメント時にそのサービスインスタンスに供給されたバインドクレデンシャルを用いてそのサービスインスタンスを認証するための技術例を示すフロー図である。
【図１４】本発明の実施例に係る演算装置を示す機能ブロック図である。
【発明を実施するための形態】
【００１９】
詳細な説明
以下の説明では、本発明の実施例が十分に理解されるようにするために、説明の目的で具体的詳細を記載する。しかし、これらの具体的詳細がなくても本発明を実施できることは明らかであろう。この明細書に添付され、この明細書中に引例により援用されている付録１は、本発明の実施例に関する追加の詳細を提供するものである。
【００２０】
図１は、本発明の実施例に係る、クラウドコンピューティング環境において実現されるマルチテナント（またはマルチアイデンティティドメイン）ＩＤＭシステムにおいて用いられるＬＤＡＰアイデンティティストアの例を示すブロック図である。アイデンティティストア１０２はＬＤＡＰディレクトリとして実現することができる。オラクルインターネットディレクトリ（ＯＩＤ：Oracle Internet Directory）はこのようなＬＤＡＰディレクトリの一例である。アイデンティティストア１０２内には、さまざまなアイデンティティドメイン内で認識されるさまざまなユーザアイデンティティが格納され得る。アイデンティティストア１０２内では、アイデンティティドメイン識別子の前には各々の完全修飾ユーザアイデンティティ（fully qualified user identity）を付けることができる。アイデンティティストア１０２ドメイン内にアイデンティティを有するユーザ例であるBill Smithは、完全に修飾されていない「bill.smith@ford.com」などの電子メールアドレス１０４を有し得る。一実施例においては、ＩＤＭシステムは、あるユーザがＩＤＭシステムによって管理されるアイデンティティドメインにログインしようと試みたときに、そのユーザに対し、彼の電子メールアドレス１０４を与えるよう要求することができる。一実施例においては、ユーザは、ログインウェブページを介してアイデンティティドメインにログインするよう試みることができる。このログインウェブページのＵＲＬは、そのアイデンティティドメインのみに特有のものである。次いで、ＩＤＭシステムは、ユーザの完全修飾ユーザアイデンティティを形成するために、電子メールアドレスの前に（ログインウェブページから既知となる）そのアイデンティティドメインについてのアイデンティティドメイン識別子を付けることができる。
【００２１】
一実施例に従うと、別々の顧客が、ＩＤＭシステム内において異なるアイデンティティドメインを確立することができる。例えば、図１に示されるように、顧客ＧＥはＧＥアイデンティティドメイン１０６を確立することができ、顧客３Ｍは３Ｍアイデンティティドメイン１０８を確立することができ、顧客ＦｏｒｄはＦｏｒｄアイデンティティドメイン１１０を確立することができる。これらのアイデンティティドメイン１０６〜１１０の各々は、そのアイデンティティドメインに特有の別個のログインウェブページを有することができる。このようなログインウェブページは、ユーザが対応するアイデンティティドメインにログインしようと試みる際にユーザに提示することができる。ログインウェブページは、電子メールアドレス１０４およびパスワードのためのフィールドを含み得る。
【００２２】
ユーザが特定のアイデンティティドメインへのログインに成功した後、ＩＤＭシステムは、特定のアイデンティティドメインに関連付けられ（他のアイデンティティドメインには関連付けられない）、かつＩＤＭシステム内でリソースを保護する認可ユニットに提示することができるクレデンシャルをそのユーザに与えることができる。一実施例に従うと、特定のアイデンティティドメインに属するリソースを保護する認可ユニットは、当該認可ユニットがクレデンシャルが特定のアイデンティティドメインに関連付けられると判断した場合、ユーザがそのリソースにアクセスすることを許可するだけとなるだろう。このような保護されたリソースは顧客データを含み得る。例えば、図１においては、ＧＥアイデンティティドメイン１０６はＧＥデータ１１２を含んでもよく、３Ｍアイデンティティドメイン１０８は３Ｍデータ１１４を含んでもよく、Ｆｏｒｄアイデンティティドメイン１１０はＦｏｒｄデータ１１６を含んでもよい。
【００２３】
上述のように、さまざまな顧客が、ＩＤＭシステム内で別個のアイデンティティドメインを確立することができる。典型的には、これらの顧客は、このようなアイデンティティドメインを確立するためにいくらかのサブスクリプションフィーを支払う。しかしながら、一実施例においては、ＩＤＭシステムは、これらの顧客のビジネスパートナーを認識することもできる。これらの顧客のビジネスパートナーとは、必ずしも顧客自身ではある必要はなく、必ずしもＩＤＭシステム内でアイデンティティドメインを有する必要はない。一実施例においては、各々のアイデンティティドメインは１人以上のパートナーに関連付けることができるが、これら１人以上のパートナーは、ＩＤＭシステムにおけるアイデンティティドメインを有していても有していなくてもよい。例えば、図１に示されるように、ＧＥアイデンティティドメイン１０６はＡＣＭＥパートナー１１８およびＦｏｒｄパートナー１２０に関連付けることができる。パートナーは、ＩＤＭシステムの顧客であろうとなかろうと、パートナー識別子を有することができる。このパートナー識別子は、ＩＤＭシステム内でそのパートナーをユニークに識別するものであって、その同じパートナーを複数の異なるアイデンティティドメインに関連付けることを可能にする。上述の例に続いて、３Ｍアイデンティティドメイン１０８は、（ＧＥアイデンティティドメイン１０６にも関連付けられた）Ｆｏｒｄパートナー１２０および別のパートナー１２２に関連付けることができる。パートナー識別子は、そのパートナー識別子が関係するパートナーが顧客でもある（すなわち、アイデンティティドメインを確立した）場合、アイデンティティドメイン識別子に関連付けることができるかまたは当該アイデンティティドメイン識別子と同じとなり得る。上述の例に続いて、（Ｆｏｒｄパートナー１２０のパートナー識別子にリンクされる識別子を有する可能性のある）Ｆｏｒｄアイデンティティドメイン１１０は、ＸＹＺパートナー識別子１２４および別のパートナー識別子１２６に関連付けることができる。
【００２４】
一実施例においては、クラウドコンピューティング環境においてホストされたＰａａＳまたはＳａａＳをサブスクライブする顧客のアイデンティティドメインは各々、ユニークなアイデンティティドメイン識別子に関連付けられる。このようなアイデンティティドメイン識別子はクラウドコンピューティング環境内においてユニークであり得る。アイデンティティドメイン識別子は、ユニーク識別子を生成するアルゴリズムを用いて生成することができる。一実施例においては、アイデンティティドメイン識別子は、そのアイデンティティドメイン識別子によって識別されるアイデンティティドメインに属するデータおよびメタデータの各アイテムに関連付けられる。一実施例においては、アイデンティティドメインに属するリソースを保護するのに用いられるアクセスコントロールポリシーも、そのアイデンティティドメインについてのアイデンティティドメイン識別子に関連付けられる。
【００２５】
アイデンティティドメイン識別子は、各々のアイデンティティドメインを、そのアイデンティティドメインを確立した顧客のための仮想プライベート環境にするために用いることができる。アイデンティティドメイン識別子は、クラウドコンピューティング環境内において維持されるリポジトリに含まれるオブジェクトをアイデンティティドメインによって分離させるために、このようなリポジトリが複数のアイデンティティドメイン間で共有される場合であっても、直接的または間接的に用いることができる。このような分離は、例えば、リポジトリを構成する共有の物理記憶装置内において確立されるストライピングまたはパーティションによって達成することができる。各々のストライプまたはパーティションは、そのストライプまたはパーティションに含まれるオブジェクトが属するアイデンティティドメインのアイデンティティドメイン識別子に関連付けることができる。さまざまなタイプのこのようなリポジトリに対してさまざまな分離構造を用いることができる。例えば、リポジトリがＬＤＡＰディレクトリである場合、オブジェクトのためのデータを含むＬＤＡＰエントリの前に、それらのオブジェクトが属するアイデンティティドメインのためのアイデンティティドメイン識別子を付けることができる。ポリシーリポジトリにおいては、それらのオブジェクトに関係するポリシーの前に、同様に、このようなアイデンティティドメイン識別子を付けることができる。別の例では、リポジトリがリレーショナルデータベース管理システム（ＲＤＢＭＳ：relational database management system）スキーマを含む場合、アイデンティティドメイン識別子は、仮想プライベートデータベース（ＶＰＤ：virtual private database）分割のためのアーティファクトとして用いることができる。
【００２６】
図１に関連付けて上述したように、アイデンティティストア１０２はＬＤＡＰディレクトリとして実現することができる。ＬＤＡＰディレクトリ内のエントリはアイデンティティドメインに特有のものであり得る。アイデンティティドメイン内における別個のサービスインスタンス間でシングルサインオン（ＳＳＯ：Single Sign-On）機能を利用可能にするのに有用な属性がＬＤＡＰエントリにおいて規定され得る。このような属性は、アイデンティティストア１０２内においてユニークになるように制約することができるユーザ名、ログオンＩＤおよび他の識別子を含み得る。
【００２７】
一実施例においては、完全に修飾されていないユーザ名は、クラウドコンピューティング環境内全体においてユニークである必要はないが、特定のアイデンティティドメイン内においてユニークであることが必要となり得る。このため、電子メールアドレス「bill.smith@ford.com」は、複数のアイデンティティドメインにおいて不完全修飾ユーザ名として存在することができるが、一実施例においては、同じアイデンティティドメイン内において複数回存在することはできない。図１においては、アイデンティティストア１０２は、同じ電子メールアドレス「bill.smith@ford.com」を含む複数の完全修飾ユーザアイデンティティを含むものとして示され、「GE.bill.smith@ford.com」は、ＧＥアイデンティティドメイン１０６内において認識された完全修飾ユーザアイデンティティであり、「3M.bill.smith@ford.com」は、３Ｍアイデンティティドメイン１０８内において認識された完全修飾ユーザ識別子であり、「FORD.bill.smith@ford.com」は、Ｆｏｒｄアイデンティティドメイン１１０内において認識された完全修飾ユーザ識別子である。このため、完全修飾ユーザ識別子は、＜アイデンティティドメイン識別子＞．＜電子メールアドレス＞の形を取ることができる。一実施例においては、ユーザの電子メールアドレスがアイデンティティストア１０２におけるＬＤＡＰエントリの「ｕｉｄ」属性内に格納される。
【００２８】
一実施例においては、ＬＤＡＰスキーマは属性およびオブジェクトクラスを規定することができる。ＬＤＡＰスキーマが規定することのできる属性は、例えば、（ａ）アイデンティティドメインのためのグローバルユニークＩＤ（ＧＵＩＤ：globally unique ID）、（ｂ）アイデンティティドメインの名前、（ｃ）サービスインスタンス識別子、（ｄ）サービスインスタンスの名前、および（ｅ）サービスインスタンスタイプ（例えば、ＪＡＶＡ（登録商標）サービスインスタンス、データベースサービスインスタンス、フュージョンアプリケーションインスタンスなど）を含み得る。ＬＤＡＰスキーマが規定することのできるオブジェクトクラスは、例えば、（ａ）システム識別子を特定するのに用いることができるオブジェクトクラス、（ｂ）システム識別子グループを特定するのに用いることができるオブジェクトクラス、（ｃ）ＣＳＲアドミニストレータを特定するのに用いることができるオブジェクトクラス、および（ｄ）クラウドサービスタイプ（例えば、ＪＡＶＡサービス、データベースサービスなど）を定義するのに用いることができるオブジェクトクラスを含み得る。
【００２９】
一実施例においては、ＬＤＡＰスキーマは、さまざまな異なるタイプのエンティティのためにさまざまな異なるグループのプロパティを規定することができる。ＬＤＡＰスキーマがプロパティを規定することができるエンティティは、例えば、（ａ）アイデンティティドメインエントリ、（ｂ）ユーザエントリ、（ｃ）グループエントリ、（ｄ）システム識別子、（ｅ）アイデンティティドメインアドミニストレータ、および（ｆ）サービスインスタンスアドミニストレータを含み得る。
【００３０】
ＬＤＡＰスキーマは、アイデンティティドメインエントリのために、（ａ）アイデンティティドメイン名、（ｂ）グローバルユニークアイデンティティドメイン識別子、および（ｃ）アイデンティティドメイン状態を含むプロパティを規定することができる。アイデンティティドメイン名は、アイデンティティドメインを確立した顧客によって選択されるようにアイデンティティドメインの名前を表わすテキスト値であってもよい。ユーザのための完全修飾ユーザ識別子を生成するために、そのユーザの電子メールアドレスの前にアイデンティティドメイン名を付けることができる。グローバルユニークアイデンティティドメイン識別子は自動的に生成されたＧＵＩＤであってもよい。このＧＵＩＤは、データベース内でアイデンティティドメインのためのデータストライプを表わすことができる。代替的には、このＧＵＩＤを用いて、他の形式の共有リポジトリを分割して、その共有リポジトリ内において、あるアイデンティティドメインのデータを他のすべてのアイデンティティドメインのデータから分離することにより、アイデンティティドメインデータを、例えば、別個のＩＤＭポリシードメイン、別個のＬＤＡＰサブツリー、別個のファイルシステムフォルダなどに編成することができる。アイデンティティドメイン状態は、例えば、アイデンティティドメインがそのとき試用期間内にあるかどうかなどのアイデンティティドメインの状態を維持し得る。
【００３１】
ＬＤＡＰスキーマは、ユーザエントリのために、（ａ）一般名、（ｂ）未修飾ユーザ名、（ｃ）ユーザのためのディレクトリユニーク識別子、（ｄ）ユーザのためのＧＵＩＤ、および（ｅ）ユーザが属するアイデンティティドメインのアイデンティティドメイン識別子を含むプロパティを規定することができる。一般名は、アイデンティティドメインを確立した顧客によって規定され得るものであって、標準的なＬＤＡＰ属性である。未修飾ユーザ名は、あるアイデンティティドメインに、そのアイデンティティドメイン特有のウェブページからログインするときに、ユーザがユーザ名フィールドに入力するユーザ名であり得る。例えば、このユーザ名はユーザの電子メールアドレスであってもよい。ディレクトリユニーク識別子は、ディレクトリにおけるユーザエントリをユニークに特定する。例えば、上述のように、ディレクトリユニーク識別子は、＜アイデンティティドメイン識別子＞．＜電子メールアドレス＞の形式を取ることができる。ＧＵＩＤは、ユーザエントリのディレクトリユニーク識別子を有するユーザを参照するすべてのＬＤＡＰエントリに配置される、自動的に生成される識別子であってもよい。以下の記載から分かるように、ユーザエントリのためのディレクトリユニーク識別子は、オラクルアクセスマネージャ（ＯＡＭ：Oracle Access Manager）およびオラクルアイデンティティマネージャ（ＯＩＭ：Oracle Identity Manager）を含む複数のアイデンティティドメインシステムの多くのさまざまなコンポーネント内においてユニーク識別子として用いることができる。
【００３２】
ＬＤＡＰスキーマは、グループエントリのために、（ａ）一般名、（ｂ）グループのためのディレクトリユニーク識別子、（ｃ）グループのためのＧＵＩＤ、および（ｄ）ユーザが属するアイデンティティドメインのアイデンティティドメイン識別子を含むプロパティを規定することができる。一般名は、アイデンティティドメインを確立した顧客によって規定され得るものであって、標準的なＬＤＡＰ属性である。ディレクトリユニーク識別子は、ディレクトリにおけるグループエントリをユニークに特定する。ディレクトリユニーク識別子は＜アイデンティティドメイン識別子＞．＜一般名＞の形式を取ることができる。ＧＵＩＤは、グループユーザエントリのディレクトリユニーク識別子を有するグループを参照するすべてのＬＤＡＰエントリに配置される、自動的に生成される識別子であってもよい。
【００３３】
一実施例においては、ＬＤＡＰスキーマは、特別のタイプのユーザを表わすシステム識別子を規定することができる。特にシステムユーザのためのオブジェクトクラスはこれらの特別のタイプのユーザを特定することができる。これらの特別のタイプのユーザについての属性は、ユーザエントリに関連付けて上に述べたものと同じであってもよい。
【００３４】
一実施例においては、ＬＤＡＰスキーマは、アイデンティティドメインアドミニストレータおよびサービスインスタンスアドミニストレータについてのシステムアカウントを規定することができる。これらは、アイデンティティドメインおよびサービスインスタンスを処理および管理するための特別なアカウントであり得る。アイデンティティドメインアドミニストレータエントリはアイデンティティドメインアドミニストレータグループのメンバであってもよい。アイデンティティドメインアドミニストレータのアイデンティティは、＜アイデンティティドメイン識別子＞．＜アイデンティティドメインアドミニストレータ名＞の形式を取ることができる。サービスは、アイデンティティドメイン内において１つ以上のインスタンスを有することができる。これらのサービスインスタンスの各々は別個のサービスインスタンスアドミニストレータを有することができる。
【００３５】
ＬＤＡＰディレクトリは、特定の目的専用の複数のサブツリーを含むツリーとして構築することができる。図２は、本発明の実施例に係る、ＬＤＡＰディレクトリが編成され得るサブツリー構造の例を示す図である。ツリーは、ユーザコンテナを含むことができ、コンテナをグループ分けする。これらのコンテナはオラクルインターネットディレクトリにおける独創的な（out-of-the-box）コンテナであり得る。ツリーにおけるこれらのコンテナの階層的に下方に、アプリケーションアイデンティティユーザコンテナおよびアプリケーションアイデンティティグループコンテナを作成することができる。これらの後者のコンテナは、フュージョンアプリケーションプロビジョニングプロセスの一部として作成することができる。
【００３６】
システム識別子サブツリーはシステム識別子をすべて含み得る。このようなシステム識別子は、クラウドコンピューティング環境においてシステムを管理するのに用いることができる。システム識別子は、このようなシステム識別子専用のオブジェクトクラスによって特定可能である。このオブジェクトクラスにより、他の種類のユーザアイデンティティに適用されるものに比べて、システムユーザアイデンティティを特定することがより容易になり、異なるポリシーをシステムユーザアイデンティティに適用することが可能となる。システムユーザアイデンティティのオブジェクトクラスはより多くの一般ユーザのオブジェクトクラスのサブクラスであってもよい。一実施例においては、システムユーザアイデンティティのオブジェクトクラスは、その親オブジェクトクラスに含まれるもの以上の属性は含まない。
【００３７】
図３は、本発明の実施例に係る、ＬＤＡＰディレクトリツリーのアイデンティティドメインサブツリーの例を示す図である。このサブツリーは以下のアーティファクトを含み得る：（ａ）アイデンティティドメイン（例えば「インテル（Intel）」）のアイデンティティドメイン識別子を規定するルートノード、（ｂ）アイデンティティドメインに属するユーザのアイデンティティを格納することできるユーザコンテナ、および（ｃ）アイデンティティドメインに属するグループのアイデンティティを格納することのできるグループコンテナ。ユーザコンテナは、アイデンティティドメイン環境においてアイデンティティドメインアドミニストレータ識別子および通常のユーザの識別子を含み得る。グループコンテナはグループ識別子を含み得る。
【００３８】
アイデンティティドメインサブツリーは、認証プロバイダのためのプロキシユーザとして用いることができるユーザのアイデンティティを含み得るシステム識別子コンテナを含み得る。このようなプロキシユーザは、フュージョンアプリケーションの場合、多言語サポート属性に対する権利を有し得る。
【００３９】
アイデンティティドメインサブツリーは、ユーザオブジェクトクラスのインスタンスであるオブジェクトを含み得るユーザコンテナを含むことができる。このサブツリーに対するパスワードポリシーは決して満期にならないように設定することができる。オラクルアクセスマネージャポリシーは、このサブツリーにおけるユーザアイデンティティに適用することができる。アイデンティティドメインのためのアイデンティティドメインアドミニストレータグループにおけるアイデンティティドメインアドミニストレータは、このようなユーザアイデンティティを管理するための許可を得ている。顧客サポート代表グループにおける顧客サポート代表はまた、このようなユーザアイデンティティを管理するための許可を得ている。
【００４０】
アイデンティティドメインサブツリーは、特定のエンタープライズの役割のためのグループコンテナを含み得る。グループコンテナは、グループオブジェクトクラスのインスタンスであるオブジェクトを含み得る。アイデンティティドメインのためのアイデンティティドメインアドミニストレータグループにおけるアイデンティティドメインアドミニストレータは、このようなグループアイデンティティを管理するための許可を得ている。顧客サポート代表グループにおける顧客サポート代表はまた、このようなグループアイデンティティを管理するための許可を得ている。
【００４１】
アイデンティティドメインサブツリーは、アプリケーションアイデンティティユーザエイリアスを含むアプリケーションアイデンティティユーザコンテナを含み得る。アイデンティティドメインサブツリーは、アプリケーションアイデンティティグループエイリアスを含むアプリケーションアイデンティティグループコンテナを含み得る。
【００４２】
図４は、本発明の実施例に係る、ＬＤＡＰディレクトリツリーの顧客サポート代表（ＣＳＲ：customer support representative）サブツリーの例を示す図である。このサブツリーは、ユーザサブツリーおよびグループサブツリーを含み得る。ユーザサブツリーはＣＳＲユーザアイデンティティのためのコンテナであってもよい。グループサブツリーは、ＣＳＲグループアイデンティティのためのコンテナであってもよい。一実施例においては、アイデンティティストアアドミニストレータグループにおけるユーザだけが、これらのサブツリーにおけるユーザおよびグループを作成するよう許可される。
【００４３】
図５は、本発明の実施例に係る、ＬＤＡＰディレクトリツリーのＣｌｏｕｄ９Ｃｏｎｔｅｘｔサブツリーの例を示す図である。このサブツリーは、サービスタイプについてのサブツリー、サービス定義、およびサービスタイプについての役割テンプレートを含み得る。新しいサービスインスタンス作成要求がＩＤＭシステムにおいて受取られると、役割テンプレートサブツリーにおける役割は、アイデンティティドメインに特有のコンテナにクローン化され得る。
【００４４】
一実施例においては、ＬＤＡＰディレクトリツリーは、ＰａａＳ環境においてサポートされるさまざまなサービスタイプを定義するサービスノードを含み得る。このようなサービスタイプは、例えば、ＪＡＶＡサービス、Ａｐｅｘサービスおよびウェブセンタサービスを含み得る。
【００４５】
一実施例においては、ＬＤＡＰディレクトリのエントリには、オラクルアイデンティティ管理フレームワーク（ＩＧＦ：Oracle Identity Governance Framework）ＡＰＩおよび／またはユーザ／役割（Ｕ／Ｒ：user/role）ＡＰＩを用いてアクセスすることができる。これらのＡＰＩはマルチテナント特有の方法を含み得る。いくつかの方法はユーザエントリにアクセスするのに用いることができる。アイデンティティドメインユニークにアクセスするために、ｉｄｘｕｓｅｒｒｏｌｅ．Ｕｓｅｒ．ｇｅｔＴｅｎａｎｔｕｎｉｑｕｅｎａｍｅ（）法を実行することができる。アイデンティティドメインユニーク識別子にアクセスするために、ｉｄｘｕｓｅｒｒｏｌｅ．Ｕｓｅｒ．ｇｅｔＴｅｎａｎｔｕｉｄ（）法を実行することができる。いくつかの方法はグループエントリにアクセスするのに用いることができる。アイデンティティドメインユニークにアクセスするために、ｉｄｘｕｓｅｒｒｏｌｅ．Ｒｏｌｅ．ｇｅｔＴｅｎａｎｔｕｎｉｑｕｅｎａｍｅ（）法を実行することができる。アイデンティティドメインユニーク識別子にアクセスするために、ｉｄｘｕｓｅｒｒｏｌｅ．Ｒｏｌｅ．ｇｅｔＴｅｎａｎｔｕｉｄ（）法を実行することができる。アイデンティティドメイングローバルユニーク識別子にアクセスするために、ｉｄｘｕｓｅｒｒｏｌｅ．Ｒｏｌｅ．ｇｅｔＴｅｎａｎｔｇｕｉｄ（）法を実行することができる。一実施例においては、アプリケーションは、ユーザプロファイルアイデンティティドメイン名、ユーザプロファイルアイデンティティドメインＧＵＩＤ、ユーザプロファイルアイデンティティドメインユニーク識別子、役割プロファイルアイデンティティドメイン名、役割プロファイルアイデンティティドメインＧＵＩＤ、および役割プロファイルアイデンティティドメインユニーク識別子などのＬＤＡＰ属性として定義されるいくつかの定数を用いることができる。
【００４６】
本発明の実施例に従うと、クラウドコンピューティング環境内における各サービスタイプ（例えば、ＪＡＶＡサービス、フュージョンアプリケーションサービスなど）は、共有のＩＤＭシステムによって保護される。アイデンティティストア１０２は、クラウドコンピューティング環境内において既知であるユーザアイデンティティを格納することができる。アイデンティティストア１０２は、これらのユーザのグループメンバーシップをカプセル化することができる。一実施例においては、オラクルプラットフォームセキュリティサービス（ＯＰＳＳ：Oracle Platform Security Services）は、サービスインスタンスのために安全機能を提供することができる。このような安全機能は、例えば、認可、クレデンシャルおよびキー管理、監査などを含み得る。任意のタイプの各サービスインスタンスは、それ自体のコンポジットＯＰＳＳセキュリティをインスタンス毎に格納させることができる。セキュリティストアは、そのインスタンスのセキュリティアーティファクトすべてのためにサービスインスタンスに対して分離をもたらすことができる。このようなアーティファクトは、認可を実施するのに用いられるものを含み得る。このようなアーティファクトは、バックエンドシステムを接続するためにクレデンシャルを獲得して消費するのに用いられるものを含み得る。このようなアーティファクトは、セキュア・ソケット・レイヤ（ＳＳＬ：secure socket layers）接続を確立し、データを暗号化するためにキーおよび証明書を獲得して消費するのに用いられるものを含み得る。このようなアーティファクトは、サービスインスタンスによって公開される機能の監査を管理するのに用いられるものを含み得る。この監査は、特定のサービスインスタンスに関して誰が、何を、いつ行なったかについての質問に答えるために用いることができる。
【００４７】
クラウドコンピューティング環境および共有のＩＤＭ内においては、セキュリティストアは、アイデンティティストア１０２のインスタンスとは別個でありかつ異なっているオラクルインターネットディレクトリ（ＯＩＤ）に残すことができる。シングルＯＩＤは、クラウドコンピューティング環境における複数のサービスインスタンスのためのセキュリティストアをホストすることができる。一実施例においては、セキュリティストアへのアクセスは、セキュリティストアに接続するためにサービスインスタンスの中間層コンポーネントが使用できるバインドアイデンティティによって制御することができる。バインドアイデンティティは、当該バインドアイデンティティが関係するサービスインスタンスのセキュリティストアに対してのみ可視性を有する程度にまで、ディレクトリアクセスコントロールリスト（ＡＣＬ：access control list）によって詳細に調べることができる。バインドアイデンティティは、ＯＰＳＳによって管理されるＯＰＳＳブートストラップ情報として、その対応するサービスインスタンス内に維持することができる。
【００４８】
アイデンティティプロビジョニングはクラウドコンピューティング環境内で行なうことができる。本発明の実施例は、サービスプロビジョニングマークアップ言語（ＳＰＭＬ：Service Provisioning Markup Language）を使用することができる。一実施例においては、ＳＰＭＬコールが行なわれると、フュージョンアプリケーションインスタンスは、「１」のアイデンティティドメインＧＵＩＤをＩＤＭシステムに渡し得る。これらの環境下では、ＳＰＭＬ要求を処理する共有のＩＤＭ  ＯＩＤインスタンスは、正確なアイデンティティドメインＧＵＩＤを得ることができ、要求を適切に処理することができる。代替的な実施例においては、別個のアイデンティティドメインが別個のフュージョンアプリケーションインスタンスをホストすることができる。このような環境下では、各々のフュージョンアプリケーションインスタンスは、正確なアイデンティティドメインＧＵＩＤ（例えば、そのフュージョンアプリケーションインスタンスが属するアイデンティティドメインのアイデンティティドメインＧＵＩＤ）を共有のＩＤＭ  ＯＩＤインスタンスに渡すことができる。各々のフュージョンアプリケーションインスタンスは、適切なアイデンティティドメインＧＵＩＤをコールバックペイロードで受取ることができる。
【００４９】
一実施例においては、別個のフュージョンアプリケーションインスタンスは各々、共有のＩＤＭシステムと通信するために同じアプリケーションアイデンティティクレデンシャルを用いることができる。しかしながら、代替的な実施例においては、デプロイされたフュージョンアプリケーションインスタンスは各々、共有のＩＤＭシステムと通信する際に用いることができるそれ自体の別個のアプリケーションアイデンティティクレデンシャルを有し得る。共有のＩＤＭシステムは、このようなフュージョンアプリケーションインスタンスデプロイメント特有のアプリケーションアイデンティティクレデンシャルを用いて、共有のＩＤＭシステムと通信しているフュージョンアプリケーションインスタンスのアイデンティティドメインＧＵＩＤを得ることができる。図６は、本発明の実施例に係る、シングルテナント（シングルアイデンティティドメイン）のフュージョンアプリケーションインスタンスとオラクルアイデンティティマネージャ（ＯＩＭ）を含む共有のＩＤＭシステムのコンポーネントとの間の対話の例を示す図である。
【００５０】
フュージョンアプリケーションインスタンスは、読取り動作のためにＩＧＦを用い、書込み動作のためにＳＰＭＬを用いることができる。一実施例においては、フュージョンアプリケーションインスタンスが「１」のアイデンティティドメインＧＵＩＤを共有のＩＤＭシステムに渡す場合、ＩＧＦ層は正確なアイデンティティドメインＧＵＩＤを得ることができる。一実施例に従うと、シングルアイデンティティドメインクライアントおよびマルチアイデンティティドメインクライアントはともに、共有のＩＤＭシステムによって、正確なアイデンティティドメインＧＵＩＤを渡すと予想される。代替的な実施例においては、共有のＩＤＭシステムは、シングルアイデンティティドメインクライアントが「１」のアイデンティティドメインＧＵＩＤ値をパラメータとして渡すと予想する。このような環境下では、ＩＧＦ層は、適切なアイデンティティドメインＧＵＩＤ（例えば、そのフュージョンアプリケーションインスタンスが属するアイデンティティドメインのアイデンティティドメインＧＵＩＤ）を獲得するために、オラクル仮想マシン（ＯＶＭ：Oracle Virtual Machine）リハイドレーション中にセットアップすることができる構成設定を用いることができる。
【００５１】
一実施例においては、共有のＩＤＭシステムプロセスにおけるＯＩＭモジュールがユーザアイデンティティを作成するためにＳＰＭＬ要求を処理すると、そのＯＩＭモジュールは、フュージョンアプリケーションインスタンスに対して２個のユーザ識別情報、すなわち（ａ）ユーザログイン名および（ｂ）ユーザＧＵＩＤ、を提供することができる。ユーザログイン名についてのＳＰＭＬ属性は「ユーザ名（username）」と称することができる。一実施例においては、「ユーザ名（username）」属性の値は、ＬＤＡＰディレクトリにおけるユーザエントリのディレクトリユニーク識別属性に格納することができる。この値は、フォーマット＜アイデンティティドメイン名＞．＜ｕｉｄ＞に格納することができる。この場合、＜ｕｉｄ＞は、ユーザによってログインスクリーンに入力された値であり得る。この＜ｕｉｄ＞値もＬＤＡＰディレクトリにおける「ｕｉｄ」属性に格納することができる。代替的な実施例においては、「ユーザ名（username）」ＳＰＭＬ属性は、単純に、アイデンティティドメイン名プレフィックスのない＜ｕｉｄ＞として返すことができる。ユーザＧＵＩＤのためのＳＰＭＬ属性は「ユーザＩＤ」と称することができる。「ユーザＩＤ」属性の値は、ＬＤＡＰディレクトリにおけるユーザエンティティのＧＵＩＤであり得る。この値は、変更されるべきユーザエンティティを特定するために、フュージョンアプリケーションインスタンスからのその後のＳＰＭＬコールの際に「ｐｓｏＩＤ」属性としてＯＩＭモジュールに渡すことができる。
【００５２】
共有のＩＤＭシステムのコンポーネントおよび共有のＩＤＭシステム内において実行されるアプリケーションは、認証されたユーザについての情報にアクセスすることができる。一実施例においては、ユーザアイデンティティは認証された対象主体（subject principal）内において利用可能にすることができる。認証された対象主体名は、オラクルアクセスマネージャ（ＯＡＭ）によって制御されるすべてのＳＳＯ認証のためにＯＡＭアサーター（asserter）によって設定することができる。アサーターは、この認証された対象主体名を、ＬＤＡＰディレクトリにおける認証されたユーザのためのユーザエントリのディレクトリユニーク識別子属性の値に設定することができる。上述したように、この値は＜アイデンティティドメイン名＞．＜ｕｉｄ＞のフォーマットで符号化することができる。一実施例においては、ウェブサービスコールを必要とするような非ＳＳＯ認証は上述のアプローチに従うこともできる。
【００５３】
代替的な実施例においては、ユーザアイデンティティは、２つの属性、すなわち「ｕｉｄ」およびアイデンティティドメインＧＵＩＤ、のタプルとして利用可能にされ得る。認証された対象主体名は「ｕｉｄ」値に設定することができる。「ｕｉｄ」値はアイデンティティドメイン内においてユニークなユーザログイン名であり得る。アイデンティティドメインＧＵＩＤ値は、認証された対象に関連付けられる識別子コンテキストにおいて利用可能にされ得る。ＯＰＳＳインフラストラクチャは、「ｕｉｄ」および（識別子コンテキストにおける）アイデンティティドメインＧＵＩＤがともに、アイデンティティ伝搬によってコンテナにとって確実に利用可能にすることができる。シングルアイデンティティドメインクライアントは、認証された対象主体を用いて、認証されたユーザアイデンティティにアクセスすることができる。これらのクライアントは、アイデンティティドメイン関連のプリフィクスを付けることなく「ｕｉｄ」値を得ることができる。このため、一実施例においては、シングルアイデンティティドメインのクライアントは「ｕｉｄ」をパーズまたは復元する必要はない。なぜなら、「ｕｉｄ」がアイデンティティドメイン内でユニークな値を表わしているからである。一実施例においては、マルチアイデンティティドメインクライアントは、認証された対象主体における「ｕｉｄ」および識別子コンテキストにおけるアイデンティティドメインＧＵＩＤをともに用いて、認証されたユーザを特定することができる。
【００５４】
本発明の一実施例においては、エンタープライズ識別子は各々のＡｐｐｌｅＣｏｒｅテーブルに追加することができる。種データは、インストールの一環として、「１」のエンタープライズ識別子と共に提供することができる。顧客のための新しいアイデンティティドメインがＩＤＭシステムにおいてプロビジョニングされると、「１」のエンタープライズ識別子に関連付けられた行はすべて、その顧客に特有のエンタープライズアイデンティティに関連付けられた行にコピーすることができる。ＡｐｐｌｅＣｏｒｅは、ユーザ識別子とエンタープライズ識別子／顧客との間のマッピングを含むマッピングテーブルを利用することができる。このようなマッピングは代替的にはＬＤＡＰディレクトリ内で表わすことができる。ユーザがログインすると、このようなマッピング情報を用いて、ＡｐｐｌｅＣｏｒｅセッションのためのエンタープライズ識別子を確立することができる。アプリケーションによって用いられる各々のデータベース接続は、ＦＮＤ＿ＧＬＯＢＡＬを用いてエンタープライズ識別子コンテキストを獲得することができる。仮想プライベートデータベース（ＶＰＤ：virtual private database）ポリシーは各々のＡｐｐｌｅＣｏｒｅテーブルに適用することができる。各々のこのようなポリシーは、ＦＮＤ＿ＧＬＯＢＡＬ．ｅｎｔｅｒｐｒｉｓｅ＿ＩＤに等しいエンタープライズ識別子を有するエンティティへのアクセスを有効に制限する「ｗｈｅｒｅ」句を含み得る。各々のこのようなテーブルに挿入された行は、ＦＮＤ＿ＧＬＯＢＡＬ．ｅｎｔｅｒｐｒｉｓｅ＿ＩＤに設定されるエンタープライズ識別子を含み得る。
【００５５】
本発明の一実施例においては、アプリケーション識別子コンテキストスイッチが実行されると、基礎をなすＡｐｐｌｅＣｏｒｅセッションのエンタープライズ識別子は既存のエンドユーザ識別子として残り得る。ユーザのアイデンティティドメインに関連付けられるＶＰＤポリシーは結果的に範囲がそのまま残り得る。結果として、高いデータ特権および機能特権はアプリケーション識別子の特権を反映することができるが、データ特権の範囲は、ユーザのエンタープライズまたはアイデンティティドメインＶＰＤストライプの範囲内で適用され得る。
【００５６】
本発明の一実施例に従うと、マルチテナンシ（すなわち、複数のアイデンティティドメイン）はオラクルアクセスマネージャ（ＯＡＭ）において使用可能にされ得る。ＯＡＭにおける複数のアイデンティティドメインを使用可能にするために、ＯＡＭログインプロセスは、ログインするのに使用される属性のうちの１つとしてアイデンティティドメイン名を受領するよう拡張され得る。
【００５７】
本発明の一実施例に従うと、マルチテナンシ（すなわち複数のアイデンティティドメイン）はオラクルアイデンティティマネージャ（ＯＩＭ）において使用可能にすることができる。ＯＩＭにおける複数のアイデンティティドメインを使用可能にするために、ＳＰＭＬ要求およびコールバックなどのプロビジョニングインターフェイス内に含まれるアイデンティティドメイン関連の属性をサポートすることができる。ルールは、ＬＤＡＰディレクトリにおけるユーザエントリのディレクトリユニーク識別属性を、この属性がそのＬＤＡＰディレクトリにおいてユニークな値を有するように、構築するために規定することができる。一実施例においては、電子メールアドレスはＯＩＭにおいてユーザのためのユニークな属性となるように構成することができる。代替的な実施例においては、ＬＤＡＰディレクトリにおけるユーザエントリのディレクトリユニーク識別属性は、ＯＩＭにおいてユーザのためのユニークな属性として用いることができる。ＯＩＭにおいては、ＯＩＭ．ＥｍａｉｌＵｎｉｑｕｅＣｈｅｃｋおよびＭＴＥｎｔｉｔｙＳｅｐａｒａｔｏｒなどのシステムプロパティはユーザエントリのディレクトリユニーク識別属性のこのユーザを反映するように構成することができる。ユーザ／役割プロビジョニングサブシステムを構成する一部として、アイデンティティドメインＧＵＩＤおよびアイデンティティドメイン名などのアイデンティティドメイン属性はＯＩＭのためのデータベースに格納することができる。これらの属性は共有のＩＤＭシステムにおいてユーザ定義のフィールドとなるように構成することができる。ＯＩＭは、ＬＤＡＰディレクトリに含まれるユーザアイデンティティをプロビジョニングすることができる。複数のアイデンティティドメイン環境においては、各々のユーザエントリの相対識別名（ＲＤＮ：relative distinguished name）属性がそのユーザエントリについてのディレクトリユニーク識別属性になり得る。ＯＩＭによって用いられるＲＤＮ構造ルールを変更して、各ユーザエントリのＲＤＮ属性にディレクトリユニーク識別属性の値を採らすようにすることができる。一実施例においては、ＬＤＡＰディレクトリにおける各エントリはＯＩＭデータベースと一致させることができる。ログイン属性がユーザエントリについてのディレクトリユニーク識別属性になり得るので、対応するマッピングは、複数アイデンティティドメイン環境におけるＬＤＡＰＳｙｎｃ構成において反映させることができる。ＯＩＭにおいてマルチテナンシを実施可能にするにはＬＤＡＰコンテナルールの構成が必要となるだろう。既存のアイデンティティドメインについてのこのようなＬＤＡＰコンテナルールは、少なくとも部分的にフュージョン・ミドルウェア・メタデータ・サービス・リポジトリ「／ｄｃ／ＬＤＡＰＣｏｎｔａｉｎｅｒＲｕｌｅｓ．ｘｍｌ」を構成することによって構成することができる。例えば、２つのアイデンティティドメインが４９４３１８４３８２９９２４０００および４９４３１８４３８２９９２５０００のＧＵＩＤ値を有すると想定して、ＬＤＡＰコンテナルールは表１に示されるように構成することができる。
【００５８】
【表１】
0006263537.tif 000002
【００５９】
本発明の一実施例においては、共有のＩＤＭシステム内で新しいアイデンティティドメインをプロビジョニングするプロセスは、（ａ）ＬＤＡＰディレクトリにおけるアイデンティティドメインのためのアイデンティティドメインサブツリーの作成、ならびに、（ｂ）ＯＡＭコンポーネントおよびＯＩＭコンポーネントにおける他の同等のアーティファクトの作成を含み得る。ＯＰＳＳポリシーはこのようなプロビジョニングによって影響される可能性がある。ＯＰＳＳポリシーは、アプリケーション役割とエンタープライズ役割との関連付けを反映させることができる。共有のＩＤＭシステムの外部から発生する顧客のエンタープライズ役割は、共有のＩＤＭシステムのＬＤＡＰディレクトリ（例えばＯＩＤ）においてクローン化され得る。このクローン化の一部として、関連付けられたアプリケーション役割マッピングは、以下の動作を実行することによって確立することができる：（１）アプリケーションの各々のための元のｓｙｓｔｅｍ−ｊａｚｎ−ｄａｔａ．ｘｍｌファイルを見つける；（２）新しいアイデンティティドメイン特有の役割を反映させるために、新しいアイデンティティドメインのアイデンティティドメイン名プレフィックスを有するように、抽出されたｓｙｓｔｅｍ−ｊａｚｎ−ｄａｔａ．ｘｍｌファイル内のエンタープライズ役割を変更する；および、（３）変更されたファイルを新しいｓｙｓｔｅｍ−ｊａｚｎ−ｄａｔａ．ｘｍｌファイルとして処理し、動作の宛先をオラクルアイデンティティディレクトリ（ＯＩＤ）となるように設定してｍｉｇｒａｔｅＳｅｃｕｒｉｔｙＳｔｏｒｅ動作を再度実行する。
【００６０】
ドメインベースのディレクトリ分割およびバインドクレデンシャル
本発明の一実施例においては、（場合によっては複数の別個のアイデンティティドメイン中の）特定のアイデンティティドメインに関連付けられたユーザは、その特定のアイデンティティドメインにデプロイされたサービスを使用することができるが、他のいずれかのアイデンティティドメインにデプロイされたサービスは使用することができない。このような実施例においては、ＬＤＡＰディレクトリ（例えばＯＩＤ）は、クラウドコンピューティング環境内において作成された複数のアイデンティティドメインのすべてにおけるアイデンティティのすべてについてのアイデンティティストアとして機能し得る。それらのアイデンティティドメインのための分離されたアイデンティティストアとして機能させるために別個のＬＤＡＰディレクトリを別個のアイデンティティドメインにおいて作成する必要はない。シングルＬＤＡＰディレクトリはすべてのアイデンティティドメインのために機能し得る。ＬＤＡＰディレクトリにおいては、別個のディレクトリサブツリーは、例えば、第１のアイデンティティドメインについてのすべてのアイデンティティを第１のディレクトリサブツリー内に格納することができるように、かつ、第２のアイデンティティドメインについてのすべてのアイデンティティを第２のディレクトリサブツリー内に格納することができるように、別個のアイデンティティストア専用にすることができる。このようなサブツリーディレクトリはともに共通のルートを有し得る。
【００６１】
ＬＤＡＰ内の各々のサブツリーディレクトリへのアクセスはいくつかのクラウドコンピューティングシステムコンポーネントに制限することができる。クラウド管理コンポーネントなどのいくつかのこのようなコンポーネントはサブツリーディレクトリのすべてにアクセスすることができ、他のこのようなコンポーネントはいくつかの特定のサブツリーディレクトリにしかアクセスできない。例えば、特定のアイデンティティドメイン内においてデプロイされたサービスなどのいくつかのコンポーネントは、その特定のアイデンティティドメイン専用となるサブツリーディレクトリにしかアクセスできないように制限することができる。本発明の実施例においては、ＬＤＡＰディレクトリシステム内において既に利用可能な機構によって、アイデンティティドメインとそれぞれの対応するサブツリーディレクトリとの間をこのように分離することができる。サービスが特定のアイデンティティドメインにデプロイされたとき、クラウドコンピューティング環境のサービスデプロイメントコンポーネントは、特にそのサービスのためのセキュリティクレデンシャルを生成することができる。セキュリティクレデンシャルの生成は、ＬＤＡＰディレクトリシステムによる検査時に、当該クレデンシャルにより、サービスがデプロイされた特定のアイデンティティドメインに関連付けられるサブツリーディレクトリのみへのサービスアクセスをＬＤＡＰディレクトリシステムに許可させるように、行なわれてもよい。
【００６２】
本発明の実施例においては、アイデンティティがＬＤＡＰディレクトリに格納することができるエンティティの種類は異なるタイプに分類することができる。このような１つのタイプのエンティティとしてユーザタイプがある。特定のアイデンティティドメインに関連付けられるユーザのアイデンティティは、その特定のアイデンティティドメイン専用のＬＤＡＰディレクトリサブツリーに格納することができる。別のタイプのエンティティとしてサービスインスタンスタイプがある。特定のアイデンティティドメインにデプロイされたサービスインスタンスのアイデンティティ（データベースサービスなどの同じサービスのうちの別個のインスタンスを別個のアイデンティティドメインにデプロイすることができるのでこのように称される）は、その特定のアイデンティティドメイン専用のＬＤＡＰディレクトリサブツリーに格納することができる。本発明の実施例においては、ユーザエンティティではなくサービスインスタンスエンティティだけがクラウドコンピューティング環境のＬＤＡＰサーバにアクセスできる。このような実施例においては、ユーザエンティティはＬＤＡＰサーバに公開されず、ＬＤＡＰサーバと直接対話することが阻止される。このような実施例においては、ユーザエンティティは、ＬＤＡＰアクセス権を有しておらず、ＬＤＡＰディレクトリに格納されたいかなる情報にも直接アクセスすることができない。このような実施例においては、サービスインスタンスエンティティだけがＬＤＡＰアクセス権を有する。
【００６３】
本発明の一実施例においては、クラウドコンピューティング環境のプロビジョニング機構によって特定のアイデンティティドメインにプロビジョニングされた場合にサービスインスタンスタイプとなるエンティティは、その特定のアイデンティティドメインのみに特に関連付けられる「バインドクレデンシャル」でプロビジョニングされ得る。各々のバインドクレデンシャルは、いくらか制限されたアクセス範囲を規定することができ、異なるバインドクレデンシャルは異なる範囲のアクセスを規定することができる。これらのバインドクレデンシャルは、クラウドコンピューティング環境におけるそれらのエンティティのデプロイメントに応じて、かつこのデプロイメント時に生成され、サービスインスタンスタイプエンティティに提供され得る。バインドクレデンシャルは、クラウドコンピューティング環境内のコンポーネントによって用いられ、外部のエンティティには公開されない。一実施例においては、人のユーザはバインドクレデンシャルを受取ることはない。
【００６４】
ネットワークに存在するエンティティは、ＬＤＡＰサーバによって認識されるアイデンティティを有し得る。このようなエンティティはサービスインスタンスを含み得る。一実施例においては、ユーザはＬＤＡＰディレクトリにおける情報に直接アクセスすることが阻止されるが、このような実施例においては、サービスインスタンスはそれらのユーザの代わりにその情報にアクセスすることができる。サービスインスタンスがＬＤＡＰディレクトリからアクセスする情報はユーザ自身についてのものであり得る。一実施例においては、クラウドコンピューティング環境のネットワーク内にあるエンティティだけがクラウドコンピューティング環境のＬＤＡＰシステムにアクセスでき、ネットワーク外のコンポーネントはこのようにアクセスすることはできない。一実施例においては、ＬＤＡＰサーバは、上述の種類のバインドクレデンシャルを持たないすべてのエンティティへのアクセスを拒否するように構成される。ネットワーク外のエンティティは、このようなバインドクレデンシャルを獲得することができず、このため、ＬＤＡＰディレクトリにアクセスすることができない。一実施例においては、この構成は、ＬＤＡＰサーバが準拠するアクセスコントロールポリシーによって達成される。このようなアクセスコントロールポリシーも、一実施例においては、ＬＤＡＰディレクトリに格納される。
【００６５】
以下にさらに説明するように、ユーザ名およびパスワードは、しばしば、クラウドコンピューティング環境内のそのクライアントのために作成されたクライアントのアイデンティティドメインにおいて継続使用するために、クラウドコンピューティング環境のクライアント（または「テナント」）のプロプライエタリシングルドメインエンタープライズからインポートすることができる。これらのユーザ名およびパスワードがクライアント自身のプロプライエタリシステムに依然として存在することは、いくらかの潜在的なセキュリティ脆弱性とみなすことができる。しかしながら、ユーザ名およびパスワードがクライアントのプロプライエタリシングルドメインエンタープライズ内において何らかの形で損なわれたとしても、潜在的なシステム侵入者がバインドクレデンシャルを有していない（このようなクレデンシャルが、上述のとおり、ユーザに直接供給されず、これらユーザの代わりに作用するサービスにしか供給されないからである）ことにより、このような潜在的な侵入者からＬＤＡＰディレクトリのコンテンツが保護されることとなる。一実施例においては、サービス識別子は、ＬＤＡＰディレクトリにおけるユーザ識別子とは別個のものであり、ユーザ識別子を発見しても、いずれのサービス識別子も公開されないだろう。
【００６６】
本発明の一実施例においては、エンティティはまた、これらのエンティティが（ａ）特定のアイデンティティドメイン専用のものであるか、または、（ｂ）いずれの特定のアイデンティティドメイン専用のものではないインフラストラクチャコンポーネントであるかどうかに基づいて分類することができる。インフラストラクチャコンポーネントは、サービスインスタンスを特定のアイデンティティドメインにプロビジョニングする役割を果たすシステムプロビジョニングコンポーネントを含み得る。インフラストラクチャコンポーネントはまた、サービスインスタンスエンティティに対するユーザエンティティのためにシングルサインオン（ＳＳＯ：single sign-on）機能を提供することができるアクセス管理コンポーネントを含み得る。インフラストラクチャコンポーネントは、ＬＤＡＰディレクトリに格納されたアイデンティティを管理するアイデンティティ管理（ＩＤＭ）コンポーネントを含み得る。これらのインフラストラクチャコンポーネントは、それらのインフラストラクチャコンポーネントと対話するエンティティを認証および認可する目的で、ＬＤＡＰシステムと直接対話することができる。
【００６７】
上述のとおり、一実施例においては、特定のアイデンティティドメイン専用のエンティティは、その特定のアイデンティティドメインのみに関連付けられるアイデンティティへのアクセスに制限される。本発明の実施例においては、このアクセス制限は、ＬＤＡＰディレクトリ内にも含まれ得るアクセスコントロールポリシーを実施することによって達成される。ＬＤＡＰサーバは、典型的には、アクセスコントロールポリシーに基づいてＬＤＡＰディレクトリに格納された情報に対するアクセスを許可または拒否する。本発明の実施例はこの事実を利用することにより、アイデンティティドメイン特有のアクセスコントロールポリシーに基づいて、クラウドコンピューティング環境のＬＤＡＰサーバに、いくつかのアイデンティティドメイン関連のＬＤＡＰディレクトリサブツリーへのアクセスを許可または拒否させるようにする。このようなアイデンティティドメイン特有のアクセスコントロールポリシーは従来より公知ではなく、ＬＤＡＰシステムにおいては用いられなかった。
【００６８】
マルチテナントユニーク識別子
本発明の実施例においては、アイデンティティがＬＤＡＰディレクトリ内に格納されている各エンティティは、（ＬＤＡＰディレクトリ全体およびそのサブツリーすべてにわたって）グローバルなユニークアイデンティティ（unique identity）がＬＤＡＰディレクトリに格納されている。このグローバルユニークアイデンティティは、特定のアイデンティティドメイン内においてユニークであった場合でも、（例えば）他の点ではグローバルにユニークでない可能性のある規範的にフォーマットされたプレフィックスを用いることによって生成することができる。一実施例においては、ユーザがクラウドベースの環境内において提供されるいずれかのサービスと対話できるようになる前に、それらのユーザが環境にログインすることが必要となる。ログイン手順は認証プロセスを含む。ユーザがオーセンティケータに与えるログイン名またはアイデンティティは、それが特定のアイデンティティドメイン内においてユニークであったとしても、ＬＤＡＰディレクトリ全体にわたってグローバルにユニークでない可能性がある。したがって、一実施例においては、ユーザが環境にログインする時、オーセンティケータは、ユーザのログイン名に加えて、ユーザがアクセスを所望するアイデンティティドメインの名前を要求する。代替的な実施例においては、オーセンティケータは、ユーザ自身に対してアイデンティティドメインの名前を要求しない。代わりに、別個のアイデンティティドメインの各々が、別個のＵＲＬに関連付けられる別個のログインウェブページに関連付けられ得る。アイデンティティドメインの名前は、ユーザがそのアイデンティティドメインにログインするのにアクセスする必要があるウェブページのコード内に含めることができる。このため、ユーザがそのドメイン特有のウェブページについての特定のＵＲＬにアクセスするよう自身のブラウザに指示すると、オーセンティケータは、ユーザがアクセスを要求しているアイデンティティドメインを、ウェブページ自体のコードから決定することができる。
【００６９】
本発明の一実施例においては、ユーザがアイデンティティドメインの名前を明確に与えるかどうかにかかわらず、そのアイデンティティドメインの識別子は、そのユーザのためのグローバルユニークアイデンティティを生成するために、ユーザが与えたログイン名に添付される。このグローバルユニーク識別子はマルチテナントユニーク識別子と称することができる。一実施例においては、特定のユーザは、自身のユーザアカウントが作成されると、常に、同じマルチテナントユニーク識別子に関連付けられ、その同じマルチテナントユニーク識別子がクラウド環境の認証システムによって用いられて、ユーザが環境内でサービスへのアクセスを要求するたびにユーザが認証される。マルチテナントユニーク識別子が、ユーザが属するアイデンティティドメインを規定するので、ＬＤＡＰサーバは、ＬＤＡＰディレクトリのサブツリーのうちいずれがユーザに適用可能であるかを判断することができる。マルチテナントユニーク識別子は、ユーザが別のユーザと同じ名前（但し、同じアイデンティティドメインではない）を有する別のユーザと混同され得ないように、クラウド環境におけるシステム間において伝搬される。マルチテナントユニーク識別子がクラウド環境によって用いられているという事実は、認証サブシステムにそれらのドメイン未修飾ログイン名を供給することができるエンドユーザに対して完全に透過的であり得る。本発明の一実施例においては、エンティティのマルチテナントユニーク識別子は、そのエンティティについての新しい記録が作成されてＬＤＡＰディレクトリに追加されるのに応じて、かつそのときに、そのエンティティのために生成される。マルチテナントユニーク識別子は、メッセージペイロード内でクラウドコンピューティング環境のサブシステム間において伝搬させることができる。したがって、エンティティについてのマルチテナントユニーク識別子を決定するために、そのエンティティのアイデンティティが位置しているＬＤＡＰディレクトリサブツリーの名前に依拠する必要がなくなる。
【００７０】
本発明の一実施例においては、マルチテナントユニーク識別子は、エンティティのためのＬＤＡＰディレクトリエントリにおけるいくつかの別個のフィールドのうちの１つである。ＬＤＡＰディレクトリスキーマは属性としてマルチテナントユニーク識別子を含むように拡張させることができる。マルチテナントユニーク識別子は、ＬＤＡＰディレクトリエントリにおいてはユーザのログイン名とは別個のものであるので、ユーザのアイデンティティをシングルドメインシステムからマルチドメインクラウドコンピューティング環境にまで移行させた後、シングルドメイン（単一の顧客）システムから直接インポートされた可能性のあるユーザのログイン名を、妨害なしに、または顕著な変更なしに使用し続けることができる。このため、一実施例においては、特定のクラウドコンピューティング環境クライアントの（または「テナントの」）別個のプロプライエタリ（通常は非クラウドベースの）エンタープライズ内において用いられたのと同じログイン名を、クラウドコンピューティング環境において作成されてその特定のクライアント専用のものとされるアイデンティティドメイン内において使用し続けることができる。実際には、移行プロセス中、これらのログイン名は、クライアントのプロプライエタリエンタープライズからクラウドコンピューティング環境内に直接アップロードすることができ、このとき、マルチテナントユニーク識別子をそれらのログイン名のために自動的に生成でき、クライアントのユーザのためのＬＤＡＰディレクトリエントリ内に格納できる。
【００７１】
典型的なＬＤＡＰディレクトリ内では、区別された名前は、一種のグローバルユニークアイデンティティとみなされる可能性がある。しかしながら、典型的なＬＤＡＰディレクトリ内においては、区別された名前は、典型的には、グローバルユニークアイデンティティにする目的で専用のものとされる単一の明確なＬＤＡＰ属性の値ではなく、連続した複数の別個のＬＤＡＰ属性値である。クラウドコンピューティングシステムのクライアント（テナント）がなんらかの理由で自身についてのグローバルユニーク識別子を構築する必要がある場合、クライアントには、そのグローバルユニーク識別子を構築する際にシステム自体が採用する規範的なルールが提供され得る。例えば、このようなルールは、クライアントのアイデンティティドメインの名前を、期間によって範囲が定められるユーザのログイン名に至るまで予めペンディングしておくことを必要とし得る。このようなルールに従うことにより、マルチテナントユニーク識別子は、プログラムによって相対的に容易に復元することができる。この特質は、必ずしも、ＬＤＡＰによって区別された名前に所有される必要はない。
【００７２】
クラウドコンピューティング環境内で実行されるいくつかのアプリケーションまたはサービスは、アイデンティティドメイン名が前に付されるユーザアイデンティティを処理するように構成されない可能性がある。このような環境下では、このようなアプリケーションまたはサービスにマルチテナントユニーク識別子を渡す前に、アイデンティティドメイン名プレフィックスをマルチテナントユニーク識別子から容易に取り除くことができ、これにより、アプリケーションまたはサービスがユーザの未修飾ログイン名のみを受取るようにする。マルチテナントユニーク識別子が十分に定義された規範的なフォーマットに従って構築されることにより、必要とされる可能性のあるこのような調整が、比較的単純に、自動的に実行される。
【００７３】
クラウドコンピューティング環境内において実行される他のいくつかのアプリケーションまたはサービスは、アイデンティティドメイン名を認識し、それらのアイデンティティドメイン名に応じてさまざまに機能することができるかもしれない。このような環境下では、アイデンティティドメイン名は、アプリケーションまたはサービスによって使用されるマルチテナントユニーク識別子からパーズおよび抽出され得る。次いで、アプリケーションまたはサービスは、いくつかのアイデンティティドメインのうちいずれと機能するべきかを決定することができる。また、マルチテナントユニーク識別子が十分に定義された規範的なフォーマットに従って構築されることにより、この潜在的に有用な抽出が比較的単純に自動的に実行される。
【００７４】
クラウドインフラストラクチャコンポーネントは、アイデンティティドメイン名を利用することができるサービス間にある。これらのコンポーネントは、対応可能なマルチテナント（またはマルチアイデンティティドメイン）であり得る。これらのコンポーネントは、異なるユーザに関係する要求を受取ることができる。これらの要求が関係するアイデンティティドメインを決定するために、これらのコンポーネントは、それらの識別子が普遍的に準拠する規範的なフォーマットに基づいてユーザのマルチテナントユニーク識別子を単純かつ自動的にパーズすることができる。マルチテナント対応のクラウドインフラストラクチャコンポーネントは、アイデンティティドメイン毎にストライプにされるデータレポジトリを用いることができる。このような環境下では、これらのコンポーネントは、適切なアイデンティティドメイン専用のストライプに対する処理（handle）としてマルチテナントユニーク識別子からパーズされたアイデンティティドメイン名を用いることができる。処理はストライプにアクセスするために用いることができる。
【００７５】
サービスインスタンスのプロビジョニング時におけるＬＤＡＰディレクトリの更新
本発明の一実施例においては、クラウドコンピューティング環境内において実行されるプロビジョニングサービスは、環境のさまざまなアイデンティティドメイン内においてすべてのサービスインスタンスのデプロイメントをすべて実行する。プロビジョニングサービスは、クラウドコンピューティング環境の規定されたクライアント（または「テナント」）のためにサービスインスタンスを作成するためのアプリケーションプログラミングインターフェイス（ＡＰＩ：application programming interface）を有する。プロビジョニングサービスは、デプロイされるべきサービスインスタンスを構成するのに用いられるバインドクレデンシャルを作成するかまたは他の何らかのコンポーネントに対して要求することができる。一実施例においては、プロビジョニングサービスは、ＡＰＩを用いて、規定されたサービスインスタンスおよび規定されたアイデンティティドメインのためのバインドクレデンシャルを別のコンポーネントに対して要求する。各々のバインドクレデンシャルは名前およびパスワードを含み得る。この名前は、標準的な規則に基づいて自動的に生成することができ、規定されたサービスインスタンスの名前および規定されたアイデンティティドメインの名前の両方を含むことができる。パスワードはランダムに生成することができる。
【００７６】
バインドクレデンシャルの生成と同時に、新しい対応するアクセスポリシーが自動的に生成され、ＬＤＡＰディレクトリに追加され得る。アクセスポリシーは、バインドクレデンシャルにおいて名前が規定されているサービスインスタンスが、当該サービスインスタンスがデプロイされているアイデンティティドメインに対応するＬＤＡＰディレクトリサブツリーにアクセスすることだけが許可されることを規定する。一実施例においては、アクセスポリシーはさらに、その名前を有するサービスインスタンスがＬＤＡＰディレクトリにおけるアイデンティティを変更することが許可されないことを規定する。一実施例においては、クラウドコンピューティング環境のアイデンティティ管理（ＩＤＭ）サブシステムだけが、このようなアイデンティティを変更することを許可される。ＩＤＭサブシステム自体は、クラウドコンピューティング環境のユーザが対話することを可能にするサービスである。一実施例においては、アクセスポリシーはさらに、バインドクレデンシャルにおいて名前が規定されているサービスインスタンスが、ＬＤＡＰディレクトリエントリのうちの規定されたいくつかの属性を読出すことしか許可されないことを規定する。上述の動作は上述のＡＰＩによって実行することができる。本発明の実施例においては、既存のバインドクレデンシャルを変更する能力が与えられるエンティティまたはコンポーネントはない。
【００７７】
マルチテナントＬＤＡＰシステムの例
図９は、マルチテナントＬＤＡＰシステムを含むクラウドコンピューティング環境の例を示すブロック図である。本発明のさまざまな実施例は、図９に明確に示されるものと比べてより多くのコンポーネント、より少数のコンポーネント、または異なるコンポーネントを含み得る。図９はクラウドコンピューティング環境９０２およびクライアント（テナント）９０４Ａ〜Ｎを示す。クライアント（テナント）９０４Ａ〜Ｎの各々は例えば別個の組織を表わすことができる。クライアント（テナント）９０４Ａ〜Ｎの各々は、クラウドコンピューティング環境９０２内において定義された別個のアイデンティティドメインを、そのアイデンティティドメイン内に含まれるアイデンティティおよびサービスがクラウドコンピューティング環境９０２内の他のすべてのアイデンティティドメインにおけるアイデンティティおよびサービスから分離されるように、有することができる。クライアント（テナント）９０４Ａ〜Ｎは、典型的には、場合によってはインターネットを含む１つ以上のネットワークを介してクラウドコンピューティング環境９０２のコンポーネントと対話する。
【００７８】
図９に示されるように、クラウドコンピューティング環境９０２はＬＤＡＰサーバ９０６およびＬＤＡＰディレクトリ９０８を含む。有意には、ＬＤＡＰディレクトリ９０８は単一の一体化されたＬＤＡＰディレクトリであって、複数の別個のアイデンティティドメインのためのＬＤＡＰエントリを含み、クライアント（テナント）９０４Ａ〜Ｎの各々についての別個のアイデンティティドメインである。各々のこのようなアイデンティティドメインのために、（ツリー構造を有する）ＬＤＡＰディレクトリ９０８は、特にそのアイデンティティドメイン専用の対応するサブツリーを含む。例えば、サブツリー９１０Ａはクライアント（テナント）９０４Ａのためのアイデンティティドメイン専用であってもよく、サブツリー９１０Ｂは、クライアント（テナント）９０４Ｂのためのアイデンティティドメイン専用であってもよく、サブツリー９１０Ｎは、クライアント（テナント）９０４Ｎのためのアイデンティティドメイン専用であってもよい、などである。
【００７９】
サブツリー９１０Ａ〜Ｎの各々は、そのサブツリーが対応するアイデンティティドメインにのみ関係するユーザアイデンティティ、サービスインスタンスアイデンティティおよびアクセスポリシーのためのＬＤＡＰエントリを含み得る。例えば、サブツリー９１０Ａはユーザアイデンティティ９１２Ａ、サービスインスタンスアイデンティティ９１４Ａおよびアクセスポリシー９１６Ａを含み、サブツリー９１０Ｂは、ユーザアイデンティティ９１２Ｂ、サービスインスタンスアイデンティティ９１４Ｂおよびアクセスポリシー９１６Ｂなどを含み、サブツリー９１０Ｎは、ユーザアイデンティティ９１２Ｎ、サービスインスタンスアイデンティティ９１４Ｎおよびアクセスポリシー９１６Ｎを含む。
【００８０】
技術例
図１０は、本発明の実施例に係る、特定のアイデンティティドメインについてのアイデンティティドメイン規定ログインウェブページを生成および使用するための技術の例を示すフロー図である。ブロック１００２において、新しいアイデンティティドメインを作成するための要求が受取られる。ブロック１００４において、この要求に応じて、新しいアイデンティティドメインのためのＬＤＡＰサブツリーがＬＤＡＰディレクトリにおいて作成される。ブロック１００６において、要求に応じて、ユニークなＵＲＬを有し、新しいアイデンティティドメインの名前を規定するログインウェブページが生成および格納される。
【００８１】
ブロック１００８において、ユニークなＵＲＬに対応するウェブページについての要求が受取られる。ブロック１０１０において、ユニークなＵＲＬに対応するウェブページが要求に応じて送信される。ブロック１０１２において、ドメイン未修飾のユーザ名およびパスワードが、ウェブページのユーザ名フィールドおよびパスワードフィールドを介して受取られる。ブロック１０１４において、マルチテナントユニーク識別子は、ウェブページにおいて規定されたアイデンティティドメインの名前をドメイン未修飾ユーザ名に予めペンディングすることによって構築される。ブロック１０１６において、マルチテナントユニーク識別子は、与えられたパスワードに基づいてＬＤＡＰディレクトリに格納されたセキュリティ情報に対して認証される。
【００８２】
図１１は、本発明の実施例に係る、特定のアイデンティティドメインに新しいユーザアイデンティティを追加するための技術の例を示すフロー図である。ブロック１１０２において、規定されたドメイン未修飾ユーザ名を有する新しいユーザを、規定されたアイデンティティドメインに追加するための要求が受取られる。ブロック１１０４において、この要求に応じて、マルチテナントユニーク識別子が、ウェブページにおいて規定されたアイデンティティドメインの名前をドメイン未修飾ユーザ名に予めペンディングすることによって構築される。ブロック１１０６において、新しいユーザのためにパスワードが選択される。ブロック１１０８において、別個の属性として、ユーザ名、アイデンティティドメイン、マルチテナントユニーク識別子およびパスワードを規定する新しいＬＤＡＰエントリが生成される。ブロック１１１０において、新しいＬＤＡＰエントリが、アイデンティティドメインに対応するＬＤＡＰディレクトリのサブツリーに追加される。
【００８３】
図１２は、本発明の実施例に係る、特定のアイデンティティドメインに新しいサービスインスタンスをデプロイするための技術の例を示すフロー図である。ブロック１２０２において、規定されたアイデンティティドメインに対して特定タイプの新しいサービスインスタンスをデプロイするための要求が受取られる。ブロック１２０４において、この要求に応じて、ドメイン修飾名が、特定のタイプおよび規定されたアイデンティティドメインの両方に基づいて新しいサービスインスタンスのために自動的に生成される。ブロック１２０６において、ランダムパスワードが自動的に生成される。ブロック１２０８において、ドメイン修飾名およびランダムパスワードの両方を規定するバインドクレデンシャルが生成される。ブロック１２１０において、バインドクレデンシャルが、規定されたアイデンティティドメインに対応するＬＤＡＰディレクトリのサブツリーに格納される。
【００８４】
ブロック１２１２において、新しいアクセスポリシーが作成される。この新しいアクセスポリシーは、（バインドクレデンシャルにおいて示される）ドメイン修飾名を有するサービスインスタンスが、規定されたアイデンティティドメイン（すなわち、サービスインスタンスがデプロイされているアイデンティティドメインに対応するＬＤＡＰディレクトリのサブツリーに含まれるＬＤＡＰエントリ）に関係する情報にしかアクセスできないことを規定する。ブロック１２１４において、アクセスポリシーは、規定されたアイデンティティドメインに対応するＬＤＡＰディレクトリのサブツリーに格納される。ブロック１２１６において、サービスインスタンスが規定されたアイデンティティドメインにおいてデプロイされる。ブロック１２１８において、バインドクレデンシャルがサービスインスタンスに供給される。
【００８５】
図１３は、本発明の実施例に係る、あるサービスインスタンスのデプロイメント時にそのサービスインスタンスに供給されたバインドクレデンシャルを用いてそのサービスインスタンスを認証するための技術の例を示すフロー図である。ブロック１３０２において、ＬＤＡＰサーバは、規定されたサブツリーにおけるＬＤＡＰ情報にアクセスするための要求をサービスインスタンスから受取る。ブロック１３０４において、ＬＤＡＰサーバはサービスインスタンスからバインドクレデンシャルを受取る。ブロック１３０６において、ＬＤＡＰサーバは、サービスインスタンスが属するアイデンティティドメインを、バインドクレデンシャル内において規定されたドメイン修飾名に基づいて決定する。ブロック１３０８において、ＬＤＡＰサーバは、サービスインスタンスに関係するＬＤＡＰエントリを、決定されたアイデンティティドメインに対応するＬＤＡＰディレクトリサブツリーに位置付ける。ブロック１３１０において、ＬＤＡＰサーバは、バインドクレデンシャルにおいて規定されたパスワードをＬＤＡＰエントリにおいて規定されたパスワードと比較することによって、サービスインスタンスを認証する。ブロック１３１２において、ＬＤＡＰサーバは、サービスインスタンスに関係するアクセスポリシーを規定するＬＤＡＰエントリを、決定されたアイデンティティドメインに対応するＬＤＡＰディレクトリサブツリーに位置付ける。ブロック１３１４において、アクセスポリシーによって規定された程度にまで、ＬＤＡＰサーバは、サービスインスタンスが、決定されたアイデンティティドメインに対応するＬＤＡＰディレクトリサブツリーにおけるＬＤＡＰエントリのポリシー規定属性にアクセスすることを許可および／または拒否する。
【００８６】
ハードウェア概略
図７は、本発明の実施例に従って用いられ得るシステム環境７００のコンポーネントを示す簡略ブロック図である。図示されるように、システム環境７００は、固有のクライアントアプリケーションや、場合によってはウェブブラウザなどの他のアプリケーションなどを含むクライアントアプリケーションを動作させるように構成された１つ以上のクライアント演算装置７０２、７０４、７０６および７０８を含む。さまざまな実施例においては、クライアント演算装置７０２、７０４、７０６および７０８はサーバ７１２と対話し得る。
【００８７】
クライアント演算装置７０２、７０４、７０６および７０８は、汎用パーソナルコンピュータ（一例として、マイクロソフトウィンドウズ（登録商標）および／またはアップルマッキントッシュオペレーティングシステムのさまざまなバージョンを実行するパーソナルコンピュータおよび／またはラップトップコンピュータを含む）、（マイクロソフトウィンドウズモバイルなどのソフトウェアを実行し、インターネット、電子メール、ＳＭＳ、ブラックベリーまたは使用可能な他の通信プロトコルである）携帯電話もしくはＰＤＡ、ならびに／または、さまざまな市販のＵＮＩＸ（登録商標）もしくはＵＮＩＸのようなオペレーティングシステム（さまざまなＧＮＵ／Ｌｉｎｕｘ（登録商標）オペレーティングシステムを含むがこれに限定されるものではない）のいずれかを実行するワークステーションコンピュータであってもよい。代替的には、クライアント演算装置７０２、７０４、７０６および７０８は、ネットワーク（例えば、以下に記載のネットワーク７１０）を介して通信することができるシン・クライアントコンピュータ、インターネットへの接続が可能なゲーム機および／またはパーソナルメッセージング装置などのその他の電子装置であってもよい。例示的なシステム環境７００が４つのクライアント演算装置とともに示されているが、いかなる数のクライアント演算装置がサポートされてもよい。センサを有する装置などの他の装置がサーバ７１２と対話してもよい。
【００８８】
システム環境７００はネットワーク７１０を含み得る。ネットワーク７１０は、ＴＣＰ／ＩＰ、ＳＮＡ、ＩＰＸ、ＡｐｐｌｅＴａｌｋなどを含むがこれらに限定されるものではないさまざまな市販のプロトコルのいずれかを使用してデータ通信をサポートし得る、当業者になじみのある任意のタイプのネットワークであってもよい。単に一例として、ネットワーク７１０は、イーサネット（登録商標）ネットワーク、トークン・リング・ネットワークなどのローカルエリアネットワーク（local area network：ＬＡＮ）、広域ネットワーク、仮想プライベートネットワーク（virtual private network：ＶＰＮ）を含むがこれに限定されるものではない仮想ネットワーク、インターネット、イントラネット、エクストラネット、公衆交換電話網（public switched telephone network：ＰＳＴＮ）、赤外線ネットワーク、無線ネットワーク（例えばＩＥＥＥ８０２．１１の一連のプロトコル、当該技術分野において公知のブルートゥース（登録商標）プロトコルおよび／またはその他の無線プロトコルのいずれかの下で動作するネットワーク）、ならびに／または、これらのおよび／もしくは他のネットワークの任意の組み合わせであってもよい。
【００８９】
システム環境７００はまた１つ以上のサーバコンピュータ７１２を含む。サーバコンピュータ７１２は、汎用コンピュータ、特化サーバコンピュータ（一例として、ＰＣサーバ、ＵＮＩＸサーバ、ミッドレンジサーバ、メインフレームコンピュータ、ラックマウント式のサーバなどを含む）、サーバファーム、サーバクラスタ、またはその他の適切な配置および／もしくは組み合わせであり得る。さまざまな実施例においては、サーバ７１２は、１つ以上のサービスまたはソフトウェアアプリケーションを実行するように適合されてもよい。
【００９０】
サーバ７１２は、市販のサーバオペレーティングシステムに加えて、上述のうちいずれかを含むオペレーティングシステムを実行し得る。サーバ７１２は、ＨＴＴＰサーバ、ＦＴＰサーバ、ＣＧＩサーバ、Ｊａｖａサーバ、データベースサーバなどを含む、さまざまな追加のサーバアプリケーションおよび／もしくは中間層アプリケーションのいずれかを実行し得る。例示的なデータベースサーバとしては、オラクル、マイクロソフト、サイベース、ＩＢＭなどから市販されているものが挙げられるが、これらに限定されるものではない。
【００９１】
システム環境７００はまた１つ以上のデータベース７１４および７１６を含み得る。データベース７１４および７１６はさまざまな位置に存在してもよい。一例として、データベース７１４および７１６のうち１つ以上は、サーバ７１２に対してローカルな（および／またはサーバ７１２に常駐する）非一時的な記憶媒体上に存在してもよい。代替的には、データベース７１４および７１６は、サーバ７１２から離れており、ネットワークベースの接続または専用の接続を介してサーバ７１２と通信してもよい。一組の実施例においては、データベース７１４および７１６は、当業者になじみのあるストレージエリアネットワーク（ＳＡＮ：storage-area network）に存在していてもよい。同様に、サーバ７１２に起因する機能を実行するのに必要な如何なるファイルも、適宜、サーバ７１２上にローカルに格納および／または遠隔に格納され得る。一組の実施例においては、データベース７１４および７１６は、ＳＱＬでフォーマットされたコマンドに応じてデータを格納、更新および検索するように適合されたリレーショナルデータベース、例えばオラクルによって提供されるデータベースなど、を含み得る。
【００９２】
図８は、本発明の実施例に従って用いられ得るコンピュータシステム８００の簡略ブロック図である。例えば、サーバ７１２またはクライアント７０２、７０４、７０６もしくは７０８はシステム８００などのシステムを用いて実現されてもよい。バス８２４を介して電気的に接続され得るハードウェア要素を含むコンピュータシステム８００が示される。ハードウェア要素は、１つ以上の中央処理装置（ＣＰＵ：central processing unit）８０２、１つ以上の入力装置８０４（例えばマウス、キーボードなど）、および１つ以上の出力装置８０６（例えば表示装置、プリンタなど）を含み得る。コンピュータシステム８００はまた１つ以上の記憶装置８０８を含み得る。一例として、記憶装置８０８は、ディスクドライブ、光学記憶装置、およびソリッドステート記憶装置、例えば、プログラム可能、フラッシュ更新可能などであり得るランダムアクセスメモリ（ＲＡＭ：random access memory）および／またはリードオンリメモリ（ＲＯＭ：read-only memory）などの記憶装置を含んでいてもよい。
【００９３】
コンピュータシステム８００は、コンピュータ読取可能記憶媒体リーダ８１２、通信サブシステム８１４（例えば、モデム、ネットワークカード（無線または有線）、赤外線通信装置など）、ならびに、上述のＲＡＭ装置およびＲＯＭ装置を含み得るワーキングメモリ８１８を付加的に含み得る。いくつかの実施例においては、コンピュータシステム８００はまた、デジタル信号プロセッサ（ＤＳＰ：digital signal processor）、専用プロセッサなどを含み得る処理加速ユニット８１６を含んでもよい。
【００９４】
さらに、コンピュータ読取可能記憶媒体リーダ８１２は、ともに（および任意に、記憶装置８０８と組み合わせて）一時的および／またはより永久的にコンピュータ読取可能な情報を含むためのリモートの、ローカルの、固定されたおよび／または取外し可能な記憶装置プラス記憶媒体を包括的に表わすコンピュータ読取可能記憶媒体８１０に接続可能である。通信システム８１４は、ネットワーク７１０および／またはシステム環境７００に関して上述された他のいずれかのコンピュータとのデータの交換を許可し得る。
【００９５】
コンピュータシステム８００はまた、オペレーティングシステム８２０および／または他のコード８２２、例えば（クライアントアプリケーション、ウェブブラウザ、中間層アプリケーション、ＲＤＢＭＳなどであり得る）アプリケーションプログラムなどを含むワーキングメモリ８１８内にその時点で位置するように示されたソフトウェア要素を含み得る。具体的な実施例においては、ワーキングメモリ８１８は、上述のようなマルチテナントクラウドベースＩＤＭシステムのために用いられる実行可能コードおよび関連データ構造を含み得る。コンピュータシステム８００の代替的な実施例は、上記のものからの多数の変更例を有し得ることが理解されるべきである。例えば、カスタマイズされたハードウェアも使用されてもよく、および／または、特定の要素がハードウェア、（アプレットなどの高移植性ソフトウェアを含む）ソフトウェアまたはそれら両方で実現されてもよい。さらに、ネットワーク入力／出力装置などの他の演算装置への接続が利用されてもよい。
【００９６】
コードまたはコードの一部を含むための記憶媒体およびコンピュータ読取可能媒体は、記憶媒体および通信媒体を含む当該技術分野において公知のまたは使用される任意の適切な媒体を含み得て、当該媒体は、コンピュータ読取可能な命令、データ構造、プログラムモジュールまたは他のデータなどの情報の格納および／または情報の伝達のための任意の方法または技術において実現される揮発性および不揮発性の（非一時的な）、取外し可能および取外し不可能な媒体などであって、所望の情報を格納または伝送するために使用可能であり、コンピュータによってアクセス可能であるＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリもしくは他のメモリ技術、ＣＤ−ＲＯＭ、デジタル多用途ディスク（digital versatile disk：ＤＶＤ）もしくは他の光学記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置もしくは他の磁気記憶装置、データ信号、データ送信、またはその他の媒体を含むが、これらに限定されない。
【００９７】
本発明の特定の実施例について説明してきたが、さまざまな変形例、変更例、代替的な構成および等価物も本発明の範囲内に包含される。本発明の実施例は、特定の具体的なデータ処理環境内での動作に限定されるものではなく、複数のデータ処理環境内で自由に動作できる。さらに、特定の一連のトランザクションおよびステップを使用して本発明の実施例について説明してきたが、本発明の範囲が、記載されている一連のトランザクションおよびステップに限定されるものではないということが当業者に明らかであるべきである。
【００９８】
さらに、ハードウェアおよびソフトウェアの特定の組み合わせを使用して本発明の実施例について説明してきたが、ハードウェアおよびソフトウェアの他の組み合わせも本発明の範囲内であることが認識されるべきである。本発明の実施例は、ハードウェアのみで実現されてもよく、またはソフトウェアのみで実現されてもよく、またはそれらの組み合わせを使用して実現されてもよい。
【００９９】
図１４は、上述のとおり本発明の原理に従って構成される演算装置１４００の機能ブロック図を示す。演算装置の機能ブロックは、本発明の原理を実行するために、ハードウェア、ソフトウェアまたはハードウェアとソフトウェアとの組み合わせによって実現されてもよい。当業者であれば、図１４において記載される機能ブロックを組合わせるかまたはサブブロックに分割して上述のような本発明の原理を実現し得ることを理解する。したがって、この明細書中の記載は、この明細書中に記載された機能ブロックのいかなる実現可能な組み合わせまたは分割またはさらなる定義をもサポートし得る。
【０１００】
図１４に示されるように、演算装置１４００は、第１の格納ユニット１４０２、第２の格納ユニット１４０４、第１の阻止ユニット１４０６、および第２の阻止ユニット１４０８を含む。
【０１０１】
第１の格納ユニット１４０２は、ルートノードを有するＬＤＡＰディレクトリにおいて、第２のアイデンティティドメインではなく第１のアイデンティティドメインに関連付けられるエンティティのアイデンティティを、ルートノードから派生する第１のディレクトリサブツリーに格納し得る。第２の格納ユニット１４０４は、ＬＤＡＰディレクトリにおいて、第１のアイデンティティドメインではなく第２のアイデンティティドメインに関連付けられるエンティティのアイデンティティを、ルートノードからも派生するが第１のディレクトリサブツリーとは別個である第２のディレクトリサブツリーに格納し得る。第１の阻止ユニット１４０６は、第１のアイデンティティドメインにデプロイされたサービスインスタンスが第２のディレクトリサブツリーに格納されるアイデンティティにアクセスするのを阻止し得る。第２の阻止ユニット１４０８は、第２のアイデンティティドメインにデプロイされたサービスインスタンスが第１のディレクトリサブツリーに格納されるアイデンティティにアクセスするのを阻止し得る。
【０１０２】
演算装置１４００はさらに、第３の格納ユニット１４１０、第４の格納ユニット１４１２、第３の阻止ユニット１４１４、および第１の許可ユニット１４１６を含み得る。第３の格納ユニット１４１０は、第２のアイデンティティドメインではなく第１のアイデンティティドメインに関連付けられるユーザエンティティのアイデンティティを第１のディレクトリサブツリーに格納し得る。第４の格納ユニット１４１２は、第２のアイデンティティドメインではなく第１のアイデンティティドメインに関連付けられるサービスインスタンスエンティティのアイデンティティを第１のディレクトリサブツリーに格納し得る。第３の阻止ユニット１４１４は、ユーザエンティティが、ＬＤＡＰディレクトリを維持するＬＤＡＰサーバと直接対話するのを阻止し得る。第１の許可ユニット１４１６は、サービスインスタンスエンティティがユーザエンティティの代わりにＬＤＡＰサーバと直接対話することを許可し得る。
【０１０３】
演算装置１４００はさらに、第１の生成ユニット１４１８、第１の提供ユニット１４２０、第２の生成ユニット１４２２、および第２の提供ユニット１４２４を含み得る。第１の生成ユニット１４１８は、第２のアイデンティティドメインにではなく第１のアイデンティティドメインに対する第１のサービスインスタンスのデプロイメントに応じて、第１のクレデンシャルを生成し得る。第１のクレデンシャルは、ＬＤＡＰディレクトリを維持するＬＤＡＰサーバによる検査時に、第１のサービスインスタンスが、第２のディレクトリサブツリーに格納されるアイデンティティではなく第１のディレクトリサブツリーに格納されるアイデンティティにアクセスすることをＬＤＡＰサーバに許可させる。第１の提供ユニット１４２０は第１のサービスインスタンスに第１のクレデンシャルを提供し得る。第２の生成ユニット１４２２は、第１のアイデンティティドメインにではなく第２のアイデンティティドメインに対する第２のサービスインスタンスのデプロイメントに応じて、第２のクレデンシャルを生成し得る。第２のクレデンシャルは、ＬＤＡＰサーバによる検査時に、第２のサービスインスタンスが、第１のディレクトリサブツリーに格納されるアイデンティティではなく第２のディレクトリサブツリーに格納されるアイデンティティにアクセスすることをＬＤＡＰサーバに許可させる。第２の提供ユニット１４２４は第２のサービスインスタンスに第２のクレデンシャルを提供し得る。
【０１０４】
演算装置１４００はさらに、第５の格納ユニット１４２６および第１の制御ユニット１４２８を含み得る。第５の格納ユニット１４２６は、複数のアイデンティティドメインからさまざまなアイデンティティドメインを規定するアクセスコントロールポリシーをＬＤＡＰディレクトリに格納し得る。第１の制御ユニット１４２８は、少なくとも部分的にアクセスコントロールポリシーに基づいて、ＬＤＡＰディレクトリのアイデンティティドメイン関連サブツリーへのアクセスを制御し得る。
【０１０５】
演算装置１４００はさらに、第６の格納ユニット１４３０および第７の格納ユニット１４３２を含み得る。第６の格納ユニット１４３０は、第２のディレクトリサブツリーではなく第１のディレクトリサブツリーに適用されるアクセス制限を規定する第１のアクセスコントロールポリシーをＬＤＡＰディレクトリに格納し得る。第７の格納ユニット１４３２は、第１のディレクトリサブツリーではなく第２のディレクトリサブツリーに適用されるアクセス制限を規定する第２のアクセスコントロールポリシーをＬＤＡＰディレクトリに格納し得る。
【０１０６】
演算装置１４００はさらに、第３の生成ユニット１４３４、第８の格納ユニット１４３６、第４の生成ユニット１４３８、および第９の格納ユニット１４４０を含み得る。第３の生成ユニット１４３４は、第１のユーザのログイン名に第１のアイデンティティドメインの識別子を添付することによって、第１のユーザのためのグローバルユニーク識別子を生成し得る。第８の格納ユニット１４３６は、第１のユーザのためのグローバルユニーク識別子を第１のディレクトリサブツリーに格納し得る。第４の生成ユニット１４３８は、第２のユーザのログイン名に第２のアイデンティティドメインの識別子を添付することによって、第２のユーザのためのグローバルユニーク識別子を生成し得る。第９の格納ユニット１４４０は、第２のユーザのためのグローバルユニーク識別子を第２のディレクトリサブツリーに格納し得る。
【０１０７】
演算装置１４００はさらに、第１０の格納ユニット１４４２、第１１の格納ユニット１４４４、第１の受取ユニット１４４６、第１の復元ユニット１４４８、および第１の認証ユニット１４５０を含み得る。第１０の格納ユニット１４４２は、第１のアイデンティティドメインの識別子を規定する第１のログインウェブページを、第１のユニフォーム・リソース・ロケータ（ＵＲＬ）に関連付けて格納し得る。第１１の格納ユニット１４４４は、第２のアイデンティティドメインの識別子を規定する第２のログインウェブページを、第１のＵＲＬとは異なる第２のＵＲＬに関連付けて格納し得る。第１の受取ユニット１４４６は、特定のユーザから、第１のログインウェブページまたは第２のログインウェブページである特定のログインウェブページを介して、特定のユーザのログイン名を受取り得る。第１の復元ユニット１４４８は、（ａ）特定のユーザのログイン名および（ｂ）特定のログインウェブページによって規定される特定のアイデンティティドメイン識別子の両方に基づいて、特定のユーザのためのグローバルユニーク識別子を復元し得る。第１の認証ユニット１４５０は、特定のユーザのためのグローバルユニーク識別子に基づいて特定のユーザを認証し得る。
【０１０８】
演算装置１４００はさらに、第５の生成ユニット１４５２および第１の追加ユニット１４５４を含み得る。第５の生成ユニットは、第１のアイデンティティドメインに対する特定のサービスインスタンスのデプロイメントに応じて、特定のサービスインスタンスの名前および任意に生成されたパスワードの両方を規定するバインドクレデンシャルを自動的に生成し得る。第１の追加ユニットは、第１のアイデンティティドメインに対する特定のサービスインスタンスのデプロイメントに応じて、ＬＤＡＰディレクトリに新しいアクセスコントロールポリシーを自動的に追加し得る。新しいアクセスコントロールポリシーは、特定のサービスインスタンスの名前を有するエンティティが、特定のサービスインスタンスがデプロイされているアイデンティティドメインに関係する情報にしかアクセスできないことを規定する。
【０１０９】
さらに、本発明のいくつかの実施例は以下のとおり機能的に定義され得る。具体的には、クラウドコンピューティング環境内にライトウェイト・ディレクトリ・アクセス・プロトコル（ＬＤＡＰ：lightweight directory access protocol）ディレクトリを含む装置またはシステムが提供される。装置またはシステムは、ルートノードを有するＬＤＡＰディレクトリにおいて、第２のドメインではなく第１のドメインに関連付けられるエンティティのアイデンティティを、ルートノードから派生する第１のディレクトリサブツリーに格納するための手段と、ＬＤＡＰディレクトリにおいて、第１のドメインではなく第２のドメインに関連付けられるエンティティのアイデンティティを、ルートノードからも派生するが第１のディレクトリサブツリーとは別個である第２のディレクトリサブツリーに格納するための手段と、第１のドメインにデプロイされたサービスインスタンスが第２のディレクトリサブツリーに格納されるアイデンティティにアクセスするのを阻止するための手段と、第２のドメインにデプロイされたサービスインスタンスが第１のディレクトリサブツリーに格納されるアイデンティティにアクセスするのを阻止するための手段とを含む。
【０１１０】
好ましくは、装置またはシステムはさらに、第２のドメインにではなく第１のドメインに対する第１のサービスインスタンスのデプロイメントに応じて、第１のクレデンシャルを生成するための手段を含む。第１のクレデンシャルは、ＬＤＡＰディレクトリを維持するＬＤＡＰサーバによる検査時に、第１のサービスインスタンスが、第２のディレクトリサブツリーに格納されるアイデンティティではなく第１のディレクトリサブツリーに格納されるアイデンティティにアクセスすることをＬＤＡＰサーバに許可させる。当該装置またはシステムはさらに、第１のサービスインスタンスに第１のクレデンシャルを提供するための手段と、第１のドメインにではなく第２のドメインに対する第２のサービスインスタンスのデプロイメントに応じて、第２のクレデンシャルを生成するための手段を含む。第２のクレデンシャルは、ＬＤＡＰサーバによる検査時に、第２のサービスインスタンスが、第１のディレクトリサブツリーに格納されるアイデンティティではなく第２のディレクトリサブツリーに格納されるアイデンティティにアクセスすることをＬＤＡＰサーバに許可させる。当該装置またはシステムはさらに、第２のサービスインスタンスに第２のクレデンシャルを提供するための手段を含む。
【０１１１】
好ましくは、装置またはシステムはさらに、第１のユーザのログイン名に第１のドメインの識別子を添付することによって、第１のユーザのためのグローバルユニーク識別子を生成するための手段と、第１のディレクトリサブツリーに第１のユーザのためのグローバルユニーク識別子を格納するための手段と、第２のユーザのログイン名に第２のドメインの識別子を添付することによって、第２のユーザのためのグローバルユニーク識別子を生成するための手段と、第２のディレクトリサブツリーに第２のユーザのためのグローバルユニーク識別子を格納するための手段と、第１のドメインの識別子を規定する第１のログインウェブページを、第１のユニフォーム・リソース・ロケータ（ＵＲＬ）に関連付けて格納するための手段と、第２のドメインの識別子を規定する第２のログインウェブページを、第１のＵＲＬとは異なる第２のＵＲＬに関連付けて格納するための手段と、特定のユーザから、第１のログインウェブページまたは第２のログインウェブページである特定のログインウェブページを介して、特定のユーザのログイン名を受取るための手段と、（ａ）特定のユーザのログイン名および（ｂ）特定のログインウェブページによって規定される特定のドメイン識別子の両方に基づいて、特定のユーザのためのグローバルユニーク識別子を復元するための手段と、特定のユーザのためのグローバルユニーク識別子に基づいて特定のユーザを認証するための手段とを含む。
【０１１２】
好ましくは、装置またはシステムはさらに、第１のドメインに対する特定のサービスインスタンスのデプロイメントに応じて、特定のサービスインスタンスの名前および任意に生成されたパスワードの両方を規定するバインドクレデンシャルを自動的に生成するための手段と、第１のドメインに対する特定のサービスインスタンスのデプロイメントに応じて、ＬＤＡＰディレクトリに新しいアクセスコントロールポリシーを自動的に追加するための手段とを含む。新しいアクセスコントロールポリシーは、特定のサービスインスタンスの名前を有するエンティティが、特定のサービスインスタンスがデプロイされているドメインに関係する情報にしかアクセスできないことを規定する。
【０１１３】
したがって、明細書および図面は、限定的な意味ではなく例示的な意味で考えられるべきである。しかしながら、より広範な精神および範囲から逸脱することなく、追加、削減、削除ならびに他の変形および変更がそれに対してなされてもよいということは明白であろう。
【図１】
0006263537.tif 000003
【図２】
0006263537.tif 000004
【図３】
0006263537.tif 000005
【図４】
0006263537.tif 000006
【図５】
0006263537.tif 000007
【図６】
0006263537.tif 000008
【図７】
0006263537.tif 000009
【図８】
0006263537.tif 000010
【図９】
0006263537.tif 000011
【図１０】
0006263537.tif 000012
【図１１】
0006263537.tif 000013
【図１２】
0006263537.tif 000014
【図１３】
0006263537.tif 000015
【図１４】
0006263537.tif 000016