(57)【特許請求の範囲】
【請求項１】
少なくとも第一ユーザがマルチテナント・コンピューティング環境を用いることを可能にする方法であって、前記マルチテナント・コンピューティング環境は、第一テナントに関連付けられた第一コンピューティング・リソース、および第二テナントに関連付けられた第二コンピューティング・リソースを少なくとも含み、前記方法は、
プロセッサによって、前記第一ユーザに第一ユーザ・アカウントを割り当てるステップであって、前記第一ユーザ・アカウントは、前記マルチテナント・コンピューティング環境に亘って一意的な少なくとも一つのユーザ・アカウント証印を含む関連付けられた第一ユーザ・アカウント情報を有する、前記割り当てるステップと、
前記プロセッサによって、前記第一ユーザ・アカウントに第一サブスクリプションをリンクするステップであって、前記第一サブスクリプションは関連付けられた第一サブスクリプション情報を有する、前記リンクするステップと、
前記プロセッサによって、前記第一ユーザ・アカウントに第二サブスクリプションをリンクするステップであって、前記第二サブスクリプションは関連付けられた第二サブスクリプション情報を有する、前記リンクするステップと、
前記プロセッサによって、前記第一ユーザから、前記第一ユーザによる前記マルチテナント・コンピューティング環境へのログインに関連する前記ユーザ・アカウント証印を少なくとも受信するステップと、
前記プロセッサによって、前記ユーザ・アカウント証印による前記ログイン、および前記第一ユーザ・アカウントにリンクされた前記第一サブスクリプションの前記第一サブスクリプション情報に応じて、前記第一ユーザ・アカウントに対し、前記第一コンピューティング・リソースへのアクセスを許可するステップと、
前記プロセッサによって、前記ユーザ・アカウント証印による前記ログイン、および前記第一ユーザ・アカウントにリンクされた前記第二サブスクリプションの前記第二サブスクリプション情報に応じて、前記第一ユーザ・アカウントに対し、前記第二コンピューティング・リソースへのアクセスを許可するステップと、
前記プロセッサによって、前記第一ユーザの第一サブスクリプションが削除されるかまたは別途に無効にされている場合には、前記第一ユーザの第二サブスクリプションの全てへのアクセスを制限するステップ、
を含む、方法。
【請求項２】
前記第一サブスクリプションおよび前記第二サブスクリプションを前記第一ユーザ・アカウントに前記リンクするステップは、データベースにデータを格納するステップを含む、請求項１に記載の方法。
【請求項３】
前記第一コンピューティング・リソースは第一ウェブ・プレゼンスを含み、前記第二コンピューティング・リソースは第二ウェブ・プレゼンスを含む、請求項１または請求項２に記載の方法。
【請求項４】
前記第一ウェブ・プレゼンスは少なくとも一つのウェブ・ページを含み、前記第二ウェブ・プレゼンスは少なくとも一つのウェブ・ページを含む、請求項３に記載の方法。
【請求項５】
前記第一テナントは、関連付けられた第一名前空間を有し、
前記第二テナントは、前記第一名前空間とは別個の関連付けられた第二名前空間を有し、
前記第一コンピューティング・リソースは前記第一名前空間に関連付けられ、
前記第二コンピューティング・リソースは前記第二名前空間に関連付けられる、
請求項１〜４のいずれかに記載の方法。
【請求項６】
前記第一ユーザによる前記ログインの後、前記プロセッサによって、前記第一ユーザが、前記第一コンピューティング・リソースおよび前記第二コンピューティング・リソースのうちの少なくとも一つへのアクセスに関連して、少なくとも第二ユーザと協働できるようにされる、請求項１〜５のいずれかに記載の方法。
【請求項７】
前記第一ユーザおよび前記第二ユーザの各々による前記協働のアクセスは、（ａ）ファイル読み取りアクセス、（ｂ）ファイル書き込みアクセス、（ｃ）ファイル作成アクセス、または（ｄ）これらの任意の組み合わせを含む、請求項６に記載の方法。
【請求項８】
（ａ）前記プロセッサによって、前記第一テナントに関連付けられた前記第一ユーザが、前記第一テナントに関連付けられたコンピューティング・リソース上で協働するために、前記第二テナントに関連付けられた第二ユーザを招請することを可能にするステップ、
（ｂ）前記プロセッサによって、前記第一ユーザの前記第一サブスクリプション上の、前記第一コンピューティング・リソースへのアクセスの間の能力を制限する役割情報を維持するステップ、
（ｃ）前記プロセッサによって、前記第一ユーザのサブスクリプションのセットから、前記第一ユーザの或るサブスクリプションを無効化するステップ、もしくは
（ｄ）前記プロセッサによって、テナントが、前記第一ユーザの第一サブスクリプションに関連付けられたルールに基づいて、複数の第二スクリプションのどれに前記第一ユーザが加われるかを制限できるようにするステップ、または
（ｅ）これらステップの任意の組み合わせ、
のうちの少なくとも一つをさらに含む、請求項１〜７のいずれかに記載の方法。
【請求項９】
請求項１〜８の何れか１項に記載の方法の各ステップをコンピュータに実行させる、コンピュータ・プログラム。
【請求項１０】
請求項９記載の前記コンピュータ・プログラムをコンピュータ可読ストレージ媒体に記録したコンピュータ可読ストレージ媒体。
【請求項１１】
請求項１〜８の何れか１項に記載の方法の各ステップをコンピュータ・ハードウェアによる手段として構成したシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、一般に、企業のソーシャル・ビジネス・コンピューティングのためのマルチテナント機能のサポートの分野に関する。
【背景技術】
【０００２】
一般に、複数の組織に亘る全ての参加者をまとめて適切に社会的にネットワークで結ぶことは通常はできない。さらに、複数のテナントに亘るユーザ・アカウントのライフ・サイクルも、通常は効率的かつ効果的に管理はできない。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
様々な実施形態において、企業のソーシャル・ビジネス・コンピューティングのためのマルチテナント機能のサポートを可能にする方法論を提供することが可能である。
【課題を解決するための手段】
【０００４】
一実施形態において、少なくとも第一ユーザがマルチテナント・コンピューティング環境を用いることを可能にする方法が提供され、このマルチテナント・コンピューティング環境は、第一テナントに関連付けられた第一コンピューティング・リソース、および第二テナントに関連付けられた第二コンピューティング・リソースを少なくとも含み、本方法は、プロセッサによって、第一ユーザに第一ユーザ・アカウントを割り当てるステップであって、第一ユーザ・アカウントは、マルチテナント・コンピューティング環境に亘って一意的な少なくとも一つのユーザ・アカウント証印（ｉｎｄｉｃｉｕｍ）を含む関連付けられた第一ユーザ・アカウント情報を有する、該割り当てるステップと；プロセッサによって、第一ユーザ・アカウントに第一サブスクリプション（ｓｕｂｓｃｒｉｐｔｉｏｎ）をリンクするステップであって、第一サブスクリプションは関連付けられた第一サブスクリプション情報を有する、該リンクするステップと；プロセッサによって、第一ユーザ・アカウントに第二サブスクリプションをリンクするステップであって、第二サブスクリプションは関連付けられた第二サブスクリプション情報を有する、該リンクするステップと；プロセッサによって、第一ユーザから、第一ユーザによるマルチテナント・コンピューティング環境へのログインに関連するユーザ・アカウント証印を少なくとも受信するステップと；プロセッサによって、ユーザ・アカウント証印によるログイン、および第一ユーザ・アカウントにリンクされた第一サブスクリプションの第一サブスクリプション情報に基づいて、第一ユーザ・アカウントに対し、第一コンピューティング・リソースへのアクセスを許可するステップと；プロセッサによって、ユーザ・アカウント証印によるログイン、および第一ユーザ・アカウントにリンクされた第二サブスクリプションの第二サブスクリプション情報に基づいて、第一ユーザ・アカウントに対し、第二コンピューティング・リソースへのアクセスを許可するステップと；を含む。
【０００５】
望ましくは、第一サブスクリプションおよび第二サブスクリプションを第一ユーザ・アカウントにリンクするステップは、データベースにデータを格納するステップを含む。さらに望ましくは、第一コンピューティング・リソースは第一ウェブ・プレゼンスを含み、第二コンピューティング・リソースは第二ウェブ・プレゼンスを含む。まださらに望ましくは、該第一ウェブ・プレゼンスは少なくとも一つのウェブ・ページを含み、該第二ウェブ・プレゼンスは少なくとも一つのウェブ・ページを含む。
【０００６】
望ましくは、第一テナントは、関連付けられた第一名前空間を有し、第二テナントは、第一名前空間とは別個の関連付けられた第二名前空間を有し、第一コンピューティング・リソースは第一名前空間に関連付けられ、第二コンピューティング・リソースは第二名前空間に関連付けられる。さらに望ましくは、第一ユーザによるログインの後、第一ユーザは、プロセッサによって、第一コンピューティング・リソースおよび第二コンピューティング・リソースのうちの少なくとも一つへのアクセスに関連して、少なくとも第二ユーザと協働できるようにされる。まださらに望ましくは、第一ユーザおよび第二ユーザの各々による協働のアクセスは、（ａ）ファイル読み取りアクセス、（ｂ）ファイル書き込みアクセス、（ｃ）ファイル作成アクセス、または（ｄ）これらの任意の組み合わせを含む。
【０００７】
望ましくは、本方法は、（ａ）プロセッサによって、第一テナントに関連付けられた第一ユーザが、第一テナントに関連付けられたコンピューティング・リソース上で協働するために、第二テナントに関連付けられた第二ユーザを招請することを可能にするステップ；（ｂ）プロセッサによって、第一ユーザの第一サブスクリプション上の、第一コンピューティング・リソースへのアクセスの間の能力を制限する役割情報を維持するステップ；（ｃ）プロセッサによって、第一ユーザのプライマリ・サブスクリプションが削除されるかまたは別途に無効にされている場合には、第一ユーザの複数のセカンダリ・サブスクリプションの全てへのアクセスを制限するステップ；（ｄ）プロセッサによって、第一ユーザのサブスクリプションのセットから、第一ユーザの或るサブスクリプションを無効化するステップ；もしくは（ｅ）プロセッサによって、テナントが、第一ユーザのプライマリ・サブスクリプションに関連付けられたルールに基づいて、複数のセカンダリ・サブスクリプションのどれに第一ユーザが加われるかを制限できるようにするステップ；または（ｆ）これらステップの任意の組み合わせ；のうちの少なくとも一つをさらに含む。
【０００８】
別の実施形態において、少なくとも第一ユーザがマルチテナント・コンピューティング環境を用いることを可能にするための、コンピュータによって実行が可能な命令のプログラムを実体的に具現化するコンピュータ可読ストレージ媒体が提供され、このマルチテナント・コンピューティング環境は、第一テナントに関連付けられた第一コンピューティング・リソース、および第二テナントに関連付けられた第二コンピューティング・リソースを少なくとも含み、該命令のプログラムは、実行されたとき、第一ユーザに第一ユーザ・アカウントを割り当てるステップであって、第一ユーザ・アカウントは、マルチテナント・コンピューティング環境に亘って一意的な少なくとも一つのユーザ・アカウント証印を含む関連付けられた第一ユーザ・アカウント情報を有する、該割り当てるステップと；第一ユーザ・アカウントに第一サブスクリプションをリンクするステップであって、第一サブスクリプションは関連付けられた第一サブスクリプション情報を有する、該リンクするステップと；第一ユーザ・アカウントに第二サブスクリプションをリンクするステップであって、第二サブスクリプションは関連付けられた第二サブスクリプション情報を有する、該リンクするステップと；第一ユーザから、第一ユーザによるマルチテナント・コンピューティング環境へのログインに関連するユーザ・アカウント証印を少なくとも受信するステップと；ユーザ・アカウント証印によるログイン、および第一ユーザ・アカウントにリンクされた第一サブスクリプションの第一サブスクリプション情報に基づいて、第一ユーザ・アカウントに対し、第一コンピューティング・リソースへのアクセスを許可するステップと；ユーザ・アカウント証印によるログイン、および第一ユーザ・アカウントにリンクされた第二サブスクリプションの第二サブスクリプション情報に基づいて、第一ユーザ・アカウントに対し、第二コンピューティング・リソースへのアクセスを許可するステップと；を実施する。
【０００９】
別の実施形態において、少なくとも第一ユーザがマルチテナント・コンピューティング環境を用いることを可能にするためのシステムが提供され、このマルチテナント・コンピューティング環境は、第一テナントに関連付けられた第一コンピューティング・リソース、および第二テナントに関連付けられた第二コンピューティング・リソースを少なくとも含み、本システムは、第一ユーザに第一ユーザ・アカウントを割り当てるよう構成された割り当てエレメントであって、第一ユーザ・アカウントは、マルチテナント・コンピューティング環境に亘って一意的な少なくとも一つのユーザ・アカウント証印を含む関連付けられた第一ユーザ・アカウント情報を有する、該割り当てエレメントと；第一ユーザ・アカウントに第一サブスクリプションをリンクするよう構成された第一リンク・エレメントであって、第一サブスクリプションは関連付けられた第一サブスクリプション情報を有する、該第一リンク・エレメントと；第一ユーザ・アカウントに第二サブスクリプションをリンクするよう構成された第二リンク・エレメントであって、第二サブスクリプションは関連付けられた第二サブスクリプション情報を有する、該第二リンク・エレメントと；第一ユーザから、第一ユーザによるマルチテナント・コンピューティング環境へのログインに関連するユーザ・アカウント証印を少なくとも受信するよう構成された受信エレメントと；ユーザ・アカウント証印によるログイン、および第一ユーザ・アカウントにリンクされた第一サブスクリプションの第一サブスクリプション情報に基づいて、第一ユーザ・アカウントに対し、第一コンピューティング・リソースへのアクセスを許可するよう構成された第一許可エレメントと；ユーザ・アカウント証印によるログイン、および第一ユーザ・アカウントにリンクされた第二サブスクリプションの第二サブスクリプション情報に基づいて、第一ユーザ・アカウントに対し、第二コンピューティング・リソースへのアクセスを許可するよう構成された第二許可エレメントと；を含む。
【００１０】
以降に、本発明の好適な実施形態を、単なる例示として、下記の図面を参照しながら説明する。
【図面の簡単な説明】
【００１１】
【図１】本発明の或る実施形態による、ライトウェイト・ディレクトリ・アクセス・プロトコル（ＬＤＡＰ：ｌｉｇｈｔｗｅｉｇｈｔ  ｄｉｒｅｃｔｏｒｙ  ａｃｃｅｓｓ  ｐｒｏｔｏｃｏｌ）、データ情報ツリー（ＤＩＴ：ｄａｔａ  ｉｎｆｏｒｍａｔｉｏｎ  ｔｒｅｅ）およびスキーマの例示的なリファレンス実装の線図を示す。
【図２】図１の線図の或るノードに関連するデータ構造定義の図表を示す。
【図３】図１の線図の或るノードに関連するデータ構造定義の図表を示す。
【図４】図１の線図の或るノードに関連するデータ構造定義の図表を示す。
【図５】図１の線図の或るノードに関連するデータ構造定義の図表を示す。
【図６】図１の線図の或るノードに関連するデータ構造定義の図表を示す。
【図７】図１の線図の或るノードに関連するデータ構造定義の図表を示す。
【図８】図１の線図の或るノードに関連するデータ構造定義の図表を示す。
【図９】図１の線図の或るノードに関連するデータ構造定義の図表を示す。
【図１０】本発明の或る実施形態による、方法のフローチャートを示す。
【図１１】本発明の或る実施形態による、システムのブロック図を示す。
【図１２】本発明の或る実施形態による、システムのブロック図を示す。
【発明を実施するための形態】
【００１２】
様々な実施形態において、企業のソーシャル・ビジネス・コンピューティングのためのマルチテナント機能のサポートを可能にする諸方法論を提供することが可能である。
【００１３】
様々な例において、企業のソーシャル・ビジネス・コンピューティングのためのマルチテナント機能サポートは、システム、方法、もしくはアルゴリズムまたはこれらの組み合わせの形で実装することが可能である。
【００１４】
他の例において、シングル・サインオン認証／認可を用いるマルチテナント環境中で諸テナントに亘るサポートを可能にするためのメカニズムが提供される。
【００１５】
他の例において、マルチテナント環境中の諸テナントに亘る諸ユーザによる協働を可能にするためのメカニズムが提供される。
【００１６】
本開示において、用語「テナント」とは、或る組織（例えば、企業体など）を言う。
【００１７】
本開示において、用語「マルチテナント環境」とは、第一テナントの少なくとも一つのコンピュータ・プレゼンスおよび第二テナントの少なくとも一つのコンピュータ・プレゼンス（第一テナントと第二テナントとは相互にはっきり分かれている）をホストする（例えば、一つ以上のサーバを含む）コンピューティング環境を言う。一具体例において、或るマルチテナント環境は、複数のテナントの各々に対し、それぞれのウェブ・プレゼンスをホストすることができる。
【００１８】
本開示において、語句「コンピュータ・プレゼンスをホストする」とは、ソーシャル・ビジネス・アプリケーションに関連して、計算を支え遂行するためのコンピューティング力のプレゼンスを言う。
【００１９】
本開示において、用語「ウェブ空間」とは、ＵＲＬ（ｕｎｉｆｏｒｍ  ｒｅｓｏｕｒｃｅ ｌｏｃａｔｏｒ：統一資源ロケータ）で定義されるクラウド・ベースのウェブ・プレゼンスを言う。
【００２０】
本開示において、用語「コンピューティング・リソース」とは、マルチテナント・コンピューティング環境で利用可能なデータもしくはアプリケーションまたはその両方を言う。様々な具体例において、かかるコンピューティング・リソースは、ウェブ・プレゼンス、ウェブサイト、もしくはウェブ・ページ（群）、またはこれらの組み合わせを含んでもよい。他の具体例において、かかるウェブ・プレゼンスには、一緒にネットワークで社会的につながる人々によって寄与されたデータ（例えば、分析データ）を含めることもできる。
【００２１】
本開示において、用語「サブスクリプション情報」とは、或るユーザ（例えば、エンドユーザ）と或るテナントとの間に確立された有効な関係を定義するデータを言う。一具体例において、かかるサブスクリプション情報を用いて、申し込み者に対し、一つ以上のテナント境界へのアクセス（およびその中で、社会的にネットワークでつながる能力）を提供することができる。
【００２２】
本開示において、用語「プライマリ・サブスクリプション」とは、ユーザ（例えばエンド・ユーザ）に対する、当該ユーザが所属する当初の（または「一次的な」）組織へのサブスクリプションを言う。
【００２３】
本開示において、用語「セカンダリ・サブスクリプション」とは、ユーザ（例えばエンド・ユーザ）に対する、当該ユーザが所属する以後の（または「後続の」）組織へのサブスクリプション（すなわち、プライマリ・サブスクリプションの後に続くサブスクリプション）を言う。
【００２４】
本明細書で説明するように、シングル・サインオン（ＳＳＯ：ｓｉｎｇｌｅ  ｓｉｇｎ−ｏｎ）認証／認可を用いるマルチテナント環境を可能にするためのメカニズムを提供する。一具体例において、シングル・サインオン認証／認可を用いるマルチテナント環境中で、諸テナントに亘る協働を可能にするためのメカニズムが提供される。別の具体例において、ユーザ・アカウントを生成し、（例えば、シングル・サインオン認証／認可を可能にするために）該ユーザに一つ以上のサブスクリプションをプロビジョニングするためのメカニズムが提供される。別の具体例において、ユーザが再度ログインして（すなわち、初回にログインし、所与のセッションの間認証された後で）認証を受けるよう促されることなく、ユーザが、該ユーザのサブスクリプション認可を用いて、マルチテナント環境中の協働サービスにアクセスすることを可能にするメカニズムが提供される。別の具体例では、統一資源ロケータ（ＵＲＬ）ホスト群（例えば、自組織の名前空間のセットとしての各組織（すなわち、テナント））を介して、ウェブ空間をマッピングするためのメカニズムが提供される。
【００２５】
なお、一般に、従来型のマルチテナント環境で組織のコンテンツへの安全なアクセスを提供できる方法はごくわずかしかない。コンテンツとユーザ・ベースとの分離は、スタックの様々なレベルにおいてデータ・モデルを適切に保護するか、もしくはそれに換わる最極端としては、組織にその組織自体の展開を与えることによって達成することができる。
【００２６】
一方で、選択されたクラウド・アーキテクチャの型が、ユーザ・ベースが一元的に登録されるものであれば、通常、ユーザが組織の境界を越えて協働するのは容易ではない。
【００２７】
他方で、選択されたクラウド・アーキテクチャの型が、ユーザ・ベースが一元的に登録されないものであれば、通常、所与のユーザの認証証明書が様々な組織の中に複製されるか（このことは、アイデンティティ管理およびユーザ／アイデンティティの信用性確認の困難につながり得る）、もしくはユーザのライフ・サイクル管理を著しく困難にするかのいずれかをもたらす。
【００２８】
しかして、本明細書で説明するように、中央のユーザ・リポジトリを効果的に管理し、ユーザのアイデンティティ確認およびライフ・サイクルの問題を解決できる様々なメカニズムが提供される。一例において、ポリシー・オブジェクトを、組織レベルもしくはユーザ・レベルまたはその両方で格納し、所与の組織のユーザが、他の組織からのユーザを、自分たちの協働空間の中に招請するのを可能にすることができる（他の組織からのかかるユーザは、以降、「組織外ユーザ」と称することがある）。別の例において、諸ユーザに対する役割を維持するための規定が定められる（例えば、かかる役割は、様々なサービスによって照会もしくは強制またはその両方が行われ、これらのユーザが有する（例えば組織外ユーザが有する）権利をよりよく管理／定義することができる）。他の例において、このユーザを取り扱うためのメカニズムは、運営管理、ユーザのライフ・サイクル問題、およびコンテンツ所有権問題の処理もより容易にする。
【００２９】
ここで、ユーザ・アカウントとユーザ・サブスクリプションとを区別する実施形態を参照することとする。この実施形態において、ユーザ・アカウントは認証のために使われ、ユーザ・サブスクリプションは認可のために使われる。一例において、単一のユーザ・アカウントを複数のユーザ・サブスクリプションに関連付けることができ、各々のサブスクリプションを、或る所与の組織（すなわち、マルチテナント環境中の所与のテナント）のウェブ空間に適用することができる。したがって、この例では、単一のユーザ・アカウントが、何回もログインおよびログアウトをせずに、複数の組織（つまりテナント）の各々のウェブ空間に社会的に参加することが可能なことになる。
【００３０】
一具体例において、マルチテナント環境は、統一資源ロケータ（ＵＲＬ）ホストを介し、複数のウェブ空間を使ってバーチャルにマップすることができる。全ての参加組織（つまりテナント）は、複数の一意的名前空間を所有する（または、別途に関連付けする）ことが可能である。これらの名前空間は、エンドユーザが、該ユーザが最初に（例えば、所与のセッションに対し）ログインした当初の組織の名前空間をあちこち移動しまたはその外に移動する際に、一意的に識別することができる。本開示の目的の上で、「当社の組織の名前空間をあちこち移動しまたはその外に移動する」ということは、この例では、同じ人が、一つのウェブ空間中にログインし現在のテナントを離れて別のテナントに移動したいときに、その移動を許可または否認するため、そのユーザは、アカウント情報からの当人のサブスクリプションに照らしてチェックされることになる、ということを意味する。
【００３１】
（所与のユーザ・アカウントに対する）全ての有効なサブスクリプションは、該所与のユーザ・アカウント（これは、例えば、組織の名前空間および申し込み者の関連組織識別子に基づいて認識することが可能である）に関連付けられたリンク（群）を介して読み出すことができる。次いで、ユーザ・サブスクリプション・データを用いて、所与のユーザが、所与の組織の境界内の保護されたウェブ・リソースにアクセスする（例えば、安全にアクセスする）のを認可することが可能となる。
【００３２】
別の例において、ユーザ・アカウントのプロビジョニングもしくはサブスクリプションの許諾またはその両方は、招待案内を介して行うことができる。別の例において、ユーザ・アカウントは、テナントあたり一つのサブスクリプションを用いてプロビジョニングすればよい。この例において、有効なサブスクリプションを有するエンドユーザだけが、所与のテナントへのアクセスを許可される。
【００３３】
一具体例において、ユーザ・サブスクリプションは、組織のシステム管理者による招待案内を通して許諾することができ、ユーザ・アカウントは、システム全体の管理者によってプロビジョニングすることができる。以下でさらに詳しく説明するように、このプロビジョニング・プロセスを用いて、２つの異なったレベルで、ユーザ・アカウントおよびユーザ・サブスクリプションを、管理、アクティブ化、非アクティブ化、もしくは終了しまたはこれらの組み合わせを実施することが可能である（例えば、ユーザ・アカウントはユーザ・サブスクリプションとは別個に管理することができる）。
【００３４】
一具体例において、ユーザ・アカウントは、全ての関連するユーザ・サブスクリプションに反映させる仕方で管理することができる。例えば、或る所与のユーザ・アカウントが非アクティブ化されたならば、その所与のユーザ・アカウントに関連付けられた全てのサブスクリプションは、（この所与のユーザ・アカウントに対する認証プロセスが機能しないことになり）いかなるウェブ名前空間へのアクセスにも全く使うことができない。本開示の目的に対する、２つの名前空間の例として、ｈｔｔｐｓ：／／ｂａｎｋＸＹＺ．ｃｏｎｎｅｃｔｉｏｎｓ．ｃｏｍ／ｈｏｍｅｐａｇｅと、ｈｔｔｐｓ：／／ｂａｎｋＡＢＣ．ｃｏｎｎｅｃｔｉｏｎｓ．ｃｏｍ／ｈｏｍｅｐａｇｅと、がある。
【００３５】
別の例において、所与のユーザ・アカウントを再アクティブ化することができ、以前に格納されていた全てのユーザのアプリケーション・データが、このアカウントに対して再び利用可能なことになる。別の例において、所与のユーザ・アカウントを終結することができ、これにより、関連する全てのユーザのアプリケーション・データが回収され削除されることになり得る。
【００３６】
ここで、所与の組織に対する或るユーザ・サブスクリプションを（例えば、直接に）管理する実施形態を参照することとする。一具体例において、或るユーザ・サブスクリプションを、或る所与の組織に対し、アクティブ化、非アクティブ化、もしくは終了またはこれらの組み合わせを行うように管理することができる。この例において、かかる処置は、同じユーザ・アカウントに対する他の有効なサブスクリプションには影響がないことになる。
【００３７】
次いで、実装がセントラル・コンポーネントを介して（例えば、既存のアプリケーションに影響することなく）行われる実施形態を参照することにする。一具体例において、本明細書で説明する様々なマルチテナント機能サポートは、抽象層全体を通して実施することができる。この例では、全ての既存アプリケーションは単一のコード・ベース中に保持することが可能である。次いで、この抽象層を用いて、申し込み者に組織およびウェブ・ベースのアプリケーションを提供することができる。
【００３８】
次いで図１および図２〜９を参照し、ここで、ライトウェイト・ディレクトリ・アクセス・プロトコル、データ情報ツリー、およびスキーマを使った例示的な実装を参照することにする（この例は、ＬＤＡＰサービスを用いて、ユーザ・アカウントおよびサブスクリプションを有する組織構造体をどのように実装できるかを示す）。一例において、「ＷＡＬＴＺ」は或るＡＰＩにおけるリファレンス実装である。このソーシャル・ビジネス・プラットフォームの上で実行されるアプリケーションは、このＡＰＩに依って、所与のユーザが（だれが）どのウェブ空間で（どこで）プロフィールのさらなる詳細を（何を）使ってアクセスするのを許可できるかを知ることができる。一具体例において、ＷＡＬＴＺは、ＩＤ、役割、メールなどを返信するために、ｕｉｄ＝ｊｓｍｉｔｈ（あなたは誰ですか？）およびｗｗｗ．ｂａｎｋＡＢＣ．ｃｏｍ（どこに行きたいのですか？）を認識する。
【００３９】
さらに具体的には、図１に見られるように、以下の例示的な相互接続されたノードがある。すなわち、ノードＡ（このノードにおける属性のセットの詳細については図２を参照）、ノードＢ（このノードにおける属性のセットの詳細については図３を参照）、ノードＣ（このノードにおける属性のセットの詳細については図４を参照）、ノードＤ（このノードにおける属性のセットの詳細については図５を参照）、ノードＥ（このノードにおける属性のセットの詳細については図６を参照）、およびノードＦ（このノードにおける属性のセットの詳細については図７を参照）である。
【００４０】
ここで図１０を参照すると、少なくとも第一ユーザがマルチテナント・コンピューティング環境を用いることを可能にする方法が示されており、このマルチテナント・コンピューティング環境は、第一テナントに関連付けられた第一コンピューティング・リソース、および第二テナントに関連付けられた第二コンピューティング・リソースを少なくとも含む。図１０に見られるように、この実施形態の方法は、３０１で、プロセッサによって、第一ユーザに第一ユーザ・アカウントを割り当てるステップであって、第一ユーザ・アカウントは、マルチテナント・コンピューティング環境に亘って一意的な少なくとも一つのユーザ・アカウント証印を含む関連付けられた第一ユーザ・アカウント情報を有する、該割り当てるステップと；３０３で、プロセッサによって、第一ユーザ・アカウントに第一サブスクリプションをリンクするステップであって、第一サブスクリプションは関連付けられた第一サブスクリプション情報を有する、該リンクするステップと；３０５で、プロセッサによって、第一ユーザ・アカウントに第二サブスクリプションをリンクするステップであって、第二サブスクリプションは関連付けられた第二サブスクリプション情報を有する、該リンクするステップと；３０７で、プロセッサによって、第一ユーザから、第一ユーザによるマルチテナント・コンピューティング環境へのログインに関連するユーザ・アカウント証印を少なくとも受信するステップと；３０９で、プロセッサによって、ユーザ・アカウント証印によるログイン、および第一ユーザ・アカウントにリンクされた第一サブスクリプションの第一サブスクリプション情報に基づいて、第一ユーザ・アカウントに対し、第一コンピューティング・リソースへのアクセスを許可するステップと；３１１で、プロセッサによって、ユーザ・アカウント証印によるログイン、および第一ユーザ・アカウントにリンクされた第二サブスクリプションの第二サブスクリプション情報に基づいて、第一ユーザ・アカウントに対し、第二コンピューティング・リソースへのアクセスを許可するステップと；を含む。
【００４１】
一例において、いずれのステップも記載した順序で実行することができ、あるいはこれらのステップを別の順序で実行することも可能である。
【００４２】
次いで図１１を参照すると、別の実施形態でシステム４００が提供される。本システムは、少なくとも第一ユーザがマルチテナント・コンピューティング環境を用いることを可能にするためのものであって、このマルチテナント・コンピューティング環境は、第一テナントに関連付けられた第一コンピューティング・リソース、および第二テナントに関連付けられた第二コンピューティング・リソースを少なくとも含む。本システムには、第一ユーザに第一ユーザ・アカウントを割り当てるよう構成された割り当てエレメント４０１であって、第一ユーザ・アカウントは、マルチテナント・コンピューティング環境に亘って一意的な少なくとも一つのユーザ・アカウント証印を含む関連付けられた第一ユーザ・アカウント情報を有する、該割り当てエレメント４０１と；第一ユーザ・アカウントに第一サブスクリプションをリンクするよう構成された第一リンク・エレメント４０３であって、第一サブスクリプションは関連付けられた第一サブスクリプション情報を有する、該第一リンク・エレメント４０３と；第一ユーザ・アカウントに第二サブスクリプションをリンクするよう構成された第二リンク・エレメント４０５であって、第二サブスクリプションは関連付けられた第二サブスクリプション情報を有する、該第二リンク・エレメント４０５と；第一ユーザから、第一ユーザによるマルチテナント・コンピューティング環境へのログインに関連するユーザ・アカウント証印を少なくとも受信するよう構成された受信エレメント４０７と；ユーザ・アカウント証印によるログイン、および第一ユーザ・アカウントにリンクされた第一サブスクリプションの第一サブスクリプション情報に基づいて、第一ユーザ・アカウントに対し、第一コンピューティング・リソースへのアクセスを許可するよう構成された第一許可エレメント４０９と；ユーザ・アカウント証印によるログイン、および第一ユーザ・アカウントにリンクされた第二サブスクリプションの第二サブスクリプション情報に基づいて、第一ユーザ・アカウントに対し、第二コンピューティング・リソースへのアクセスを許可するよう構成された第二許可エレメント４１１と；第一サブスクリプションおよび第二サブスクリプションを第一ユーザ・アカウントにリンクするためのデータを格納するデータベース４１３と；第一ユーザによるログインの後、第一コンピューティング・リソースおよび第二コンピューティング・リソースのうちの少なくとも一つへのアクセスに関連して、第一ユーザによる少なくとも第二ユーザとの協働を可能にするよう構成された協働エレメント４１５と；の各エレメントを含めることができる。
【００４３】
さらに、一例において、マルチテナント・コンピューティング環境は、第三テナントに関連付けられた第三コンピューティング・リソースを少なくとも含み、本システムは、第一ユーザに対し第三コンピューティング・リソースへのアクセスを禁止するよう構成された、禁止エレメント４１７をさらに含む。
【００４４】
前述のエレメント／コンポーネントの各々は、システム・バス４０２を介して動作可能なように一緒に接続することができる。一例において、様々なエレメント／コンポーネントの間の通信は双方向性とすればよい。別の例において、この通信は、インターネット、イントラネット、ローカル・エリア・ネットワーク、広域ネットワーク、もしくは任意の他の望ましい通信チャネル（群）またはこれらの組み合わせを介して行うことができる。別の例において、これらのエレメント／コンポーネントの一部または全部は、図１２に示された種類のコンピュータ・システム中に実装することが可能である。
【００４５】
一例において、図１のツリー構造体およびオブジェクト・クラスは、或る実施形態のオペレーションに関連して以下の機能をする。すなわち、ａｕｔｈＮ（認証）プロセスに対し、サブスクリプション者のオブジェクトは、必ずそのａｕｔｈＺ（認可）プロセスに対するアカウントと関連付けられる。一旦、ａｕｔｈＺが行われたならば、同じユーザに対し再度ａｕｔｈＮを行う必要はない。アカウント・オブジェクトは、サブスクリプション・オブジェクトのリストを含む。同一のアカウントに対するこのサブスクリプション・リストは、このアカウントが相異なるテナントをあちこち移動することができるかどうかを判定するために用いられることになる。各サブスクリプションは、それ自体のウェブ空間と関連付けられる。ユーザがアカウントおよびサブスクリプションを介してあちこちに移動するとき、許容されるウェブ空間が該ユーザの移動を受け入れる。
【００４６】
ここで図１２を参照すると、この図は、本発明の或る実施形態によるコンピューティング・システム５００のハードウェア構成を示している。図示のように、このハードウェア構成は、少なくとも一つのプロセッサまたは中央処理ユニット（ＣＰＵ：ｃｅｎｔｒａｌ  ｐｒｏｃｅｓｓｉｎｇ  ｕｎｉｔ）５１１を有する。ＣＰＵ５１１は、システム・バス５１２を介して、ランダム・アクセス・メモリ（ＲＡＭ：ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ）５１４と、読み取り専用メモリ（ＲＯＭ：ｒｅａｄ−ｏｎｌｙ  ｍｅｍｏｒｙ）５１６と、（ディスク・ユニット５２１およびテープ・ドライブ５４０などの周辺デバイスをバス５１２に接続するための）入力／出力（Ｉ／Ｏ：ｉｎｐｕｔ／ｏｕｔｐｕｔ）アダプタ５１８と、（キーボード５２４、マウス５２６、スピーカ５２８、マイクロフォン５３２もしくは他のユーザ・インターフェース・デバイスまたはこれらの組み合わせをバス５１２に接続するための）ユーザ・インターフェース・アダプタ５２２と、システム５００をデータ処理ネットワーク、インターネット、イントラネット、ローカル・エリア・ネットワーク（ＬＡＮ：ｌｏｃａｌ  ａｒｅａ  ｎｅｔｗｏｒｋ）などに接続するための）通信アダプタ５３４と、バス５１２をディスプレイ・デバイス５３８もしくはプリンタ５３９（例えば、デジタル・プリンタなど）またはその両方に接続するためのディスプレイ・アダプタ５３６と、に相互接続されている。
【００４７】
なお、様々な図で、通信を行っている様々なエンティティを示すことができるが、当然ながら、これらの図は、実際は、これらエンティティの各々によって、所有され、リースされ、作動され、使用され、保有され、もしくは制御され、またはこれらの組み合わせが行われているコンピュータ・システム（群）または類似システムが行っている通信を表している。
【００４８】
本明細書で説明するように、（所与のユーザに対する）シングル・ユーザ・サインオンを使ったテナントにまたがる諸ユーザによる、サブスクリプション・マルチテナント機能ベースのサービスにアクセスする協働作業ためのメカニズムが提供され、本メカニズムは、マルチテナント環境に亘って、再度のログインを促されることなく（すなわち、所与のセッションの初回のログインに対する認証を受けた後で、再度のログインを促されることなく）、サブスクリプション・ベースのサービスにアクセスするための少なくとも一つのユーザ・クッキーを用いることを含む。この例において、この「クッキー」とはＳＳＯセキュリティ・クッキーを言い、ユーザ・アカウントが成功裏に認証できたときだけに許諾されるべきものである。この同じユーザ・クッキーは、その後、ユーザが最初にログオンできた当初のテナントにより与えられた当初のウェブ空間を越え離れて移動するために利用されることになる。
【００４９】
別の例では、様々な実施形態において、ＬＴＰＡ（ｌｉｇｈｔｗｅｉｇｈｔ  ｔｈｉｒｄ−ｐａｒｔｙ  ａｕｔｈｅｎｔｉｃａｔｉｏｎ  ｐｒｏｔｏｃｏｌ（ライトウェイト第三者認証プロトコル））クッキー（ＳＳＯに対するメカニズム）を活用したセキュリティ認証／ＳＳＯのための従来型のＷｅｂＳｐｈｅｒｅ（ＷｅｂＳｐｈｅｒｅはインターナショナル・ビジネス・マシーンズ・コーポレーションの登録商標である）メカニズム／プロトコルの全部または一部を用いることができる。但し、一部の顧客は、第三者のセキュリティ・プロキシを適用することが可能で、これは、複数のクッキーを最終的ウェブ・ベースのトラフィック中に組み込むことになる。
【００５０】
一例において、サブスクリプション認可は招待案内によって許諾される。かかる招待案内の一具体例において、Ａ社に勤務するジョン・スミスのアカウントは、当初にＡ社によって提供されたソーシャル・ウェブ空間にアクセスすることが可能である。ジョン・スミスがあるプロジェクトで作業している場合、該プロジェクトが、例えばＢ社など第三者との協働を必要とすることがあり得、Ｂ社のシステム管理者がジョン・スミスのサブスクリプションを許諾すれば、彼は両社のソーシャル空間にアクセスできることになる。
【００５１】
別の例において、協働サービスにアクセスするためにサブスクリプション認可を用いることができる。
【００５２】
別の例において、単一のユーザ・アカウントにソーシャル・サービスを受けるための資格を与えてもよい。ソーシャル・サービスを受ける一具体例において、或る人は多くのソーシャル・アプリケーション・サービスに参加することができる。
【００５３】
別の例において、単一ユーザ・アカウントのユーザが、企業の境界を越えた仲間の相異なるセット（群）に繋がりを持つことが可能である（例えば、これにより、ジョン・スミスは、Ａ社およびＢ社の両方に社会的繋がりを持つことができる）。
【００５４】
別の例において、（例えば、各組織が自分の名前空間のセットを有する）ＵＲＬホスト群を介して、ウェブ空間をマッピングするためのメカニズムが提供される。
【００５５】
別の例において、協働サービスの認可を行っている管理者によって、協働サービスのためのサブスクリプションを管理することができる。
【００５６】
別の例では、システム管理者（これはユーザ・アカウントを生成している組織の管理者でもよい）によって、ユーザ・アカウントを管理することが可能である。
【００５７】
本明細書で説明するように、ソーシャル・ソフトウェア、ソーシャル・コンピューティング、協働および交流、もしくはソーシャル・ビジネス・フレームワークまたはこれらの組み合わせのコンテキストにおいて、様々な実施形態を運用することができる。
【００５８】
本明細書で説明するように、クラウド：配布モデル：サービス型ソフトウェア（ＳａａＳ：Ｓｏｆｔｗａｒｅ  ａｓ  ａ  Ｓｅｒｖｉｃｅ）；クラウド：実現技術：マルチテナント機能；消費者デバイスまたはアプライアンス：ウェブ；収束型通信：モバイル・アプリケーション；ＩＴサービス：ビジネスおよびＩＴコンサルティング；ソフトウェア：アプリケーション開発ソフトウェア；ソフトウェア：アプリケーション・サーバ・ミドルウエア；ソフトウェア：協働アプリケーション；もしくはウェブ技術：コンテンツ管理および使用；またはこれらの組み合わせのコンテキストにおいて、様々な実施形態を運用することが可能である。
【００５９】
別の例において、システム管理者または同等者は、所与のユーザがアクセスを許可されたテナントの追加もしくは削除またはその両方を行うことができる。
【００６０】
別の例では、システム管理者または同等者は、「クラウド」を介して多数のアカウントおよび多数のアプリケーションを管理することが可能である。
【００６１】
本明細書で説明するように、様々なメカニズムにより、企業のソーシャル・ネットワーク形成ビジネスに対するマルチテナント機能サポートを備えた、サブスクリプション志向の「クラウド」ベース・サービス型ソフトウェア（ＳａａＳ）を提供する。
【００６２】
本明細書で説明するように、マルチテナント環境中の所与のユーザを（安全で、制御され、管理上効果的な仕方で）管理するためのメカニズムが提供される（例えば、該ユーザは、一つ以上のテナントのユーザ、またはマルチテナント環境へのゲストとして登録される）。
【００６３】
本明細書で説明するように、マルチテナント環境において（第一組織に関連する）第一ユーザの単一回の登録を（安全で、制御され、管理上効果的な仕方で）用い、該第一ユーザが、一つ以上の他の組織に関連する一人以上の他のユーザとの協働（例えば、コンテンツ共有）に参加することを可能にするためのメカニズムが提供される。
【００６４】
本明細書で説明するように、様々な実施形態において、複数の組織に亘る全ての参加者をまとめて適切に社会的にネットワークで結ぶことができる。さらに、様々な実施形態において、複数のテナントに亘るユーザ・アカウントのライフ・サイクルを効率的且つ効果的に管理することが可能である。
【００６５】
本明細書で説明するように、様々な実施形態において、組織の境界を越えて行うことができる当を得た招待案内モデル、および組織の境界を越えることができる当を得たシングル・サインオン認証／認可モデルが提供される。しかして、これらの実施形態の下では、エンドユーザは、シングル・サインオンを実施して、複数のテナントの各々に対する各コンピュータ・プレゼンス（これらに対し、エンドユーザは、サブスクリプションを介して既にアクセスを許可されている）にアクセスすることができる。
【００６６】
本明細書で説明するように、様々な例は、最初に認証（例えば、ログインに対する）を、次いで認可（例えば、サブスクリプション（群）に基づく）を用いて運用することが可能である。
【００６７】
本明細書で説明するように、様々な例はユーザの間に社会的な繋がりを提供することができる。一具体例において、（各ユーザが有効なサブスクリプションを有することを前提として）ユーザはアプリケーションもしくはファイルもしくはブログ、またはこれらの組み合わせを共有してもよい。
【００６８】
本明細書で説明するように、様々な実施形態は、参加するテナントの一部または全部に亘る協働を提供することが可能である。一具体例では、マルチテナントの提供において、テナント横断的な協働をシームレスに可能にすることができる。別の具体例では、ユーザが、組織（例えばテナント）の境界を越えて容易に作業することを可能にできる。さらに、かかるユーザが、組織（例えばテナント）のウェブ・プレゼンス中に他のユーザを招請すること（もしくは管理者による登録を介するか、またはその両方）を可能にできる。さらに、ユーザ・ポリシに関するメカニズムを提供することができる（例えば、ユーザの行動を統制するメカニズムを提供することが可能である）。
【００６９】
本明細書で説明するように、様々な例は、複数の組織に亘る全ての参加者が、シングル・サインオンで複数のテナントへのアクセスが可能になるように運用することができる（すなわち、所与のユーザが、再度の認証を促されることなく（例えば、サブスクリプションに基づいて）アクセスの許諾を受けることが可能である）。
【００７０】
本明細書で説明するように、様々な例は、（例えば、複数のテナントに亘って）アカウントのライフ・サイクルを管理するよう運用することができる。一具体例において、各参加者に対し、複数の組織のウェブ空間へのアクセスに関する該参加者のサブスクリプションの各々をアクティブ化、非アクティブ化、もしくは終了またはこれらの組み合わせを行うよう（例えば、管理者によって）管理をすることが可能である。
【００７１】
本明細書で説明するように、様々な例は、認証に基づく過度の負担を加えるよりも、むしろ認可プロセスにより多く頼るようにして運用すればよい。一具体例において、一つ以上のセキュリティ・クッキーもしくは認証書またはその両方を用いることが可能である。
【００７２】
本明細書で説明するように、様々な例はライトウェイトの運用モデルを用いることができる。
【００７３】
本明細書で説明するように、様々な例は、ウェブＵＲＬの名前空間に結合されたテナントのリソースを用いることが可能である。
【００７４】
本明細書で説明するように、所与のユーザは、複数の（例えば、複数のテナントの各々に一つの）サブスクリプションを有することができる。一具体例において、サブスクリプションには、「クラウド」中のどのアプリケーションが、当人に使用許可されているかを定義することができる。
【００７５】
本明細書で説明するように、一具体例において、ユーザ・アカウントは、関連付けられた、一意的で固定された（例えば、所与のマルチテナント環境に対し）決して再使用されることのない証印を有することができる。本開示の目的の上で、語句「決して再使用されることのない」とは、識別子のコンテキストにおいて用いられる概念語句である。一例において、全ての識別子は、固定され、一意的で、決して再使用されない、など３つの基準に該当すべきである。しかして、諸アプリケーションは、所与のＩＤを保持し、このＩＤに頼ってユーザ・データにリンクすることができる。一例において、ユーザ・アカウントがパージ可能である場合、それらより新しいアカウントは、以前のいかなるＩＤも使ってはならない。すなわち、この例では、所与のＩＤはリサイクルされるべきでなく、可能な限り「永久的」に保たれるべきである。
【００７６】
本明細書で説明するように、一具体例において、システム管理者は、（例えば、所与のマルチテナント環境に対し）テナントの追加もしくは削除またはその両方を行うことが可能である。
【００７７】
本明細書で説明するように、一具体例において、システム管理者は、（例えば、「クラウド」を介し）多くのユーザ・アカウント、多くのユーザ・サブスクリプション、および（例えば、所与のマルチテナント環境に対する）多くのアプリケーションを管理することができる。
【００７８】
一実施形態において、本明細書で説明する様々な機能は、図１および図２〜９のツリー構造およびオブジェクト属性を用いて実装することができる。一具体例において、必要な全てのデータは、サブスクリプション・オブジェクト（該オブジェクトは、例えば（この例では）ユーザ・アカウント、テナント識別子、ウェブ空間パターンを、ＬＤＡＰなどのディレクトリ・サービス中の単一の記録の中に保持するので、プレース・ホルダとして用いられる）の中に格納される。一例において、リファレンスＡＰＩを呼び出すアプリケーションは、各サブスクリプションに対する許可、制限、および限度を知ることができよう。
【００７９】
一実施形態において、少なくとも第一ユーザがマルチテナント・コンピューティング環境を用いることを可能にする方法が提供され、該マルチテナント・コンピューティング環境は、第一テナントに関連付けられた第一コンピューティング・リソース、および第二テナントに関連付けられた第二コンピューティング・リソースを少なくとも含み、本方法は、プロセッサによって、第一ユーザに第一ユーザ・アカウントを割り当てるステップであって、第一ユーザ・アカウントは、マルチテナント・コンピューティング環境に亘って一意的な少なくとも一つのユーザ・アカウント証印を含む関連付けられた第一ユーザ・アカウント情報を有する、該割り当てるステップと；プロセッサによって、第一ユーザ・アカウントに第一サブスクリプションをリンクするステップであって、第一サブスクリプションは関連付けられた第一サブスクリプション情報を有する、該リンクするステップと；プロセッサによって、第一ユーザ・アカウントに第二サブスクリプションをリンクするステップであって、第二サブスクリプションは関連付けられた第二サブスクリプション情報を有する、該リンクするステップと；プロセッサによって、第一ユーザから、第一ユーザによるマルチテナント・コンピューティング環境へのログインに関連するユーザ・アカウント証印を少なくとも受信するステップと；プロセッサによって、ユーザ・アカウント証印によるログイン、および第一ユーザ・アカウントにリンクされた第一サブスクリプションの第一サブスクリプション情報に基づいて、第一ユーザ・アカウントに対し、第一コンピューティング・リソースへのアクセスを許可するステップと；プロセッサによって、ユーザ・アカウント証印によるログイン、および第一ユーザ・アカウントにリンクされた第二サブスクリプションの第二サブスクリプション情報に基づいて、第一ユーザ・アカウントに対し、第二コンピューティング・リソースへのアクセスを許可するステップと；を含む。
【００８０】
一例において、第一サブスクリプションおよび第二サブスクリプションを第一ユーザ・アカウントにリンクするステップは、データベースにデータを格納するステップを含む。
【００８１】
別の例において、第一コンピューティング・リソースは第一ウェブ・プレゼンスを含み、第二コンピューティング・リソースは第二ウェブ・プレゼンスを含む。
【００８２】
別の例において、該第一ウェブ・プレゼンスは少なくとも一つのウェブ・ページを含み、該第二ウェブ・プレゼンスは少なくとも一つのウェブ・ページを含む。
【００８３】
別の例において、第一テナントは関連付けられた第一名前空間を有し、第二テナントは、第一名前空間とは別個の関連付けられた第二名前空間を有し、第一コンピューティング・リソースは第一名前空間中に在り、第二コンピューティング・リソースは第二名前空間中に在る。
【００８４】
別の例において、第一ユーザによるログインの後、プロセッサによって、第一ユーザは、第一コンピューティング・リソースおよび第二コンピューティング・リソースのうちの少なくとも一つへのアクセスに関連して、少なくとも第二ユーザと協働できるようにされる。
【００８５】
別の例において、第一ユーザおよび第二ユーザの各々による協働のアクセスは、（ａ）ファイル読み取りアクセス、（ｂ）ファイル書き込みアクセス、（ｃ）ファイル作成アクセス、または（ｄ）これらの任意の組み合わせを含む。
【００８６】
別の例において、マルチテナント・コンピューティング環境は、さらに、第三テナントに関連付けられた第三コンピューティング・リソースを少なくとも含み、プロセッサは、第一ユーザに対し第三コンピューティング・リソースへのアクセスを禁止する。
【００８７】
別の実施形態において、少なくとも第一ユーザがマルチテナント・コンピューティング環境を用いることを可能にするための、コンピュータによって実行が可能な命令のプログラムを実体的に具現化するコンピュータ可読ストレージ媒体が提供され、このマルチテナント・コンピューティング環境は、第一テナントに関連付けられた第一コンピューティング・リソース、および第二テナントに関連付けられた第二コンピューティング・リソースを少なくとも含み、該命令のプログラムは、実行されたとき、第一ユーザに第一ユーザ・アカウントを割り当てるステップであって、第一ユーザ・アカウントは、マルチテナント・コンピューティング環境に亘って一意的な少なくとも一つのユーザ・アカウント証印を含む関連付けられた第一ユーザ・アカウント情報を有する、該割り当てるステップと；第一ユーザ・アカウントに第一サブスクリプションをリンクするステップであって、第一サブスクリプションは関連付けられた第一サブスクリプション情報を有する、該リンクするステップと；第一ユーザ・アカウントに第二サブスクリプションをリンクするステップであって、第二サブスクリプションは関連付けられた第二サブスクリプション情報を有する、該リンクするステップと；第一ユーザから、第一ユーザによるマルチテナント・コンピューティング環境へのログインに関連するユーザ・アカウント証印を少なくとも受信するステップと；ユーザ・アカウント証印によるログイン、および第一ユーザ・アカウントにリンクされた第一サブスクリプションの第一サブスクリプション情報に基づいて、第一ユーザ・アカウントに対し、第一コンピューティング・リソースへのアクセスを許可するステップと；ユーザ・アカウント証印によるログイン、および第一ユーザ・アカウントにリンクされた第二サブスクリプションの第二サブスクリプション情報に基づいて、第一ユーザ・アカウントに対し、第二コンピューティング・リソースへのアクセスを許可するステップと；を実施する。
【００８８】
一例において、第一サブスクリプションおよび第二サブスクリプションを第一ユーザ・アカウントにリンクするステップは、データベースにデータを格納するステップを含む。
【００８９】
別の例において、第一コンピューティング・リソースは第一ウェブ・プレゼンスを含み、第二コンピューティング・リソースは第二ウェブ・プレゼンスを含む。
【００９０】
別の例において、該第一ウェブ・プレゼンスは少なくとも一つのウェブ・ページを含み、該第二ウェブ・プレゼンスは少なくとも一つのウェブ・ページを含む。
【００９１】
別の例において、第一テナントは関連付けられた第一名前空間を有し、第二テナントは、第一名前空間とは別個の関連付けられた第二名前空間を有し、第一コンピューティング・リソースは第一名前空間中に在り、第二コンピューティング・リソースは第二名前空間中に在る。
【００９２】
別の例において、第一ユーザによるログインの後、第一ユーザは、第一コンピューティング・リソースおよび第二コンピューティング・リソースのうちの少なくとも一つへのアクセスに関連して、少なくとも第二ユーザと協働できるようにされる。
【００９３】
別の例において、第一ユーザおよび第二ユーザの各々による協働のアクセスは、（ａ）ファイル読み取りアクセス、（ｂ）ファイル書き込みアクセス、（ｃ）ファイル作成アクセス、または（ｄ）これらの任意の組み合わせを含む。
【００９４】
別の例において、マルチテナント・コンピューティング環境は、さらに、第三テナントに関連付けられた第三コンピューティング・リソースを少なくとも含み、命令のプログラムは、実行されたとき、第一ユーザに対し第三コンピューティング・リソースへのアクセスを禁止する。
【００９５】
別の実施形態において、少なくとも第一ユーザがマルチテナント・コンピューティング環境を用いることを可能にするためのシステムが提供され、このマルチテナント・コンピューティング環境は、第一テナントに関連付けられた第一コンピューティング・リソース、および第二テナントに関連付けられた第二コンピューティング・リソースを少なくとも含み、本システムは、第一ユーザに第一ユーザ・アカウントを割り当てるよう構成された割り当てエレメントであって、第一ユーザ・アカウントは、マルチテナント・コンピューティング環境に亘って一意的な少なくとも一つのユーザ・アカウント証印を含む関連付けられた第一ユーザ・アカウント情報を有する、該割り当てエレメントと；第一ユーザ・アカウントに第一サブスクリプションをリンクするよう構成された第一リンク・エレメントであって、第一サブスクリプションは関連付けられた第一サブスクリプション情報を有する、該第一リンク・エレメントと；第一ユーザ・アカウントに第二サブスクリプションをリンクするよう構成された第二リンク・エレメントであって、第二サブスクリプションは関連付けられた第二サブスクリプション情報を有する、該第二リンク・エレメントと；第一ユーザから、第一ユーザによるマルチテナント・コンピューティング環境へのログインに関連するユーザ・アカウント証印を少なくとも受信するよう構成された受信エレメントと；ユーザ・アカウント証印によるログイン、および第一ユーザ・アカウントにリンクされた第一サブスクリプションの第一サブスクリプション情報に基づいて、第一ユーザ・アカウントに対し、第一コンピューティング・リソースへのアクセスを許可するよう構成された第一許可エレメントと；ユーザ・アカウント証印によるログイン、および第一ユーザ・アカウントにリンクされた第二サブスクリプションの第二サブスクリプション情報に基づいて、第一ユーザ・アカウントに対し、第二コンピューティング・リソースへのアクセスを許可するよう構成された第二許可エレメントと；を含む。
【００９６】
一例において、本システムは、第一サブスクリプションおよび第二サブスクリプションを第一ユーザ・アカウントにリンクするためのデータを格納するデータベースをさらに含む。
【００９７】
別の例において、第一コンピューティング・リソースは第一ウェブ・プレゼンスを含み、第二コンピューティング・リソースは第二ウェブ・プレゼンスを含む。
【００９８】
別の例において、第一ウェブ・プレゼンスは少なくとも一つのウェブ・ページを含み、第二ウェブ・プレゼンスは少なくとも一つのウェブ・ページを含む。
【００９９】
別の例において、第一テナントは関連付けられた第一名前空間を有し、第二テナントは、第一名前空間とは別個の関連付けられた第二名前空間を有し、第一コンピューティング・リソースは第一名前空間中に在り、第二コンピューティング・リソースは第二名前空間に在る。
【０１００】
別の例において、本システムは、第一ユーザによるログインの後、第一コンピューティング・リソースおよび第二コンピューティング・リソースのうちの少なくとも一つへのアクセスに関連して、第一ユーザによる少なくとも第二ユーザとの協働を可能にするよう構成された協働エレメントをさらに含む。
【０１０１】
別の例において、第一ユーザおよび第二ユーザの各々による協働のアクセスは、（ａ）ファイル読み取りアクセス、（ｂ）ファイル書き込みアクセス、（ｃ）ファイル作成アクセス、または（ｄ）これらの任意の組み合わせを含む。
【０１０２】
別の例において、マルチテナント・コンピューティング環境は、さらに、第三テナントに関連付けられた第三コンピューティング・リソースを少なくとも含み、本システムは、第一ユーザに対し、第三コンピューティング・リソースへのアクセスを禁止するよう構成された禁止エレメントをさらに含む。
【０１０３】
他の例において、本明細書に記載の任意のステップを、任意の適切な所望の順序で実行することができる。
【０１０４】
他の実施形態において、（ａ）第一テナントに関連付けられた第一ユーザが、（例えば、第一テナントのウェブ・プレゼンス中の）第一テナントの空間中のリソース（例えば、コンピューティング・リソース）上で協働するために、第二テナント（第二テナントは第一テナントとは異なる）に関連付けられた第二ユーザを招請することを可能にする機能性；（ｂ）当該テナント空間の中（例えば、該テナントのウェブ・プレゼンスの中）で作業する間の能力を制限する、ユーザのテナント・サブスクリプション上の役割情報を維持する機能性；（ｃ）ユーザの「プライマリ・サブスクリプション」が削除されるかまたは別途に無効にされている場合には、ユーザの「セカンダリ・サブスクリプション」の全てへのアクセスを制限する機能性；（ｄ）サブスクリプションのセットから、一つだけのサブスクリプションを無効化する機能性；もしくは（ｅ）組織のオーナー（例えば、テナント）が、ユーザの「プライマリ・サブスクリプション」空間中のルールに基づいて、ユーザがどの「セカンダリ・サブスクリプション」に加われるかを制限できるようにする機能性；またはこれらの組み合わせ；のうち一つ以上を設けることが可能である。
【０１０５】
本明細書で説明するように、招請されたユーザが、マルチテナント環境中の全ての組織（つまりテナント）に亘ってただ一つのアイデンティティを保有することを可能にするメカニズムが提供される。すなわち、所与のユーザの組織アイデンティティを、マルチテナント環境にそのまま使うことができる（かかる組織アイデンティティは、組織のマネジメント範囲の下で管理することができる）。
【０１０６】
本明細書で説明するように、複数の組織の境界を越えて協働する際に、ただ一つのアイデンティティを維持するためのメカニズムが提供される。一例において、ＳＳＯを利用してこれを達成することができる。
【０１０７】
当業者には当然のことながら、本発明の態様は、システム、方法、またはコンピュータ・プログラム製品として具現化することができる。したがって、本発明の態様は、全体がハードウェアの実施形態、全体がソフトウェアの実施形態（ファームウェア、常駐ソフトウェア、マイクロコードなどを含む）、あるいは、ソフトウェア態様およびハードウェア態様を組み合わせた実施形態の形を取ることができ、これらは一般に本明細書では全て「回路」、「モジュール」、または「システム」と称することがある。さらに、本発明の態様は、コンピュータ可読プログラム・コードが具現化されている一つ以上のコンピュータ可読媒体（群）中に具現化されたコンピュータ・プログラム製品の形を取ることも可能である。
【０１０８】
一つ以上のコンピュータ可読媒体（群）の任意の組み合わせを用いることが可能である。コンピュータ可読媒体は、コンピュータ可読信号媒体であっても、コンピュータ可読ストレージ媒体であってもよい。コンピュータ可読ストレージ媒体は、例えば、以下に限らないが、電子的、磁気的、光学的、電磁気的、赤外的、または半導体の、システム、装置、またはデバイス、あるいは前述の任意の適切な組み合わせであってよい。コンピュータ可読ストレージ媒体のさらに具体的な例（非包括的リスト）には、携帯型コンピュータ・ディスケット、ハード・ディスク、ランダム・アクセス・メモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、消去およびプログラム可能読み取り専用メモリ（ＥＰＲＯＭ（ｅｒａｓａｂｌｅ  ｐｒｏｇｒａｍｍａｂｌｅ  ｒｅａｄ−ｏｎｌｙ  ｍｅｍｏｒｙ）またはフラッシュ・メモリ）、携帯型コンパクト・ディスク読み取り専用メモリ（ＣＤ−ＲＯＭ：ｃｏｍｐａｃｔ  ｄｉｓｃ  ｒｅａｄ−ｏｎｌｙ  ｍｅｍｏｒｙ）、光ストレージ・デバイス、磁気ストレージ・デバイス、または前述の任意の適切な組み合わせが含まれよう。本明細書の文脈において、コンピュータ可読ストレージ媒体は、命令実行システム、装置、もしくはデバイスによって、またはこれらに関連させて使用するためのプログラムを、包含または格納できる任意の有形媒体であってよい。
【０１０９】
コンピュータ可読信号媒体には、例えばベースバンド中にまたは搬送波の一部として具現化されたコンピュータ可読プログラム・コードを有する、伝播データ信号を含めることができる。かかる伝播信号は、以下に限らないが、電磁気的、光学的、またはこれらの任意の適切な組み合わせを含め、さまざまな形態の任意の形を取ることが可能である。コンピュータ可読信号媒体は、コンピュータ可読ストレージ媒体ではないが、命令実行システム、装置、もしくはデバイスによって、またはこれらに関連させて使用するためのプログラムの通信、伝播、または伝送が可能な任意のコンピュータ可読媒体であってよい。
【０１１０】
コンピュータ可読媒体上に具現化されたプログラム・コードは、以下に限らないが、無線、有線、光ファイバ・ケーブル、ＲＦなど、または前述の任意の適した組み合わせを含め、任意の適切な媒体を用いて送信することができる。
【０１１１】
本発明の態様のオペレーションを実行するためのコンピュータ・プログラム・コードは、Ｊａｖａ（Ｒ）、Ｓｍａｌｌｔａｌｋ（Ｒ）、Ｃ＋＋などのオブジェクト指向プログラミング言語、または、“Ｃ”プログラミング言語もしくは類似のプログラミング言語などの手続き型プログラミング言語を含め、任意のプログラミング言語または一つ以上のプログラミング言語の任意の組み合わせで記述することができる。このプログラム・コードは、スタンドアロン・ソフトウェア・パッケージとしてユーザのコンピュータで専ら実行することも、ユーザのコンピュータで部分的に実行することもでき、一部をユーザのコンピュータで一部を遠隔コンピュータで実行することもでき、あるいは遠隔のコンピュータまたはサーバで専ら実行することもできる。後者の場合は、ローカル・エリア・ネットワーク（ＬＡＮ）または広域ネットワーク（ＷＡＮ：ｗｉｄｅａｒｅａ ｎｅｔｗｏｒｋ）を含む任意の種類のネットワークを介して、遠隔コンピュータをユーザのコンピュータに接続することもでき、あるいは（例えばインターネット・サービス・プロバイダを使いインターネットを介し）外部のコンピュータへの接続を行うことも可能である。
【０１１２】
本明細書では、本発明の実施形態による方法、システムもしくはコンピュータ・プログラム製品またはこれらの組み合わせのフローチャート図もしくはブロック図またはその両方を参照しながら、本発明の態様を説明することもある。当然のことながら、フローチャート図もしくはブロック図またはその両方の各ブロック、および、フローチャート図もしくはブロック図またはその両方中のブロックの組み合わせは、コンピュータ・プログラム命令によって実装することが可能である。これらのコンピュータ・プログラム命令を、汎用コンピュータ、特殊用途コンピュータ、またはマシンを形成する他のプログラム可能データ処理装置のプロセッサに提供し、そのコンピュータまたは他のプログラム可能データ処理装置のプロセッサを介して実行されるこれらの命令が、フローチャートもしくはブロック図またはその両方のブロックもしくはブロック群中に特定されている機能群／動作群を実装するための手段を生成するようにすることができる。
【０１１３】
また、これらのコンピュータ・プログラム命令を、コンピュータ、他のプログラム可能データ処理装置、または他のデバイスに対し特定の仕方で機能するよう命令することができるコンピュータ可読媒体に格納し、そのコンピュータ可読媒体に格納された命令が、フローチャートもしくはブロック図またはその両方のブロックまたはブロック群中に特定されている機能／動作を実装する命令群を包含する製造品を作り出せるようにすることができる。
【０１１４】
さらに、コンピュータ・プログラム命令を、コンピュータ、他のプログラム可能データ処理装置、または他のデバイスにロードし、そのコンピュータ上、他のプログラム可能装置上、または他のデバイス上で一連のオペレーション・ステップを実施させて、コンピュータ実装のプロセスを作り出し、当該コンピュータ上もしくは他のプログラム可能装置または他のデバイス上で実行される命令が、フローチャートもしくはブロック図またはその両方のブロックもしくはブロック群中に特定されている機能群／動作群を実装するためのプロセスを提供するようにすることも可能である。
【０１１５】
図面のフローチャートおよびブロック図は、本発明のさまざまな実施形態による、システム、方法、およびコンピュータ・プログラム製品から可能となる実装のアーキテクチャ、機能性、およびオペレーションを示している。この点に関し、フローチャートまたはブロック図中の各ブロックは、特定の論理機能（群）を実装するための一つ以上の実行可能命令を含む、モジュール、セグメント、またはコードの部分を表し得る。また、一部の実装においては、ブロック中に記載された機能が、図面に記載された順序から外れて行われ得ることに留意すべきである。例えば、連続して示された２つのブロックが、関与する機能性に応じ、実際にはほぼ同時に実行されることがあり、時にはこれらのブロックが逆の順序で実行されることもあり得る。さらに、ブロック図もしくはフローチャート図またはその両方の各ブロック、およびブロック図もしくはフローチャート図またはその両方中のブロック群の組み合わせは、特定の機能または動作を実施する特殊用途ハードウェア・ベースのシステム、または特殊用途ハードウェアとコンピュータ命令との組み合わせによって実装可能なことにも留意すべきである。
【０１１６】
なお、前述は、本発明の目的および実施形態の一部を概述したものである。本発明は、多くの応用に用いることが可能である。しかして、本説明は、特定のアレンジメントおよび方法を対象としているが、本発明の意図および概念は、他のアレンジメントおよび用途に対しても適しており適用可能である。当業者には、本発明の範囲から逸脱することなく、開示された実施形態に変更を加えることが可能なのは明らかであろう。記載された実施形態は、単に、本発明の特徴および応用の一部の例示であると理解すべきである。本開示の発明を異なった仕方で応用することによって、または当業者が知悉するやり方で本発明を修改することによって、他の有益な結果を実現することが可能である。さらに、本明細書に開示した全ての例は、例示を意図したものであり限定のためのものではない。
【図１】
0006355656.tif 000002
【図２】
0006355656.tif 000003
【図３】
0006355656.tif 000004
【図４】
0006355656.tif 000005
【図５】
0006355656.tif 000006
【図６】
0006355656.tif 000007
【図７】
0006355656.tif 000008
【図８】
0006355656.tif 000009
【図９】
0006355656.tif 000010
【図１０】
0006355656.tif 000011
【図１１】
0006355656.tif 000012
【図１２】
0006355656.tif 000013