(57)【要約】  パブリッククラウドアカウントとパーソナルクラウドアカウントとのバインドが記載される。事前承認リストが、ユーザのパブリッククラウドアカウントとパーソナルクラウドアカウントのバインドが承認されていることを示す。事前承認リストは、パーソナルクラウドデバイス（１１０）およびパブリッククラウドサービス（１０２）に記憶されている。ユーザは、クライアントデバイス（１０８）を使用してパブリッククラウドアカウントにログインする。クライアントデバイスは、パブリッククラウドサービスに記憶されている事前承認リストに基づいて、ユーザのパーソナルクラウドアカウントを識別する情報を取得する。パーソナルクラウドデバイスは、パーソナルクラウドデバイスに記憶されている事前承認リストに基づいて、バインドの事前承認を検証する。パブリッククラウドサービスおよびパーソナルクラウドデバイスの各々が、バインドを示す情報を記憶する。バインド後、データをパーソナルクラウドデバイスからパブリッククラウドサービスにエクスポートして、他のユーザと共有することができる。【選択図】図１Ａ
2021536620.tif 000002
【特許請求の範囲】
【請求項１】
命令を記憶する１つまたは複数の非一時的機械可読媒体であって、前記命令は１つまたは複数のプロセッサによって実行されると、
パブリッククラウドサービスを使用するためのユーザのパブリッククラウドユーザアカウントを識別することと、
パブリッククラウドサービスからのアプリケーションによって、パーソナルクラウドデバイスを使用するために前記ユーザの（ａ）前記パブリッククラウドユーザアカウントと（ｂ）パーソナルクラウドユーザアカウントとをバインドするための事前承認を示す情報を取得することと、
前記アプリケーションによって、前記パーソナルクラウドデバイスに、前記パブリッククラウドユーザアカウントと前記パーソナルクラウドユーザアカウントとをバインドする要求を送信することとを行わせる命令を有し、前記バインドの要求は、前記パブリッククラウドユーザアカウントと関連付けられる識別子を含み、前記命令はさらに、
前記アプリケーションによって、前記バインドの要求に応答して、前記パブリッククラウドユーザアカウントと前記パーソナルクラウドユーザアカウントの間のバインドが生成されたことを示す確認を取得することとを行わせる命令を有し、
前記バインドは、前記パブリッククラウドサービスを使用するために、前記パブリッククラウドユーザアカウントから第２のユーザの第２のパブリッククラウドユーザアカウントに、（ａ）前記パーソナルクラウドデバイスに記憶され、（ｂ）前記パーソナルクラウドユーザアカウントと関連付けられる、データを共有するための基準である、１つまたは複数の非一時的機械可読媒体。
【請求項２】
前記１つまたは複数のプロセッサによって実行されると、
前記パブリッククラウドユーザアカウントと前記パーソナルクラウドユーザアカウントとをバインドするための前記事前承認を示す前記情報の取得に応答して、前記アプリケーションによって、前記パーソナルクラウドユーザアカウントと関連付けられるユーザ名を提示することを行わせる命令をさらに記憶する、請求項１に記載の１つまたは複数の媒体。
【請求項３】
前記パブリッククラウドサービスが、前記アプリケーションを実行するクライアントデバイスと、前記パーソナルクラウドデバイスとの間の接続の確立を容易にし、前記バインドの要求が、前記接続を使用して前記アプリケーションによって前記パーソナルクラウドデバイスに送信される、請求項１に記載の１つまたは複数の媒体。
【請求項４】
前記１つまたは複数のプロセッサによって実行されると、
前記パーソナルクラウドデバイスによって、前記パブリッククラウドアカウントと前記パーソナルクラウドアカウントとをバインドする前記要求を受信することと、
前記パーソナルクラウドデバイスによって、前記パーソナルクラウドデバイスと関連付けられるデータリポジトリに記憶されている事前承認リストに基づいて、前記パブリッククラウドユーザアカウントが前記パーソナルクラウドユーザアカウントとバインドすることを承認されるか否かを判定することとを行わせる命令をさらに記憶する、請求項１に記載の１つまたは複数の媒体。
【請求項５】
前記パブリッククラウドサービスから前記アプリケーションによって取得され、前記パブリッククラウドユーザアカウントと前記パーソナルクラウドユーザアカウントとをバインドするための前記事前承認を示す前記情報が、前記パブリッククラウドサービスと関連付けられるデータリポジトリに記憶される事前承認リストに基づいて決定される、請求項１に記載の１つまたは複数の媒体。
【請求項６】
（ａ）前記パブリッククラウドユーザアカウントおよび前記パーソナルクラウドユーザアカウントが、前記パブリッククラウドサービスに記憶されている第１の事前承認リストに基づいてバインドされることを承認されていることを、前記パブリッククラウドサービスが判定すること、および（ｂ）前記パブリッククラウドユーザアカウントおよび前記パーソナルクラウドユーザアカウントが、前記パーソナルクラウドデバイスに記憶されている第２の事前承認リストに基づいてバインドされることを承認されていることを、前記パーソナルクラウドデバイスが判定することが、前記パブリッククラウドユーザアカウントと前記パーソナルクラウドユーザアカウントとの間の前記バインドを生成するための基準である、請求項１に記載の１つまたは複数の媒体。
【請求項７】
前記パブリッククラウドユーザアカウントと前記パーソナルクラウドユーザアカウントとの間の前記バインドの生成は、
前記パブリッククラウドサービスと関連付けられる第１のデータリポジトリ上に、前記パブリッククラウドユーザアカウントと前記パーソナルクラウドユーザアカウントとの間の前記バインドを示す第１の情報セットを記憶することと、
前記パーソナルクラウドデバイスと関連付けられる第２のデータリポジトリ上に、前記パブリッククラウドユーザアカウントと前記パーソナルクラウドユーザアカウントとの間の前記バインドを示す第２の情報セットを記憶することとを含む、請求項１に記載の１つまたは複数の媒体。
【請求項８】
前記バインドの要求は、前記パブリッククラウドサービスによって生成される認証情報をさらに含み、前記認証情報は、前記認証情報の保有者が前記パブリッククラウドユーザアカウントのアイデンティティを有することを検証するために前記パブリッククラウドサービスによって使用される、請求項１に記載の１つまたは複数の媒体。
【請求項９】
前記１つまたは複数のプロセッサによって実行されると、
前記アプリケーションによって、前記パーソナルクラウドユーザアカウントに対応する新しい鍵の要求を提示することと、
前記アプリケーションによって、前記パーソナルクラウドユーザアカウントに対応する前記新しい鍵を受信することと、
前記アプリケーションによって前記パーソナルクラウドデバイスに、前記新しい鍵を送信することとを行わせる命令をさらに記憶し、
前記パーソナルクラウドデバイスは、前記パーソナルクラウドユーザアカウントにログインするための検証情報として前記新しい鍵を記憶する、請求項１に記載の１つまたは複数の媒体。
【請求項１０】
前記バインドは、（ａ）前記パーソナルクラウドユーザアカウントと関連付けて記憶され、（ｂ）前記パーソナルクラウドデバイスに記憶される、前記パブリッククラウドユーザアカウントにデータをエクスポートするためのさらなる基準である、請求項１に記載の１つまたは複数の媒体。
【請求項１１】
命令を記憶する１つまたは複数の非一時的機械可読媒体であって、前記命令は１つまたは複数のプロセッサによって実行されると、
パブリッククラウドサービスを使用するためのユーザのパブリッククラウドユーザアカウントを識別することと、
前記パブリッククラウドユーザアカウントが、パーソナルクラウドデバイスを使用するための前記ユーザのパーソナルクラウドユーザアカウントとバインドすることを事前承認されていることを判定することと、
第１の認証情報を生成することと、
（ａ）前記パブリッククラウドユーザアカウントが、前記パーソナルクラウドユーザアカウントとバインドすることを事前承認されていることを示す情報、および（ｂ）前記第１の認証情報を、クライアントデバイスに送信することと、
（ａ）前記パブリッククラウドユーザアカウントが、前記パーソナルクラウドユーザアカウントとバインドすることを事前承認されていることの検証、および（ｂ）第２の認証情報を、前記パーソナルクラウドデバイスから受信することと、
前記第１の認証情報と前記第２の認証情報との間に一致があるか否かを判定することと、
前記第１の認証情報と前記第２の認証情報との間に前記一致があるという判定に応答して、前記パブリッククラウドユーザアカウントと前記パーソナルクラウドユーザアカウントの間のバインドを示す情報を記憶することとを行わせる命令を有し、
前記バインドは、前記パブリッククラウドサービスを使用するために、前記パブリッククラウドユーザアカウントから第２のユーザの第２のパブリッククラウドユーザアカウントに、（ａ）前記パーソナルクラウドデバイスに記憶され、（ｂ）前記パーソナルクラウドユーザアカウントと関連付けられる、データを共有するための基準である、１つまたは複数の非一時的機械可読媒体。
【請求項１２】
前記パブリッククラウドユーザアカウントが前記パーソナルクラウドユーザアカウントとバインドすることを事前承認されていることを判定することは、前記パブリッククラウドサービスに記憶された事前承認リストに基づく、請求項１１に記載の１つまたは複数の媒体。
【請求項１３】
前記パーソナルクラウドデバイスから受信される、前記パブリッククラウドユーザアカウントが前記パーソナルクラウドユーザアカウントとバインドすることを事前承認されていることの前記検証は、前記パーソナルクラウドデバイスに記憶された事前承認リストに基づく、請求項１１に記載の１つまたは複数の媒体。
【請求項１４】
前記１つまたは複数のプロセッサによって実行されると、
前記パブリッククラウドユーザアカウントと前記パーソナルクラウドユーザアカウントとの間の前記バインドを示す別の情報セットを、前記パーソナルクラウドデバイスによって、前記パーソナルクラウドデバイスと関連付けられるデータリポジトリ上に記憶することを行わせる命令をさらに記憶する、請求項１１に記載の１つまたは複数の媒体。
【請求項１５】
命令を記憶する１つまたは複数の非一時的機械可読媒体であって、前記命令は１つまたは複数のプロセッサによって実行されると、
パブリッククラウドサービスを使用するためのパブリッククラウドユーザアカウントと、パーソナルクラウドデバイスを使用するためのパーソナルクラウドユーザアカウントとをバインドする第１の要求を受信することと、
前記パブリッククラウドユーザアカウントが前記パーソナルクラウドユーザアカウントとバインドすることを承認されていることの判定に応答して、前記パブリッククラウドサービスに、前記パブリッククラウドユーザアカウントおよび前記パーソナルクラウドユーザアカウントがバインドすることを承認されていることを示す検証を送信することと、
前記パブリッククラウドサービスが前記パブリッククラウドユーザアカウントと前記パーソナルクラウドユーザアカウントとの間のバインドを示す第１の情報セットを記憶していることを示す確認を、前記パブリッククラウドサービスから取得することに応答して、前記パブリッククラウドユーザアカウントと前記パーソナルクラウドユーザアカウントとの間の前記バインドを示す第２の情報セットを、前記パーソナルクラウドデバイスと関連付けられるデータリポジトリ上に記憶することとを行わせる命令を有し、
前記バインドは、前記パブリッククラウドサービスを使用するために、前記パブリッククラウドユーザアカウントから第２のユーザの第２のパブリッククラウドユーザアカウントに、（ａ）前記パーソナルクラウドデバイスに記憶され、（ｂ）前記パーソナルクラウドユーザアカウントと関連付けられる、データを共有するための基準である、１つまたは複数の非一時的機械可読媒体。
【請求項１６】
前記パブリッククラウドユーザアカウントが前記パーソナルクラウドユーザアカウントとバインドすることを承認されていることを判定することは、前記パーソナルクラウドデバイスと関連付けられる前記データリポジトリに記憶された事前承認リストに基づく、請求項１５に記載の１つまたは複数の媒体。
【請求項１７】
前記１つまたは複数のプロセッサによって実行されると、
前記パブリッククラウドサービスによって、前記パブリッククラウドサービスと関連付けられる第２のデータリポジトリに記憶されている第２の事前承認リストに基づいて、前記パブリッククラウドユーザアカウントが前記パーソナルクラウドユーザアカウントとバインドすることを承認されていることを決定することを行わせる命令をさらに記憶する、請求項１６に記載の１つまたは複数の媒体。
【請求項１８】
１つまたは複数のプロセッサによって実行されると、
パーソナルクラウドデバイスを使用するためのユーザのパーソナルクラウドユーザアカウントを識別することと、
前記パーソナルクラウドデバイスに記憶され、前記パーソナルクラウドユーザアカウントと関連付けられるデータを、パブリッククラウドサービスを使用するための前記ユーザのパブリッククラウドユーザアカウントにエクスポートする要求を受信することと、
前記パーソナルクラウドユーザアカウントと前記パブリッククラウドユーザアカウントとの間にバインドがあるか否かを判定することと、
前記パーソナルクラウドユーザアカウントと前記パブリッククラウドユーザアカウントとの間にバインドがあることの判定に応答して、前記パーソナルクラウドデバイスに記憶されている前記データが前記パブリッククラウドユーザアカウントにエクスポートされることを承認されていることを示す情報を送信することとを行わせる命令を記憶している、１つまたは複数の非一時的機械可読媒体。
【請求項１９】
前記パーソナルクラウドユーザアカウントと前記パブリッククラウドユーザアカウントとの間に前記バインドがあるか否かを判定することは、前記パーソナルクラウドデバイスと関連付けられるデータリポジトリに記憶されたバインドリストに基づく、請求項１８に記載の１つまたは複数の媒体。
【請求項２０】
前記１つまたは複数のプロセッサによって実行されると、
前記パブリッククラウドサービスによって、前記パブリッククラウドサービスと関連付けられる第２のデータリポジトリに記憶されている第２のバインドリストに基づいて、前記パーソナルクラウドユーザアカウントと前記パブリッククラウドユーザアカウントとの間に前記バインドがあるか否かを決定することを行わせる命令をさらに記憶する、請求項１９に記載の１つまたは複数の媒体。
【請求項２１】
前記１つまたは複数のプロセッサによって実行されると、
前記パーソナルクラウドデバイスに記憶されている前記データを前記パブリッククラウドユーザアカウントにとってアクセス可能にすることを行わせる命令をさらに記憶する、請求項１８に記載の１つまたは複数の媒体。
【請求項２２】
前記１つまたは複数のプロセッサによって実行されると、
前記パブリッククラウドユーザアカウントを使用して前記パーソナルクラウドデバイスに記憶されている前記データにアクセスすることを行わせる命令をさらに記憶する、請求項１８に記載の１つまたは複数の媒体。
【請求項２３】
１つまたは複数のプロセッサによって実行されると、
パーソナルクラウドデバイスを使用するための第１のユーザのパーソナルクラウドユーザアカウントを識別することと、
前記パーソナルユーザデバイスに記憶され、前記パーソナルクラウドユーザアカウントと関連付けられるデータを、パブリッククラウドサービスを使用するための第２のユーザの第１のパブリッククラウドユーザアカウントに共有する要求を受信することとであって、前記第１のユーザと前記第２のユーザとは異なる、受信することと、
前記パーソナルクラウドユーザアカウントが第２のパブリッククラウドユーザアカウントにバインドされることの判定に応答して、前記パーソナルユーザデバイスに記憶されている前記データを前記第１のパブリッククラウドユーザアカウントに共有するために前記第２のパブリッククラウドユーザアカウントを使用する要求を、前記クラウドサービスに送信することとを行わせる命令を記憶している、１つまたは複数の非一時的機械可読媒体。
【請求項２４】
前記１つまたは複数のプロセッサによって実行されると、
前記パブリッククラウドサービスによって、前記パーソナルユーザデバイス上に記憶されており、かつ前記パーソナルクラウドユーザアカウントと関連付けられる前記データが前記第２のパブリッククラウドユーザアカウントにエクスポートされていることを判定することを行わせる命令をさらに記憶する、請求項２３に記載の１つまたは複数の媒体。
【請求項２５】
前記１つまたは複数のプロセッサによって実行されると、
前記パーソナルユーザデバイス上に記憶されている前記データが前記第２のパブリッククラウドユーザアカウントから前記第１のパブリッククラウドユーザアカウントに共有されていることを示す情報を、クライアントデバイスに送信することを行わせる命令をさらに記憶する、請求項２３に記載の１つまたは複数の媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
参照による援用
以下の各出願が、参照により本明細書に援用される。２０１８年８月３１日に出願された米国仮特許出願第６２／７２５，９５５号、２０１９年２月１１日に出願された米国非仮特許出願第１６／２７２，３８８号。
【０００２】
出願人は、本明細書により、親出願（複数可）の特許請求項の範囲またはその審査履歴の一切の免責事項を取り消し、本出願の特許請求項が親出願（複数可）の任意の特許請求項よりも広い可能性があることを米国特許商標庁に通知する。
【０００３】
技術分野
本開示は、ハイブリッドクラウド環境に関する。特に、本開示は、ハイブリッドクラウド環境のためのパブリッククラウドユーザアカウントおよびパーソナルクラウドユーザアカウントのバインド(紐付け）に関する。
【背景技術】
【０００４】
背景
コンピュータネットワークは、ノードのセット間の接続を提供する。ノードは、クライアントプロセスおよび／またはサーバプロセスを実行し得る。クライアントプロセスは、コンピュータネットワークを介してコンピューティングサービス（特定のアプリケーションの実行、および／または特定の量のデータの記憶など）を要求する。サーバプロセスは、要求されたサービスを実行すること、および／または、コンピュータネットワークを介して対応するデータを返すことによって応答する。
【０００５】
クラウド環境では、サーバプロセスを実行するネットワークリソースが複数のクライアント間で共有される。クライアントは、互いに独立してコンピュータネットワークにコンピューティングサービスを要求することができる。ネットワークリソースは、オンデマンドで要求および／またはクライアントに動的に割り当てることができる。
【０００６】
パーソナルクラウドにおいては、１つまたは複数のパーソナルクラウドデバイスが使用されて、サーバプロセスが実行される。パーソナルクラウドデバイスは、１つまたは複数のエンティティ（企業、組織、個人など）の特定のグループによる排他的使用のために提供される。一般に、パーソナルクラウドを使用しているエンティティは、ネットワーク接続の維持、ユーザアカウントの維持、セキュリティの維持を含む、パーソナルクラウドの管理を担当する。パーソナルクラウドデバイスは、パーソナルクラウドを使用するエンティティによって維持されるファイアウォールによって保護することができる。パーソナルクラウドデバイスは、パーソナルクラウドを使用するエンティティの施設内に配置することができる。
【０００７】
パブリッククラウドにおいては、パブリッククラウドデバイスのセットが、互いに独立している複数のエンティティ（クラウドサービスの「テナント」または「顧客」とも呼ばれる）向けにクラウドサービスを実装する。異なるテナントのクライアントが、同じネットワークリソースにアクセスして、クラウドサービスを要求する場合がある。通常、クラウドサービスプロバイダがパブリッククラウドを管理する。テナントは、パブリッククラウドの管理を担当する必要はない。テナントは、クラウドサービスプロバイダが提供するアプリケーションプログラミングインターフェース（ＡＰＩ）を使用して、クラウドサービスを要求する。ＡＰＩを介して、テナントはパブリッククラウド上で特定のアプリケーションの実行を要求することができる。付加的または代替的に、テナントは、パブリッククラウド上の特定のデータセットの記憶および／または取り出しを要求する場合がある。テナント分離技法を使用して、同じパブリッククラウドデバイスによって処理されるテナントデータのセキュリティを確保することができる。
【０００８】
ハイブリッドクラウドは、パーソナルクラウドとパブリッククラウドの両方を含む。パーソナルクラウドとパブリッククラウドとの間のインターフェースにより、データおよびアプリケーションの移植性が可能になる。プライベートクラウドに記憶されているデータとパブリッククラウドに記憶されているデータとは、インターフェースを介して交換することができる。プライベートクラウドにおいて実装されているアプリケーションとパブリッククラウドにおいて実装されているアプリケーションは、相互に依存し得る。プライベートクラウドのアプリケーションからパブリッククラウドのアプリケーションへの呼び出し（およびその逆）は、インターフェースを介して実行することができる。
【発明の概要】
【発明が解決しようとする課題】
【０００９】
ハイブリッドクラウドの使用を所望するユーザは、パーソナルクラウドとパブリッククラウドの両方に対して認証される必要がある。このような認証プロセスは、ユーザにとって非常に面倒な場合がある。さらに、ユーザは通常、インターネットを介してパブリッククラウドサービスに接続することができるが、パーソナルクラウドデバイスとの接続を確立するには、ユーザは複雑なプロセスを実行する必要がある場合がある。例として、ユーザは、パーソナルクラウドデバイスと関連付けられるファイアウォール設定が、ユーザがパーソナルクラウドデバイスと通信することを可能にすることを保証する必要があり得る。
【課題を解決するための手段】
【００１０】
このセクションで説明されているアプローチは、達成することができるアプローチであるが、必ずしも以前に考案または達成されたアプローチであるとは限らない。したがって、特に明記しない限り、このセクションにおいて説明されているアプローチのいずれかが、単にこのセクションに含まれているという理由だけで従来技術として適格であると想定されるべきではない。
【００１１】
図面の簡単な説明
実施形態は、添付の図面の図における限定としてではなく、例として示されている。本開示における「一（ａｎ）」実施形態または「１つの（ｏｎｅ）」実施形態への言及は、必ずしも同じ実施形態への言及ではなく、それらは少なくとも１つを意味することに留意されたい。
【図面の簡単な説明】
【００１２】
【図１Ａ】１つまたは複数の実施形態による、例示的なハイブリッドクラウドシステムを示す図である。
【図１Ｂ】１つまたは複数の実施形態による、例示的なハイブリッドクラウドシステムを示す図である。
【図１Ｃ】１つまたは複数の実施形態による、例示的なハイブリッドクラウドシステムを示す図である。
【図２】１つまたは複数の実施形態による、パブリッククラウドユーザアカウントおよびパーソナルクラウドユーザアカウントを手動でバインドするための工程の例示的なセットを示す図である。
【図３】１つまたは複数の実施形態による、事前承認に基づいてパブリッククラウドユーザアカウントおよびパーソナルクラウドユーザアカウントをバインドするための工程の例示的なセットを示す図である。
【図４】１つまたは複数の実施形態による、２つのアカウント間のバインドに基づいて、パーソナルクラウドユーザアカウントと関連付けられるコンテンツアイテムをパブリッククラウドユーザアカウントにエクスポートするための工程の例示的なセットを示す図である。
【図５】１つまたは複数の実施形態による、２つのアカウント間のバインドに基づいて、パーソナルクラウドユーザアカウントと関連付けられるコンテンツアイテムを、パブリッククラウドユーザアカウントを使用して共有するための工程の例示的なセットを示す図である。
【図６Ａ】１つまたは複数の実施形態による、クライアントデバイスと関連付けられる例示的なユーザインターフェースを示す図である。
【図６Ｂ】１つまたは複数の実施形態による、クライアントデバイスと関連付けられる例示的なユーザインターフェースを示す図である。
【図６Ｃ】１つまたは複数の実施形態による、クライアントデバイスと関連付けられる例示的なユーザインターフェースを示す図である。
【図７】１つまたは複数の実施形態によるコンピュータシステムを示すブロック図である。
【発明を実施するための形態】
【００１３】
詳細な説明
以下の説明では、説明の目的で、完全な理解を提供するために多くの具体的な詳細が記載されている。これらの特定の詳細なしで、１つまたは複数の実施形態を実施することができる。１つの実施形態において説明されている機能は、別の実施形態で説明されている機能と組み合わせることができる。いくつかの例では、本発明を不必要に曖昧にすることを回避するために、ブロック図の形式を参照して、周知の構造およびデバイスが説明されている。
【００１４】
１．一般的な概説
２．ハイブリッドクラウドシステムアーキテクチャ
３．パブリッククラウドユーザアカウントとパーソナルクラウドユーザアカウントとの手動バインド
４．事前承認に基づくパブリッククラウドユーザアカウントとパーソナルクラウドユーザアカウントとのバインド
５．パブリッククラウドユーザアカウントとパーソナルクラウドユーザアカウントとの間のバインドに基づくコンテンツアイテムのエクスポート
６．パブリッククラウドユーザアカウントとパーソナルクラウドユーザアカウントとの間のバインドに基づくコンテンツアイテムの共有
７．例示的な実施形態
８．コンピュータネットワークおよびクラウドネットワーク
９．ハードウェアの概説
１０．その他、拡張機能
１．一般的な概説
１つまたは複数の実施形態は、ハイブリッドクラウド環境を含む。ハイブリッドクラウド環境は、パブリッククラウドサービス、パーソナルクラウドデバイス、および、パブリッククラウドサービスとパーソナルクラウドデバイスの両方にアクセスするクライアントデバイスを含む。パーソナルクラウドデバイスを使用するためのパーソナルクラウドアカウントと、パブリッククラウドサービスを使用するためのパブリッククラウドアカウントとをバインドして、パーソナルクラウドデバイスとパブリッククラウドサービスの両方による通信を容易にし、それによってより統合されたハイブリッドクラウド環境を作成することができる。
【００１５】
１つまたは複数の実施形態は、ハイブリッドクラウド環境のためにパブリッククラウドユーザアカウントとパーソナルクラウドユーザアカウントとをバインドすることを含む。パーソナルクラウドデバイスの管理者は、事前承認リストを作成する。これは、いずれのパブリッククラウドユーザアカウントがいずれのパーソナルクラウドユーザアカウントとバインドされることを事前承認されているかを示す。事前承認リストのコピーがパーソナルクラウドデバイスに記憶され、事前承認リストのもう１つのコピーがパブリッククラウドサービスに記憶される。
【００１６】
ユーザは、クライアントデバイスを介してユーザのパブリッククラウドアカウントにログインする。パブリッククラウドサービスは、パブリッククラウドサービスと関連付けられるデータリポジトリに記憶されている事前承認リストにアクセスする。事前承認リストに基づいて、パブリッククラウドサービスは、ユーザのパブリッククラウドユーザアカウントが、特定のパーソナルユーザデバイス上の特定のパーソナルクラウドユーザアカウントとバインドされることを事前承認されていることを判定する。特定のパーソナルクラウドユーザアカウントは、同じユーザに関連付けられる。パブリッククラウドサービスが認証情報を生成する。パブリッククラウドサービスは、（ａ）ユーザのパブリッククラウドユーザアカウントがユーザのパーソナルクラウドユーザアカウントとバインドされることを事前承認されていることを示す情報、および（ｂ）認証情報をクライアントデバイスに送信する。
【００１７】
任意選択的に、クライアントデバイスは、ユーザインターフェースを使用して、ユーザのパーソナルクラウドユーザアカウントに対応する新しい鍵の要求を提示する。クライアントデバイスは、ユーザインターフェースを使用して、ユーザ入力として鍵を受信する。クライアントデバイスは、特定のパーソナルクラウドデバイスとの接続を確立する（これは、パブリッククラウドサービスの支援を受けて実施することができる）。クライアントデバイスは、特定のパーソナルクラウドデバイスに、ユーザのパブリッククラウドユーザアカウントとユーザのパーソナルクラウドユーザアカウントとをバインドする要求を送信する。要求は、（ａ）ユーザインターフェースを介して入力された鍵、および（ｂ）パブリッククラウドサービスから受信されている認証情報を含む。
【００１８】
パーソナルクラウドデバイスは、ユーザが後で鍵を使用してパーソナルクラウドアカウントにログインすることができるように、パーソナルクラウドアカウントと関連付けて鍵を記憶する。
【００１９】
さらに、パーソナルクラウドデバイスは、パーソナルクラウドデバイスと関連付けられるデータリポジトリに記憶されている事前承認リストにアクセスする。事前承認リストに基づいて、パーソナルクラウドデバイスは、ユーザのパブリッククラウドユーザアカウントがユーザのパーソナルクラウドユーザアカウントとバインドされることを事前承認されていることを検証する。パーソナルクラウドデバイスは、（ａ）ユーザのパブリッククラウドユーザアカウントとユーザのパーソナルクラウドユーザアカウントとがバインドされることを承認されていることを示す検証、および（ｂ）クライアントデバイスから受信されている認証情報をパブリッククラウドサービスに送信する。
【００２０】
パブリッククラウドサービスは、パーソナルクラウドデバイスから受信されている認証情報が、パブリッククラウドサービスによって以前に生成された認証情報と同じであることを検証する。検証されると、パブリッククラウドサービスは、ユーザのパブリッククラウドユーザアカウントとユーザのパーソナルクラウドユーザアカウントとの間のバインドを記憶する。バインドは、パブリッククラウドサービスと関連付けられるデータリポジトリに記憶される。パブリッククラウドサービスは、バインドの確認をパーソナルクラウドデバイスに送信する。
【００２１】
確認を受信すると、パーソナルクラウドデバイスは、ユーザのパブリッククラウドユーザアカウントとユーザのパーソナルクラウドユーザアカウントとの間のバインドを記憶する。バインドは、パーソナルクラウドデバイスと関連付けられるデータリポジトリに記憶される。したがって、パブリッククラウドアカウントとパーソナルクラウドアカウントとがともにバインドされる。
【００２２】
１つまたは複数の実施形態は、２つのアカウント間のバインドに基づいて、パーソナルクラウドユーザアカウントと関連付けられるコンテンツアイテムをパブリッククラウドユーザアカウントにエクスポートすることを含む。エクスポートは、ユーザのパーソナルクラウドコンテンツアイテムをユーザのパブリッククラウドユーザアカウントにとってアクセス可能にすることを含む。パーソナルクラウドデバイスは、ユーザのパーソナルクラウドユーザアカウントと関連付けられるコンテンツアイテムをエクスポートする要求を受信する。パーソナルクラウドデバイスはバインドリストにアクセスする。バインドリストに基づいて、パーソナルクラウドデバイスは、ユーザのパーソナルクラウドユーザアカウントと特定のパブリッククラウドユーザアカウントとの間にバインドが存在することを検証する。特定のパブリッククラウドユーザアカウントは、同じユーザと関連付けられる。パーソナルクラウドデバイスは、コンテンツアイテムがユーザのパブリッククラウドユーザアカウントへのエクスポートが承認されていることを示す情報をパブリッククラウドサービスに送信する。コンテンツアイテムがエクスポートされると、ユーザはユーザのパブリッククラウドユーザアカウントからコンテンツアイテムを見ることおよび／またはアクセスすることができる。
【００２３】
１つまたは複数の実施形態は、２つのアカウント間のバインドに基づいて、パーソナルクラウドユーザアカウントと関連付けられるコンテンツアイテムを、パブリッククラウドユーザアカウントを使用して共有することを含む。共有は、ユーザのパーソナルクラウドコンテンツアイテムを別のユーザのパブリッククラウドユーザアカウントにとってアクセス可能にすることを含む。パーソナルクラウドデバイスは、発信元ユーザのパーソナルクラウドユーザアカウントと関連付けられるコンテンツアイテムを共有する要求を受信する。要求は、コンテンツアイテムを受信者ユーザのパブリッククラウドユーザアカウントと共有する必要があることを示している。パーソナルクラウドデバイスはバインドリストにアクセスする。バインドリストに基づいて、パーソナルクラウドデバイスは、発信元ユーザのパーソナルクラウドユーザアカウントと特定のパブリッククラウドユーザアカウントとの間にバインドが存在することを判定する。特定のパブリッククラウドユーザアカウントは、同じ発信元ユーザと関連付けられる。パーソナルクラウドデバイスは、発信元ユーザのパブリッククラウドユーザアカウントを使用してコンテンツアイテムを受信者ユーザのパブリッククラウドユーザアカウントと共有する要求をパブリッククラウドサービスに送信する。パブリッククラウドデバイスは、コンテンツアイテムが発信元ユーザのパブリッククラウドアカウントにエクスポートされたことを確認する。パブリッククラウドデバイスは、コンテンツアイテムを、受信者ユーザのパブリッククラウドアカウントにとってアクセス可能にする。受信者ユーザは、その後、コンテンツアイテムが発信元ユーザのパブリッククラウドユーザアカウントから共有されたという通知を受信することができる。受信者ユーザは、受信者ユーザのパブリッククラウドユーザアカウントからコンテンツアイテムを見ることおよび／またはアクセスすることができる。
【００２４】
本明細書に記載されているおよび／または特許請求の範囲に記載されている１つまたは複数の実施形態は、この一般的な概説のセクションに含まれていない場合がある。
【００２５】
２．ハイブリッドクラウドシステムアーキテクチャ
図１Ａは、１つまたは複数の実施形態による、ハイブリッドクラウドシステムを示す。図１に示されるように、システム１００は、パブリッククラウドサービス１０２、１つまたは複数のクライアントデバイス１０８ａ〜ｃ、および１つまたは複数のパーソナルクラウドデバイス１１０ａ〜ｃを含む。１つまたは複数の実施形態では、システム１００は、図１に示されている構成要素よりも多いまたは少ない構成要素を含んでもよい。図１に示されている構成要素は、互いにローカルであってもよく、またはリモートであってもよい。図１に示されている構成要素は、ソフトウェアおよび／またはハードウェアにおいて実装することができる。各構成要素は、複数のアプリケーションおよび／またはマシンにわたって分散させることができる。複数の構成要素を１つのアプリケーションおよび／またはマシンに組み合わせることができる。ある構成要素に関して説明されている工程は、代わりに別の構成要素によって実行されてもよい。
【００２６】
１つまたは複数の実施形態では、パブリッククラウドサービス１０２は、１つまたは複数のエンティティ（本明細書では「テナント」としても参照される）によって使用されるクラウド環境である。テナントは、例えば、法人、組織、企業、個人、または他のエンティティであってもよい。テナントは互いに独立している。テナントの事業または運営は互いに分離されている。
【００２７】
パブリッククラウドサービス１０２のテナントは、パブリッククラウドサービス１０２のハードウェア、ソフトウェア、および他のサポートインフラストラクチャの管理に関与する場合があるが、必ずしも関与するとは限らない。むしろ、パブリッククラウドサービスプロバイダが、パブリッククラウドサービス１０２のハードウェア、ソフトウェア、および他のサポートインフラストラクチャを管理する。パブリッククラウドサービスプロバイダは、テナント分離技法を実装することができる。テナント分離は、テナントがテナント自身のデータのみにアクセスすることができる（かつ、他のテナントのデータにはアクセスすることができない）ことを保証すること、異なるテナントのデータが相互作用しないことを保証すること、および／または、１つのテナントのリソース要求の、別のテナントのサービス品質に対する影響を最小限に抑えることを含むことができる。（パブリッククラウドサービス１０２が１つまたは複数のパーソンクラウドデバイスと組み合わせて使用されてハイブリッドクラウド環境が提供される場合、パブリッククラウドサービスプロバイダは「ハイブリッドクラウドサービスプロバイダ」として参照される場合がある。）
パブリッククラウドサービス１０２は、パブリッククラウドマネージャ１０４およびデータリポジトリ１０６を含む。パブリッククラウドサービス１０２に関するさらなる詳細は、図１Ｂを参照して以下に説明される。
【００２８】
１つまたは複数の実施形態では、パーソナルクラウドデバイス（パーソナルクラウドデバイス１１０ａ〜ｃのいずれかなど）は、パーソナルクラウドを単一のエンティティ（または関連するエンティティの単一のグループ）に提供する。エンティティ自体が、パーソナルクラウドデバイスのハードウェア、ソフトウェア、およびその他のサポートインフラストラクチャを管理する。パーソナルクラウドデバイスに関するさらなる詳細は、図１Ｃを参照して以下に説明される。
【００２９】
１つまたは複数の実施形態では、パブリッククラウドサービス１０２および１つまたは複数のパーソナルクラウドデバイス（パーソナルクラウドデバイス１１０ａ〜ｃのいずれかなど）がともに、ハイブリッドクラウド環境を提供する。エンティティは、（ａ）パブリッククラウドサービス１０２のテナントであるとともに、（ｂ）パーソナルクラウドデバイスの所有者、管理者、および／またはユーザでもある。エンティティと関連付けられるデータは、パブリッククラウドサービス１０２および／またはパーソナルクラウドデバイスに記憶され得る。
【００３０】
コンピュータネットワークに関連する追加の実施形態および／または例は、以下の「コンピュータネットワークおよびクラウドネットワーク」と題されたセクション８に記載されている。
【００３１】
１つまたは複数の実施形態では、クライアントデバイス（クライアントデバイス１０８ａ〜ｃのいずれかなど）は、パブリッククラウドサービス１０２および／またはパーソナルクラウドデバイス（パーソナルクラウドデバイス１１０ａ〜ｃのいずれかなど）からサービスを要求する。
【００３２】
パブリッククラウドサービス１０２のテナントと関連付けられるクライアントデバイスは、パブリッククラウドサービス１０２にアクセスすることができる。クライアントデバイスは、テナントが管理するハードウェアおよび／またはソフトウェアを含むことができる。付加的または代替的に、クライアントデバイスは、テナントと関連付けられる人（テナントの従業員、またはテナントの製品もしくはサービスの登録ユーザなど）によって使用されてもよい。
【００３３】
パーソナルクラウドデバイスを管理するエンティティと関連付けられるクライアントデバイスは、パーソナルクラウドデバイスにアクセスすることができる。クライアントデバイスは、エンティティが管理するハードウェアおよび／またはソフトウェアを含むことができる。付加的または代替的に、クライアントデバイスは、エンティティと関連付けられる人（エンティティの従業員、またはエンティティの家族など）によって使用されてもよい。
【００３４】
一例として、クライアントデバイス１０８ａは、パブリッククラウドサービス１０２のテナントと関連付けられるアプリケーションを実行することができる。クライアントデバイス１０８ｂは、パブリッククラウドサービス１０２の別のテナントと関連付けられるアプリケーションを実行することができる。クライアントデバイス１０８ｃは、パブリッククラウドサービス１０２の別のテナントと関連付けられるアプリケーションを実行することができる。したがって、図示のように、クライアントデバイス１０８ａ〜ｃの各々が、パブリッククラウドサービス１０２にアクセスすることができる。
【００３５】
引き続きこの例において、Ｄａｄｄｙ  Ｊｏｅがパーソナルクラウドデバイス１１０ａを管理することができる。Ｄａｄｄｙ  Ｊｏｅは、Ｌｉｔｔｌｅ  Ｊｏｈｎｎｙ（Ｄａｄｄｙ  Ｊｏｅの息子）にパーソナルクラウドデバイス１１０ａへのアクセスを許可することができる。一方、Ｌｉｔｔｌｅ  Ｊｏｈｎｎｙはパーソナルクラウドデバイス１１０ｂを管理することができる。Ｊｕｓｔｉｎは、パーソナルクラウドデバイス１１０ｃを管理することができる。
【００３６】
Ｄａｄｄｙ  Ｊｏｅはパーソナルクラウドデバイス１１０ａの管理者であるため、Ｄａｄｄｙ  Ｊｏｅのクライアントデバイス１０８ａはパーソナルクラウドデバイス１１０ａにアクセスすることができる。さらに、パパジョーがＬｉｔｔｌｅ  Ｊｏｈｎｎｙにアクセスを許可したため、Ｌｉｔｔｌｅ  Ｊｏｈｎｎｙのクライアントデバイス１０８ｂは、パーソナルクラウドデバイス１１０ａにアクセスすることができる。Ｊｕｓｔｉｎのクライアントデバイス１０８ｃは、パーソナルクラウドデバイス１１０ａにアクセスすることができない。
【００３７】
Ｌｉｔｔｌｅ  Ｊｏｈｎｎｙはパーソナルクラウドデバイス１１０ｂの管理者であるため、Ｌｉｔｔｌｅ  Ｊｏｈｎｎｙのクライアントデバイス１０８ｂはパーソナルクラウドデバイス１１０ｂにアクセスすることができる。クライアントデバイス１０８ａおよび１０８ｃは、パーソナルクラウドデバイス１１０ｂにアクセスすることができない。
【００３８】
Ｊｕｓｔｉｎはパーソナルクラウドデバイス１１０ｃの管理者であるため、Ｊｕｓｔｉｎのクライアントデバイス１０８ｃはパーソナルクラウドデバイス１１０ｃにアクセスすることができる。クライアントデバイス１０８ａ〜ｂは、パーソナルクラウドデバイス１１０ｃにアクセスすることができない。
【００３９】
したがって、図示のように、クライアントデバイス１０８ａ〜ｂは、パーソナルクラウドデバイス１１０ａにアクセスすることができる。クライアントデバイス１０８ｂは、パーソナルクラウドデバイス１１０ｂにアクセスすることができる。クライアントデバイス１０８ｃは、パーソナルクラウドデバイス１１０ｃにアクセスすることができる。
【００４０】
１つまたは複数の実施形態では、クライアントデバイスは、パブリッククラウドサービス１０２および／またはパーソナルクラウドデバイスの両方と相互作用するためのインターフェースを実行する。クライアントデバイスは、パブリッククラウドサービス１０２および／またはパーソナルクラウドデバイスにコンテンツアイテムを記憶することを要求することができる。クライアントデバイスは、パブリッククラウドサービス１０２および／またはパーソナルクラウドデバイスからコンテンツアイテムを取り出すことを要求することができる。パブリッククラウドサービス１０２と関連付けられるデータリポジトリに記憶されたコンテンツアイテムは、本明細書においては「パブリッククラウドコンテンツアイテム」として参照される場合がある。パーソナルクラウドデバイスと関連付けられるデータリポジトリに記憶されたコンテンツアイテムは、本明細書においては「パーソナルクラウドコンテンツアイテム」として参照される場合がある。
【００４１】
図１Ｂは、１つまたは複数の実施形態による、パブリッククラウドマネージャおよびパブリッククラウドサービスのデータリポジトリを示している。図１Ａ〜図１Ｃの同じ番号のラベルは、同様の構成要素を指す。
【００４２】
１つまたは複数の実施形態では、データリポジトリ１０６は、データを記憶するための任意のタイプの記憶ユニットおよび／またはデバイス（例えば、ファイルシステム、データベース、テーブルの集合、または任意の他の記憶メカニズム）である。さらに、データリポジトリ１０６は、複数の異なる記憶ユニットおよび／またはデバイスを含んでもよい。複数の異なる記憶ユニットおよび／またはデバイスは、同じタイプであってもよく、もしくはそうでなくてもよく、または、同じ物理的な場所に位置してもよく、もしくは、そうでなくてもよい。さらに、データリポジトリ１０６は、パブリッククラウドマネージャ１０４と同じコンピューティングシステム上で実装または実行されてもよい。代替的または付加的に、データリポジトリ１０６は、パブリッククラウドマネージャ１０４とは別個のコンピューティングシステム上で実装または実行されてもよい。データリポジトリ１０６は、直接接続またはネットワークを介してパブリッククラウドマネージャ１０４に通信可能に結合することができる。
【００４３】
１つまたは複数の実施形態では、パブリッククラウドサービス１０２と関連付けられるデータリポジトリ１０６は、１つまたは複数のパブリッククラウドコンテンツアイテム１２４を記憶する。パブリッククラウドコンテンツアイテム１２４は、パブリッククラウドサービス１０２のテナントと関連付けられるコンテンツアイテムである。
【００４４】
１つまたは複数の実施形態では、パブリッククラウドマネージャ１０４は、パブリッククラウドサービス１０２を管理するように構成されたハードウェアおよび／またはソフトウェアを指す。パブリッククラウドマネージャ１０４は、１つまたは複数のパブリッククラウドユーザアカウント１１２ａ〜ｂ、事前承認リスト１２０、およびバインドリスト１２２を管理する。
【００４５】
１つまたは複数の実施形態では、パブリッククラウドユーザアカウント（パブリッククラウドユーザアカウント１１２ａ〜ｂのいずれかなど）は、パブリッククラウドサービス１０２のサービスを要求するためにユーザがログインするユーザアカウントである。各パブリッククラウドユーザアカウント（本明細書においては「パブリッククラウドアカウント」としても参照される）は、一意の識別子（ユーザ名など）と関連付けられる。ユーザは、ユーザ名および鍵を入力して、ユーザのパブリッククラウドユーザアカウントにログインすることができる。
【００４６】
各パブリッククラウドユーザアカウントは、１つまたは複数のパブリッククラウドコンテンツアイテム識別子（ＩＤ）、１つまたは複数のエクスポートパーソナルクラウドコンテンツアイテムＩＤ、および１つまたは複数の共有コンテンツアイテムＩＤと関連付けることができる。図示のように、パブリッククラウドアカウント１１２ａは、パブリッククラウドコンテンツアイテムＩＤ１１４ａ、エクスポートパーソナルクラウドコンテンツアイテムＩＤ１１６ａ、および共有コンテンツアイテムＩＤ１１８ａと関連付けられる。パブリッククラウドアカウント１１２ｂは、パブリッククラウドコンテンツアイテムＩＤ１１４ｂ、エクスポートパーソナルクラウドコンテンツアイテムＩＤ１１６ｂ、および共有コンテンツアイテムＩＤ１１８ｂと関連付けられる。
【００４７】
特定のパブリッククラウドユーザアカウントと関連付けられるコンテンツアイテムＩＤは、特定のパブリッククラウドユーザアカウントにとってアクセス可能であるコンテンツアイテムを識別する。一例として、パブリッククラウドアカウント１１２ａにログインしたユーザは、パブリッククラウドコンテンツアイテムＩＤ１１４ａ、エクスポートパーソナルクラウドコンテンツアイテムＩＤ１１６ａ、および／または共有コンテンツアイテムＩＤ１１８ａによって識別される任意のコンテンツアイテム（複数可）にアクセスすることができる。
【００４８】
特定のパブリッククラウドユーザアカウントと関連付けられるパブリッククラウドコンテンツアイテムＩＤは、（ａ）パブリッククラウドサービス１０２と関連付けられるデータリポジトリ１０６に記憶されており、（ｂ）特定のパブリッククラウドユーザアカウントによって所有および／または管理されているパブリッククラウドコンテンツアイテム１２４を識別する。例として、Ｍａｒｙは写真をパブリッククラウドサービスにアップロードすることができる。パブリッククラウドサービスに記憶されている写真は、パブリッククラウドコンテンツアイテムＩＤ、ＩＤ＃ＰＵＢ１２３と関連付けることができる。Ｍａｒｙのパブリッククラウドユーザアカウントは、ＩＤ＃ＰＵＢ１２３との関連付けを示すように更新することができる。
【００４９】
特定のパブリッククラウドユーザアカウントと関連付けられるエクスポートクラウドコンテンツアイテムＩＤは、（ａ）パーソナルクラウドデバイス（パーソナルクラウドデバイス１１０ａ〜ｃのいずれかなど）と関連付けられるデータリポジトリに記憶されており、（ｂ）特定のパブリッククラウドユーザアカウントにエクスポートされているパーソナルクラウドコンテンツアイテムを識別する。例として、Ｍａｒｙはパーソナルクラウドデバイスに写真を記憶することができる。パーソナルクラウドデバイスに記憶されている写真は、パーソナルクラウドコンテンツアイテムＩＤ、ＩＤ  ＃ＰＥＲ４５６と関連付けることができる。Ｍａｒｙは、写真をＭａｒｙ自身のパブリッククラウドユーザアカウントにエクスポートすることができる。Ｍａｒｙのパブリッククラウドユーザアカウントは、ＩＤ  ＃ＰＥＲ４５６と関連付けられて記憶される。エクスポートに関するさらなる詳細は、図４を参照して以下に説明される。
【００５０】
特定のパブリッククラウドユーザアカウントと関連付けられる共有コンテンツアイテムＩＤは、別のパブリッククラウドユーザアカウントから共有されたコンテンツアイテムを識別する。一例として、パブリッククラウドアカウント１１２ａと関連付けられる共有コンテンツアイテムＩＤ１１８ａは、パブリッククラウドアカウント１１２ｂから共有されたコンテンツアイテムと関連付けることができる。共有コンテンツアイテムは、パブリッククラウドサービス１０２と関連付けられるデータリポジトリ１０６に記憶されたパブリッククラウドコンテンツアイテム１２４であり得る。代替的に、共有コンテンツアイテムは、パーソナルクラウドデバイス（パーソナルクラウドデバイス１１０ａ〜ｃのいずれかなど）と関連付けられるデータリポジトリに記憶されたパーソナルクラウドコンテンツアイテムであってもよい。共有に関するさらなる詳細は、図５を参照して以下に説明される。
【００５１】
１つまたは複数の実施形態では、事前承認リスト１２０は、いずれのパブリッククラウドユーザアカウント１１２ａ〜ｂおよびいずれのパーソナルクラウドユーザアカウント１２６ａ〜ｂが互いとバインドすることを承認されているかを識別する。事前承認リスト１２０は、（ａ）パーソナルクラウドユーザアカウントの識別子および（ｂ）パーソナルクラウドユーザアカウントと関連付けられるパーソナルクラウドデバイスの識別子を使用することによって、パーソナルクラウドユーザアカウントを識別することができる。事前承認リスト１２０は、任意のデータ構造に記憶することができ、これは、リストであってもよいが、必ずしもそうであるとは限らない。
【００５２】
一例として、Ｊｏｈｎのパーソナルクラウドデバイスは、一意の識別子ＩＤ＃３２１と関連付けることができる。Ｊｏｈｎのパーソナルクラウドデバイスは、２つのパーソナルクラウドユーザアカウントと関連付けられ得る。１つのアカウントは、Ｊｏｈｎ自身のユーザ名「ＪｏｈｎＭｅ」を有し得る。別のアカウントは、Ｊｏｈｎの父親のユーザ名「Ｄａｄｄｙ」を有し得る。
【００５３】
この例を続けると、Ｍａｒｙのパーソナルクラウドデバイスは一意の識別子ＩＤ＃６５４と関連付けることができる。Ｍａｒｙのパーソナルクラウドデバイスは、２つのパーソナルクラウドユーザアカウントと関連付けられ得る。１つのアカウントは、Ｍａｒｙ自身のユーザ名「ＩＡｍＭａｒｙ」を有し得る。別のアカウントは、Ｍａｒｙの父親のユーザ名「Ｄａｄｄｙ」を有し得る。
【００５４】
この例を続けると、Ｊｏｈｎ、Ｊｏｈｎの父親、Ｍａｒｙ、およびＭａｒｙの父親は各々、パブリッククラウドサービスを利用することができる。Ｊｏｈｎのパブリッククラウドユーザアカウントは、ユーザ名「Ｊｏｈｎ．Ｓｍｉｔｈ」を有することができる。Ｊｏｈｎの父親のパブリッククラウドユーザアカウントは、ユーザ名「Ｄａｖｉｄ．Ｓｍｉｔｈ」を有することができる。Ｍａｒｙのパブリッククラウドユーザアカウントは、ユーザ名「Ｍａｒｙ１２３」を有することができる。Ｍａｒｙの父親のパブリッククラウドユーザアカウントは、ユーザ名「Ｆｒａｎｋ．Ｈｏ」を有することができる。
【００５５】
この例を続けると、パブリッククラウドサービスと関連付けられる事前承認リストは、以下を示すことができる。
【００５６】
【表１】
2021536620.tif 000003
【００５７】
上記の例では、事前承認リストは、パブリッククラウドアカウント「Ｄａｖｉｄ．Ｓｍｉｔｈ」とパーソナルクラウドデバイスＩＤ＃３２１のパーソナルクラウドアカウント「Ｄａｄｄｙ」とがともにバインドされることが承認されていることを示している。事前承認リストは、パブリッククラウドアカウント「Ｆｒａｎｋ．Ｈｏ」とパーソナルクラウドデバイスＩＤ＃６５４のパーソナルクラウドアカウント「Ｄａｄｄｙ」とがともにバインドされることが承認されていることをさらに示している。
【００５８】
１つまたは複数の実施形態では、バインドリスト１２２が、いずれのパブリッククラウドユーザアカウント１１２ａ〜ｂおよびいずれのパーソナルクラウドユーザアカウント１２６ａ〜ｂがともにバインドされるかを識別する。バインドリスト１２２は、（ａ）パーソナルクラウドユーザアカウントの識別子および（ｂ）パーソナルクラウドユーザアカウントと関連付けられるパーソナルクラウドデバイスの識別子を使用することによって、パーソナルクラウドユーザアカウントを識別することができる。バインドリスト１２２は、任意のデータ構造に記憶することができ、これは、リストであってもよいが、必ずしもそうであるとは限らない。
【００５９】
１つまたは複数の実施形態では、事前承認リスト１２０は、パーソナルクラウドデバイスの管理者によって提供されるバインドの承認に基づいて生成および／または更新される。対照的に、バインドリスト１２２は、ユーザのパーソナルクラウドアカウントとユーザのパブリッククラウドアカウントとをバインドすることを所望するユーザから送信されるバインドの要求に基づいて生成および／または更新される。事前承認リスト１２０に示されるようにバインドが承認された場合、２つのアカウント間のバインドが生成され、バインドリスト１２２に記憶される。
【００６０】
１つまたは複数の実施形態では、パブリッククラウドマネージャ１０４は、パブリッククラウドユーザアカウントとパーソナルクラウドユーザアカウントとをバインドし、コンテンツアイテムをエクスポートし、および／またはコンテンツアイテムを共有するための、本明細書に記載の工程を実行するように構成される。パブリッククラウドユーザアカウントとパーソナルクラウドユーザアカウントとのバインド、コンテンツアイテムのエクスポート、および／またはコンテンツアイテムの共有の工程の例を、図２〜図５を参照して以下に説明する。
【００６１】
図１Ｃは、１つまたは複数の実施形態による、パーソナルクラウドデバイスを示す。図１Ａ〜図１Ｃの同じ番号のラベルは、同様の構成要素を指す。
【００６２】
１つまたは複数の実施形態では、パーソナルクラウドデバイス１１０は、１つまたは複数のパーソナルクラウドコンテンツアイテム１３４を記憶するデータリポジトリと関連付けられる。パーソナルクラウドデバイス１１０および関連するデータリポジトリは、同じコンピューティングシステム上で実装または実行され得る。代替的にまたは付加的に、パーソナルクラウドデバイス１１０および関連するデータリポジトリは、別個のコンピューティングシステム上で実装または実行されてもよい。
【００６３】
１つまたは複数の実施形態では、パーソナルクラウドデバイス１１０は、１つまたは複数のパーソナルクラウドユーザアカウント１２６ａ〜ｂ、事前承認リスト１３０、およびバインドリスト１３２を管理する。
【００６４】
１つまたは複数の実施形態では、パーソナルクラウドユーザアカウント（パーソナルクラウドユーザアカウント１２６ａ〜ｂのいずれかなど）は、パーソナルクラウドデバイス１１０のサービスを要求するためにユーザがログインするユーザアカウントである。パーソナルクラウドデバイス１１０の各パーソナルクラウドユーザアカウント（本明細書においては「パーソナルクラウドアカウント」としても参照される）は、パーソナルクラウドデバイス１１０に対して一意である識別子（ユーザ名など）と関連付けられる。ただし、異なるパーソナルクラウドデバイスのパーソナルクラウドユーザアカウントが、同じ識別子を有してもよい。ユーザは、ユーザ名および鍵を入力して、ユーザのパーソナルクラウドユーザアカウントにログインすることができる。
【００６５】
１つまたは複数の実施形態では、パーソナルクラウドデバイス１１０のパーソナルクラウドユーザアカウント１２６ａ〜ｂは、１人または複数の管理者（特別な特権を有するパーソナルデバイス１１０のユーザ）によって維持される。一実施形態では、管理者は、例えば、各パーソナルクラウドユーザアカウントのユーザ名および／または鍵を提供することを含め、各パーソナルクラウドユーザアカウントを設定する。別の実施形態では、ユーザが、パーソナルクラウドユーザアカウントを要求することができる。管理者は、要求を承認するか否かを判定することができる。承認されると、ユーザは、ユーザのパーソナルクラウドユーザアカウントのユーザ名および／または鍵を設定することを許可され得る。パーソナルクラウドデバイス１１０のパーソナルクラウドユーザアカウント１２６ａ〜ｂと関連付けられる情報（ユーザ名、識別子、鍵、プロファイルなど）は、パーソナルクラウドデバイス１１０と関連付けられるデータリポジトリに記憶される。
【００６６】
各パーソナルクラウドユーザアカウントは、１つまたは複数のパーソナルクラウドコンテンツアイテムＩＤと関連付けられる。図示のように、パーソナルクラウドアカウント１２６ａは、パーソナルクラウドコンテンツアイテムＩＤ１２８ａと関連付けられる。パーソナルクラウドアカウント１２６ｂは、パーソナルクラウドコンテンツアイテムＩＤ１２８ｂと関連付けられる。
【００６７】
特定のパーソナルクラウドユーザアカウントと関連付けられるパーソナルクラウドコンテンツアイテムＩＤは、（ａ）パーソナルクラウドデバイス１１０と関連付けられるデータリポジトリに記憶されており、（ｂ）特定のパーソナルクラウドユーザアカウントによって所有され、管理され、および／または他の様態でアクセス可能であるパーソナルクラウドコンテンツアイテム１３４を識別する。例として、Ｍａｒｙはパーソナルクラウドデバイスに写真を記憶することができる。パーソナルクラウドデバイスに記憶されている写真は、パーソナルクラウドコンテンツアイテムＩＤ、ＩＤ  ＃ＰＥＲ４５６と関連付けることができる。Ｍａｒｙのパーソナルクラウドユーザアカウントは、ＩＤ＃ＰＥＲ４５６との関連付けを示すように更新することができる。
【００６８】
１つまたは複数の実施形態では、事前承認リスト１３０は、図１Ｂを参照して上記で説明した事前承認リスト１２０と同様である。事前承認リスト１３０は、パーソナルクラウドデバイス１１０と関連付けられるデータリポジトリに記憶され、一方、事前承認リスト１２０は、パブリッククラウドサービス１０２と関連付けられるデータリポジトリに記憶される。パーソナルクラウドデバイス１１０は、検証を実行するために（事前承認リスト１２０ではなく）事前承認リスト１３０にアクセスすることができる。パブリッククラウドサービス１０２は、検証を実行するために（事前承認リスト１３０ではなく）事前承認リスト１２０にアクセスすることができる。バインドは、バインドの承認が双方（パーソナルクラウドデバイス１１０およびパブリッククラウドサービス１０２）によって検証された場合にのみ生成される。
【００６９】
１つまたは複数の実施形態では、バインドリスト１３２は、図１Ｂを参照して上記で説明したバインドリスト１２２と同様である。バインドリスト１３２は、パーソナルクラウドデバイス１１０と関連付けられるデータリポジトリに記憶され、一方、バインドリスト１２２は、パブリッククラウドサービス１０２と関連付けられるデータリポジトリに記憶される。パーソナルクラウドデバイス１１０は、検証を実行するために（バインドリスト１２２ではなく）バインドリスト１３２にアクセスすることができる。パブリッククラウドサービス１０２は、検証を実行するために（バインドリスト１３２ではなく）バインドリスト１２２にアクセスすることができる。パブリッククラウドアカウントおよびパーソナルクラウドアカウントと関連付けられる特定の動作（エクスポートまたは共有など）は、２つのアカウントのバインドが双方（パーソナルクラウドデバイス１１０およびパブリッククラウドサービス１０２）によって検証された場合にのみ実行される。
【００７０】
一実施形態では、パブリッククラウドマネージャ１０４、パーソナルクラウドデバイス１１０、および／またはクライアントデバイスは、１つまたは複数のデジタルデバイス上に実装される。「デジタルデバイス」という用語は、一般に、プロセッサを含む任意のハードウェアデバイスを指す。デジタルデバイスは、アプリケーションまたは仮想マシンを実行する物理デバイスを指す場合がある。デジタルデバイスの例は、コンピュータ、タブレット、ラップトップ、デスクトップ、ネットブック、サーバ、ウェブサーバ、ネットワークポリシサーバ、プロキシサーバ、汎用マシン、特定の機能のためのハードウェアデバイス、メインフレーム、テレビ、コンテンツレシーバ、セットトップボックス、プリンタ、携帯電話、スマートフォン、および／または個人情報端末（ＰＤＡ）を含む。
【００７１】
３．パブリッククラウドユーザアカウントとパーソナルクラウドユーザアカウントとの手動バインド
図２は、１つまたは複数の実施形態による、パブリッククラウドユーザアカウントおよびパーソナルクラウドユーザアカウントを手動でバインドするための工程の例示的なセットを示す。図２に示されている１つまたは複数の工程は、ともに変更、再構成、または省略されてもよい。したがって、図２に示される工程の特定のシーケンスは、１つまたは複数の実施形態の範囲を限定するものとして解釈されるべきではない。
【００７２】
クライアントデバイス２０８は、図１のクライアントデバイス１０８ａ〜ｃのいずれかと同様である。パブリッククラウドサービス２０２は、図１の同様のパブリッククラウドサービス１０２である。パーソナルクラウドデバイス２１０は、図１のパーソナルクラウドデバイス１１０ａ〜ｃのいずれかと同様である。
【００７３】
１つまたは複数の実施形態では、クライアントデバイス２０８は、パーソナルクラウドデバイス２１０との安全な接続を生成する（工程２４２）。パーソナルクラウドデバイス２１０に応じて、安全な接続を作成することは、クライアントデバイス２０８のユーザおよび／またはパーソナルクラウドデバイス２１０の管理者にとって複雑および／または面倒なプロセスを含み得る。一例として、パーソナルクラウドデバイス２１０の管理者は、ファイアウォール設定を変更して、ユーザのクライアントデバイス２０８がパーソナルクラウドデバイス２１０にアクセスすることを可能にする必要がある場合がある。さらに、ユーザは、パーソナルクラウドデバイス２１０と関連付けられるファイアウォールを克服するために、クライアントデバイス２０８に特定の構成を提供する必要がある場合がある。別の例として、パーソナルクラウドデバイス２１０の管理者は、ユーザのクライアントデバイス２０８がパーソナルクラウドデバイス２１０にアクセスするための特定のポートを指定する必要がある場合がある。さらに、ユーザは、パーソナルクラウドデバイス２１０の特定のポートと通信するようにクライアントデバイス２０８を構成する必要がある場合がある。
【００７４】
１つまたは複数の実施形態では、クライアントデバイス２０８は、パーソナルクラウドデバイス２１０と関連付けられるパーソナルクラウドアカウントにログインする（工程２４４）。クライアントデバイス２０８は、パーソナルクラウドアカウントのユーザ名（または他の識別子）を要求するプロンプトをユーザインターフェース上に提示する。クライアントデバイス２０８はまた、パーソナルクラウドアカウントにログインするための鍵も要求することができる。クライアントデバイス２０８は、ユーザインターフェースを介してユーザ名および鍵を受信する。クライアントデバイス２０８は、この情報をパーソナルクラウドデバイス２１０に送信する。パーソナルクラウドデバイス２１０は、受信した情報を、パーソナルクラウドデバイス２１０と関連付けられるデータリポジトリに記憶されたパーソナルクラウドユーザアカウント情報と照合して検証する。パーソナルクラウドデバイス２１０が、パーソナルクラウドアカウントに対して提供された鍵が正しいことを判定した場合、パーソナルクラウドデバイス２１０は、ユーザがパーソナルクラウドアカウントにログインすることを可能にする。クライアントデバイス２０８は、パーソナルクラウドアカウントがログインされたことの確認を受信することができる。
【００７５】
１つまたは複数の実施形態では、クライアントデバイス２０８は、特定のパブリッククラウドアカウントとバインドする要求を送信する（工程２４６）。クライアントデバイスは、パーソナルクラウドアカウントとバインドされる、パブリッククラウドサービス２０２と関連付けられるパブリッククラウドアカウントのユーザ名（または他の識別子）を示すユーザ入力を受信する。ユーザ入力に応答して、クライアントデバイス２０８は、パーソナルクラウドアカウントをパブリッククラウドアカウントとバインドする要求を送信する。要求は、パーソナルクラウドデバイス２１０に送信される。
【００７６】
１つまたは複数の実施形態では、クライアントデバイス２０８は、パブリッククラウドアカウントの鍵を送信する（工程２４８）。クライアントデバイス２０８はまた、パブリッククラウドアカウントにログインするための鍵を示すユーザ入力を受信する。クライアントデバイス２０８は、パブリッククラウドアカウントの鍵をパーソナルクラウドデバイス２１０に送信する。
【００７７】
１つまたは複数の実施形態では、パーソナルクラウドデバイス２１０は、パーソナルクラウドアカウントとパブリッククラウドアカウントとをバインドする要求を送信する（工程２５０）。要求は、パブリッククラウドアカウントの鍵を含む。
【００７８】
１つまたは複数の実施形態では、パブリッククラウドサービス２０２は、パブリッククラウドアカウントの鍵を検証する（工程２５２）。鍵が正しいことの検証に応答して、パブリッククラウドサービス２０２は、パーソナルクラウドアカウントとパブリッククラウドアカウントとの間のバインドを記憶する（工程２５４）。パーソナルクラウドアカウントとパブリッククラウドアカウントとの間のバインドを示す情報は、パブリッククラウドサービス２０２と関連付けられるデータリポジトリに記憶される。バインドを示す情報は、図１Ｂのバインドリスト１２２などのバインドリストに記憶され得る。記憶される情報は、（ａ）パーソナルクラウドアカウントのユーザ名、（ｂ）パーソナルクラウドデバイス２１０の識別子、および（ｃ）パブリッククラウドアカウントのユーザ名を含むことができる。
【００７９】
１つまたは複数の実施形態では、パブリッククラウドサービス２０２は、バインドの確認をパーソナルクラウドデバイス２１０に送信する（工程２１０）。確認の受信に応答して、パーソナルクラウドデバイス２１０は、パーソナルクラウドアカウントとパブリッククラウドアカウントとの間のバインドを記憶する（工程２５８）。バインドは、パーソナルクラウドデバイス２１０と関連付けられるデータリポジトリに記憶される。パーソナルクラウドアカウントとパブリッククラウドアカウントとの間のバインドを示す情報は、図１Ｃのバインドリスト１３２などのバインドリストに記憶され得る。記憶される情報は、（ａ）パーソナルクラウドアカウントのユーザ名、および（ｂ）パブリッククラウドアカウントのユーザ名を含むことができる。バインドを示す情報がパーソナルクラウドデバイス２１０とパブリッククラウドサービス２０２の両方に記憶されると、パブリッククラウドアカウントとパーソナルクラウドアカウントとの間のバインドが生成される。
【００８０】
図２の工程に基づいて、事前承認リストを使用せずに、パブリッククラウドアカウントとパーソナルクラウドアカウントとの間のバインドが生成される。クライアントデバイス２０８のユーザは、（ａ）パーソナルクラウドデバイス２１０と接続するようにクライアントデバイス２０８を構成し、（ｂ）パーソナルクラウドアカウントのユーザ名および鍵を入力し、（ｃ）パブリッククラウドアカウントのユーザ名および鍵を入力する必要がある。
【００８１】
４．事前承認に基づくパブリッククラウドユーザアカウントとパーソナルクラウドユーザアカウントとのバインド
図３は、１つまたは複数の実施形態による、事前承認に基づいてパブリッククラウドユーザアカウントおよびパーソナルクラウドユーザアカウントをバインドするための工程の例示的なセットを示す。図３に示されている１つまたは複数の工程は、ともに変更、再構成、または省略されてもよい。したがって、図３に示される工程の特定のシーケンスは、１つまたは複数の実施形態の範囲を限定するものとして解釈されるべきではない。
【００８２】
クライアントデバイス３０８は、図１のクライアントデバイス１０８ａ〜ｃのいずれかと同様である。パブリッククラウドサービス３０２は、図１の同様のパブリッククラウドサービス１０２である。パーソナルクラウドデバイス３１０は、図１のパーソナルクラウドデバイス１１０ａ〜ｃのいずれかと同様である。
【００８３】
図３の工程を実行する前に、事前承認リストが生成される。パーソナルクラウドデバイス３１０の管理者は、パーソナルクラウドデバイス３１０と関連付けられるインターフェースを使用して事前承認リストを入力することができる。管理者は、パーソナルクラウドデバイス３１０にログインする。管理者は、パーソナルクラウドアカウントが特定のユーザ向けに作成されることを可能にする情報を入力する。さらに、管理者は、パーソナルクラウドアカウントと特定のパブリッククラウドアカウントとの間にバインドが生成されることを可能にする情報を入力する。管理者は、パブリッククラウドアカウントと関連付けられるユーザ名（または他の識別子）によってパブリッククラウドアカウントを識別することができる。パーソナルクラウドデバイス３１０は、事前承認リストのコピーを、パーソナルクラウドデバイス３１０と関連付けられるデータリポジトリに記憶する。さらに、パーソナルクラウドデバイス３１０は、事前承認リストをパブリッククラウドサービス３０２に送信する。パブリッククラウドサービス３０２は、事前承認リストの別個のコピーを、パブリッククラウドサービス３０２と関連付けられるデータリポジトリに記憶する。任意選択的に、パブリッククラウドサービス３０２は、複数の異なるパーソナルクラウドデバイスの事前承認リストに示される情報を、パブリッククラウドサービス３０２によって維持される１つの事前承認リストに統合することができる。任意選択的に、パーソナルクラウドデバイス３１０は、ユーザのパーソナルクラウドアカウントおよびパブリッククラウドアカウントがバインドについて事前承認されていることを通知するために、特定のユーザに通知（電子メールなど）を送信することができる。
【００８４】
１つまたは複数の実施形態では、クライアントデバイス３０８は、パブリッククラウドサービス３０２のパブリッククラウドアカウントにログインする（工程３４２）。クライアントデバイス３０８は、パブリッククラウドアカウントのユーザ名（または他の識別子）を要求するプロンプトをユーザインターフェース上に提示する。クライアントデバイス３０８はまた、パブリッククラウドアカウントにログインするための鍵も要求することができる。ユーザインターフェースは、例えば、パブリッククラウドサービス３０２にアクセスするためのウェブインターフェースであり得る。クライアントデバイス３０８は、ユーザインターフェースを介してユーザ名および鍵を受信する。クライアントデバイス３０８は、この情報をパブリッククラウドサービス３０２に送信する。パブリッククラウドサービス３０２は、この情報を検証し、ユーザがパブリッククラウドアカウントにログインすることを可能にする。クライアントデバイス３０８は、パブリッククラウドアカウントがログインされたことの確認を受信することができる。
【００８５】
１つまたは複数の実施形態では、パブリッククラウドサービス３０２は、パブリッククラウドアカウントが特定のパーソナルクラウドアカウントとバインドすることを事前承認されていることを判定する（工程３４４）。パブリッククラウドサービス３０２は、パブリッククラウドサービス３０２と関連付けられるデータリポジトリから事前承認リストを取得する。事前承認リストは、例えば、図１Ｂの事前承認リスト１２０であり得る。パブリッククラウドサービス３０２は、パブリッククラウドアカウントのユーザ名を使用して事前承認リストに対して検索を実行する。パブリッククラウドサービス３０２は、パブリッククラウドアカウントのユーザ名と関連付けられる、事前承認リスト内のエントリを見つける。事前承認リストのエントリは、（ａ）パブリッククラウドアカウントのユーザ名、（ｂ）パーソナルクラウドアカウントのユーザ名（または他の識別子）、および（ｃ）パーソナルクラウドデバイス３１０の識別子を含む。上記の情報に基づいて、パブリッククラウドサービス３０２は、パブリッククラウドアカウントが、パーソナルクラウドデバイス３１０と関連付けられるパーソナルクラウドアカウントとバインドすることを事前承認されていることを判定する。
【００８６】
１つまたは複数の実施形態では、パブリッククラウドサービス３０２は、一時的な認証情報を生成する（工程３４６）。パブリッククラウドサービス３０２は、例えば、乱数発生器および／または疑似乱数発生器を使用することなど、任意の手段によって、一時的な認証情報を生成することができる。パブリッククラウドサービス３０２は、パブリッククラウドサービス３０２と関連付けられるデータリポジトリに一時的な認証情報を記憶する。
【００８７】
１つまたは複数の実施形態では、パブリッククラウドサービス３０２は、パーソナルクラウドアカウント識別子および一時的な認証情報をクライアントデバイス３０８に送信する（工程３４８）。パーソナルクラウドアカウント識別子は、（ａ）パーソナルクラウドアカウントのユーザ名、および（ｂ）パーソナルクラウドデバイス３１０の識別子を含む。
【００８８】
１つまたは複数の実施形態では、クライアントデバイス３０８は、ユーザインターフェース上で、パーソナルクラウドアカウントにログインするための鍵の要求を提示する（工程３５０）。これは、パーソナルクラウドアカウントとパブリッククラウドアカウントとをバインドする過程で実行される任意選択の工程である。クライアントデバイス３０８は、ユーザインターフェース上にパーソナルクラウドアカウントのユーザ名を提示することができる。クライアントデバイス３０８は、パーソナルクラウドアカウントにログインするための鍵を受信するように構成されたテキストボックスを提示することができる。クライアントデバイス３０８は、ユーザインターフェースを介したユーザ入力として鍵を受信する。
【００８９】
一実施形態では、クライアントデバイス３０８のユーザインターフェースは、パーソナルクラウドアカウントにログインするために、ユーザ自身によって選択および／または選出された新しい鍵を要求する。ユーザは、パブリッククラウドアカウントにログインすることによってすでに認証されているため、クライアントデバイス３０８は、ユーザに、ユーザのパーソナルクラウドアカウントへの鍵を作成する能力を提供する。その後、ユーザは同じ鍵を使用してユーザのパーソナルクラウドアカウントにログインすることができる。したがって、ユーザは、クライアントデバイス３０８との単一の相互作用プロセスにおいて、２つの動作、すなわち、（ａ）パーソナルクラウドアカウントのパスワードの作成、および（ｂ）パーソナルクラウドアカウントのパブリッククラウドアカウントへのバインドを実行することができる。
【００９０】
一実施形態では、クライアントデバイス３０８のユーザインターフェースは、パーソナルクラウドアカウントにログインするために既存の鍵を要求する。例として、既存の鍵は、パーソナルクラウドデバイスの管理者によって以前に設定されている場合がある。既存の鍵は、電子メール、テキストメッセージング、または電話による口頭などの任意の手段を使用して、管理者からユーザに伝達することができる。別の例として、既存の鍵は、ユーザ自身によって以前に設定されている場合がある。ユーザは、パーソナルクラウドデバイスへの直接的なインターフェースを介して、ユーザのパーソナルクラウドアカウントに対する鍵を設定することができる。既存の鍵は、パーソナルクラウドデバイス３１０がユーザを認証するための追加の情報片（一時的な認証情報に加えて）として使用することができる。
【００９１】
１つまたは複数の実施形態では、クライアントデバイス３０８は、パブリッククラウドサービス３０２を介してパーソナルクラウドデバイス３１０との安全な接続を生成する（工程３５２）。クライアントデバイス３０８とパーソナルクラウドデバイス３１０との間の接続は、「直接接続」または「トンネル接続」であってもよい。
【００９２】
一実施形態では、パブリッククラウドサービス３０２は、クライアントデバイス３０８とパーソナルクラウドデバイス３１０との間の直接接続の確立を容易にする。クライアントデバイス３０８は、パーソナルクラウドデバイス３１０との直接接続を確立する要求をパブリッククラウドサービス３０２に送信する。パブリッククラウドサービス３０２は、接続を確立するために使用される情報をクライアントデバイス３０８およびパーソナルクラウドデバイス３１０に送信する。
【００９３】
パブリッククラウドサービス３０２から送信される情報は、例えば、パーソナルクラウドデバイス３１０と接続するようにクライアントデバイス３０８を構成するための構成情報を含んでもよい。構成情報は、例えば、パーソナルクラウドデバイス３１０のアドレス、クライアントデバイス３０８との通信に使用されるパーソナルクラウドデバイス３１０のポート、および／またはパーソナルクラウドデバイス３１０によって使用されるプロトコルを含んでもよい。
【００９４】
さらに、パブリッククラウドサービス３０２から送信される情報は、例えば、認証トークンを含んでもよい。パーソナルクラウドデバイス３１０は、パーソナルクラウドデバイス３１０がパブリッククラウドサービス３０２から受信した認証トークンと一致する認証トークンをクライアントデバイス３０８が所有していることを検証することによって、クライアントデバイス３０８を認証することができる。したがって、認証された直接接続が、クライアントデバイス３０８とパーソナルクラウドデバイス３１０との間に確立される。
【００９５】
一実施形態では、パブリッククラウドサービス３０２は、クライアントデバイス３０８とパーソナルクラウドデバイス３１０との間の通信をトンネリングするように機能する。パブリッククラウドサービス３０２は、パーソナルクラウドデバイス３１０との持続的な接続を維持する。（ａ）クライアントデバイス３０８とパブリッククラウドサービス３０２との間の直接接続、および（ｂ）パブリッククラウドサービス３０２とパーソナルクラウドデバイス３１０との間の持続的な接続を使用して、クライアントデバイス３０８からパーソナルクラウドデバイス３１０に通信を送達することができる。
【００９６】
１つまたは複数の実施形態では、クライアントデバイス３０８は、パブリッククラウドアカウントとパーソナルクラウドアカウントとをバインドする要求を送信する（工程３５４）。工程３４８において受信されたパーソナルクラウドデバイス３１０の識別子に基づいて、クライアントデバイス３０８は、バインドの要求の受信者としてパーソナルクラウドデバイス３１０を識別する。バインドの要求は、工程３５２を参照して前述したような、クライアントデバイス３０８とパーソナルクラウドデバイス３１０との間の直接接続またはトンネル接続を使用して送信される。バインドの要求は、工程３４８においてパブリッククラウドサービス３０２から受信されている一時的な認証情報を含む。任意選択的に、バインドの要求は、工程３５０においてユーザインターフェースを介して受信されている、パーソナルクラウドアカウントにログインするための鍵をさらに含む。
【００９７】
１つまたは複数の実施形態では、パーソナルクラウドデバイス３１０は、パブリッククラウドアカウントをパーソナルクラウドアカウントとバインドするための事前承認を検証する（工程３５６）。
【００９８】
パーソナルクラウドデバイス３１０は、パーソナルクラウドデバイス３１０と関連付けられるデータリポジトリに記憶されている事前承認リストを取得する。事前承認リストは、例えば、図１Ｃの事前承認リスト１３０であり得る。パーソナルクラウドデバイス３１０は、事前承認リストに対して検索を実行して、パブリッククラウドアカウントのユーザ名およびパーソナルクラウドアカウントのユーザ名と関連付けられるエントリを見つける。エントリを見つけると、パーソナルクラウドデバイス３１０は、パブリッククラウドアカウントが、パーソナルクラウドデバイス３１０と関連付けられるパーソナルクラウドアカウントとバインドすることを事前承認されていることを検証する。
【００９９】
一実施形態では、クライアントデバイス３０８は、工程３５０においてユーザのパーソナルクラウドアカウントの既存の鍵を受信している。パーソナルクラウドデバイス３１０は、パーソナルクラウドデバイス３１０と関連付けられるデータリポジトリに記憶されたパーソナルクラウドユーザアカウント情報を取得する。記憶されているパーソナルクラウドユーザアカウント情報は、ユーザ名および鍵のペアを含む。記憶されているパーソナルクラウドアカウント情報に基づいて、パーソナルクラウドデバイス３１０は、パーソナルクラウドアカウントの鍵を決定する。パーソナルクラウドデバイス３１０は、パーソナルクラウドアカウントの鍵が、クライアントデバイス３０８から受信された鍵（ユーザ入力として受信された）と一致するか否かを検証する。２つの鍵の間の一致に基づいて、パーソナルクラウドデバイス３１０は、クライアントデバイス３０８から受信された鍵が正しいことを検証する。
【０１００】
一実施形態では、クライアントデバイス３０８は、工程３５０においてユーザのパーソナルクラウドアカウントの新しい鍵を受信している。パーソナルクラウドデバイス３１０は、ユーザが後で鍵を使用してパーソナルクラウドアカウントにログインすることができるように、ユーザのパーソナルクラウドアカウントと関連付けて鍵を記憶する。新しい鍵の記憶に関するさらなる説明は、工程３６６に関して以下に含まれている。
【０１０１】
１つまたは複数の実施形態では、パーソナルクラウドデバイス３１０は、パブリッククラウドサービス３０２に、（ａ）事前承認の検証、および（ｂ）クライアントデバイス３０８から受信されている一時的な認証情報を送信する（工程３５８）。事前承認の検証は、パーソナルクラウドデバイス３１０と関連付けられる事前承認リストが、パーソナルクラウドアカウントとパブリッククラウドアカウントとが互いにバインドすることを承認されていることを示していることを示している。一時的な認証情報は、パーソナルクラウドデバイス３１０が、クライアントデバイス３０８からバインドの要求を受信したか否かを判定するために使用される。
【０１０２】
１つまたは複数の実施形態では、パブリッククラウドサービス３０２は、工程３５８においてパーソナルクラウドデバイス３１０から受信されている一時的な認証情報が、工程３４６においてパブリッククラウドサービス３０２によって生成された一時的な認証情報と一致するか否かを検証する（工程３６０）。一時的な認証情報間の一致を判定することに応答して、パブリッククラウドサービス３０２は、パブリッククラウドアカウントとパーソナルクラウドアカウントとの間のバインドを記憶する（工程３６２）。パブリッククラウドサービスと関連付けられるデータリポジトリ上にパブリッククラウドアカウントとパーソナルクラウドアカウントとの間のバインドを記憶するための例示的なステップは、工程２５４を参照して上記で説明されている。
【０１０３】
１つまたは複数の実施形態では、パブリッククラウドサービス３０２は、バインドの確認をパーソナルクラウドデバイス３１０に送信する（工程３６４）。確認の受信に応答して、パーソナルクラウドデバイス３１０は、パーソナルクラウドアカウントとパブリッククラウドアカウントとの間のバインドを記憶する（工程３６６）。パーソナルクラウドデバイスと関連付けられるデータリポジトリ上にパブリッククラウドアカウントとパーソナルクラウドアカウントとの間のバインドを記憶するための例示的なステップは、工程２１０を参照して上記で説明されている。
【０１０４】
一実施形態では、クライアントデバイス３０８は、工程３５０においてユーザのパーソナルクラウドアカウントの新しい鍵を受信している。パーソナルクラウドデバイス３１０は、ユーザが後で鍵を使用してパーソナルクラウドアカウントにログインすることができるように、ユーザのパーソナルクラウドアカウントと関連付けて鍵を記憶する。一例として、パーソナルクラウドデバイス３１０と関連付けられるデータリポジトリは、ユーザ名および鍵のペアを記憶することができる。バインドプロセスの一部として、パーソナルクラウドデバイス３１０は、パーソナルクラウドアカウントの新しい鍵を受信することができる。パーソナルクラウドデバイス３１０は、ユーザのパーソナルクラウドアカウントのユーザ名と関連付けられる新しい鍵を記憶することができる。
【０１０５】
図３の工程に基づいて、パブリッククラウドアカウントとパーソナルクラウドアカウントとの間のバインドが事前承認リストに基づいて生成される。バインドを生成するための基準は、（ａ）パブリッククラウドユーザアカウントおよびパーソナルクラウドユーザアカウントが、パブリッククラウドサービスに記憶されている事前承認リストに基づいてバインドされることを承認されていることを、パブリッククラウドサービスが判定すること、および（ｂ）パブリッククラウドユーザアカウントおよびパーソナルクラウドユーザアカウントが、パーソナルクラウドデバイスに記憶されている事前承認リストに基づいてバインドされることを承認されていることを、パーソナルクラウドデバイスが判定することを含む。
【０１０６】
クライアントデバイス３０８のユーザは、パーソナルクラウドデバイス３１０と接続するようにクライアントデバイス３０８を構成する必要はない。むしろ、パブリッククラウドサービス３０２は、クライアントデバイス３０８とパーソナルクラウドデバイス３１０との間の直接接続またはトンネル接続の確立を容易にする。さらに、クライアントデバイス３０８のユーザは、パーソナルクラウドアカウントのユーザ名を入力する必要がない。パブリッククラウドアカウントにログインした後、パブリッククラウドサービス３０２は、事前承認リストに対して検索を実行して、パブリッククラウドアカウントがパーソナルクラウドアカウントとバインドすることを事前承認されていることを判定する。これにより、パブリッククラウドサービス３０２は、ユーザがパーソナルクラウドアカウントを指定することなく、パブリッククラウドアカウントとバインドされるパーソナルクラウドアカウントを識別する。
【０１０７】
５．パブリッククラウドユーザアカウントとパーソナルクラウドユーザアカウントとの間のバインドに基づくコンテンツアイテムのエクスポート
図４は、１つまたは複数の実施形態による、２つのアカウント間のバインドに基づいて、パーソナルクラウドユーザアカウントと関連付けられるコンテンツアイテムをパブリッククラウドユーザアカウントにエクスポートするための工程の例示的なセットを示す。図４に示されている１つまたは複数の工程は、ともに変更、再構成、または省略されてもよい。したがって、図４に示される工程の特定のシーケンスは、１つまたは複数の実施形態の範囲を限定するものとして解釈されるべきではない。図４は、コンテンツアイテムのエクスポートの例を示している。パブリッククラウドユーザアカウントとパーソナルクラウドユーザアカウントとの間のバインドに基づいてコンテンツアイテムをエクスポートする追加および／または代替の方法を使用することができる。
【０１０８】
クライアントデバイス４０８は、図１のクライアントデバイス１０８ａ〜ｃのいずれかと同様である。パブリッククラウドサービス４０２は、図１の同様のパブリッククラウドサービス１０２である。パーソナルクラウドデバイス４１０は、図１のパーソナルクラウドデバイス１１０ａ〜ｃのいずれかと同様である。
【０１０９】
１つまたは複数の実施形態では、ユーザが、パーソナルクラウドデバイス４１０と関連付けられるパーソナルクラウドアカウントにログインする（工程４４２）。パーソナルクラウドデバイス４１０のインターフェースが、パーソナルクラウドアカウントのユーザ名（または他の識別子）を要求するプロンプトを提示する。パーソナルクラウドデバイスのインターフェースは、パーソナルクラウドアカウントにログインするための鍵も要求する。インターフェースはユーザ名および鍵を受信する。パーソナルクラウドデバイス４１０は、この情報を検証し、ユーザがパーソナルクラウドアカウントにログインすることを可能にする。
【０１１０】
代替の実施形態では、ユーザは、代替の手段を使用してパーソナルクラウドアカウントにログインすることができる。一例として、ユーザは、クライアントデバイス４０８を使用して、パーソナルクラウドアカウントにログインすることができる。
【０１１１】
１つまたは複数の実施形態では、パーソナルクラウドデバイス４１０は、パーソナルクラウドコンテンツアイテム（フォルダＸなど）をパブリッククラウドアカウントにエクスポートする要求を受信する（工程４４４）。パーソナルクラウドデバイス４１０のインターフェースは、フォルダＸをエクスポートする要求を示すユーザ入力を受信する。
【０１１２】
代替の実施形態では、ユーザは、代替的な手段を使用してコンテンツアイテムをエクスポートする要求を送信することができる。一例として、ユーザは、クライアントデバイス４０８を使用して、パーソナルクラウドコンテンツアイテムをエクスポートする要求を入力および送信することができる。
【０１１３】
１つまたは複数の実施形態では、パーソナルクラウドデバイス４１０は、パーソナルクラウドアカウントと任意のパブリッククラウドアカウントとの間とバインドがあるか否かを判定する（工程４４６）。パーソナルクラウドデバイス４１０は、パーソナルクラウドデバイス４１０と関連付けられるデータリポジトリからバインドリストを取得する。バインドリストは、例えば、図１Ｃのバインドリスト１３２であり得る。パーソナルクラウドデバイス４１０は、パーソナルクラウドアカウントのユーザ名を使用して、バインドリストに対して検索を実行する。パーソナルクラウドデバイス４１０は、パーソナルクラウドアカウントのユーザ名と関連付けられる、バインドリスト内のエントリを見つける。バインドリストのエントリは、（ａ）パーソナルクラウドアカウントのユーザ名、および（ｂ）パブリッククラウドアカウントのユーザ名を含む。上記の情報に基づいて、パーソナルクラウドデバイス４１０は、パーソナルクラウドアカウントがパブリッククラウドアカウントとバインドされていることを判定する。
【０１１４】
１つまたは複数の実施形態では、パーソナルクラウドデバイス４１０は、フォルダＸをパブリッククラウドアカウントにエクスポートする要求を送信する（工程４４８）。要求は、パブリッククラウドサービス４０２に送信される。要求は、パーソナルクラウドアカウントのユーザ名およびパブリッククラウドアカウントのユーザ名を含む。
【０１１５】
１つまたは複数の実施形態では、パブリッククラウドサービス４０２は、パーソナルクラウドアカウントとパブリッククラウドアカウントとの間のバインドを検証する（工程４５０）。パブリッククラウドサービス４０２は、パブリッククラウドサービス４０２と関連付けられるデータリポジトリからバインドリストを取得する。バインドリストは、例えば、図１Ｂのバインドリスト１２２であり得る。パブリッククラウドサービス４０２は、バインドリストに対して検索を実行する。パブリッククラウドサービス４０２は、（ａ）パーソナルクラウドアカウントのユーザ名、および（ｂ）パブリッククラウドアカウントのユーザ名を含む、バインドリスト内のエントリを見つける。パブリッククラウドサービス４０２は、パーソナルクラウドアカウントがパブリッククラウドアカウントとバインドされていることを検証する。
【０１１６】
１つまたは複数の実施形態では、パブリッククラウドサービス４０２は、フォルダＸをエクスポートされるコンテンツアイテムとして分類する（工程４５２）。パブリッククラウドサービス４０２は、パブリッククラウドアカウントとフォルダＸのコンテンツアイテムＩＤとの間の関連付けを記憶する。フォルダＸのコンテンツアイテムＩＤは、パブリッククラウドアカウントと関連付けられる「エクスポートコンテンツアイテムＩＤ」として記憶され得る。パブリッククラウドサービス４０２は、フォルダＸの記憶場所へのポインタ（または他の基準）を記憶することができ、記憶場所は、パーソナルクラウドデバイス４１０と関連付けられるデータリポジトリ内にある。したがって、ユーザがパブリッククラウドアカウントを使用してフォルダＸへのアクセスを要求した場合、パブリッククラウドサービス４０２は、ポインタによって示される記憶場所に基づいてフォルダＸにアクセスすることができる。パブリッククラウドサービス４０２は、パブリッククラウドサービス４０２と関連付けられるデータリポジトリ上にフォルダＸ（およびその内容）の複製コピーを作成することができるが、必ずしもそうする必要はない。
【０１１７】
１つまたは複数の実施形態では、クライアントデバイス４０８は、パブリッククラウドアカウントのエクスポートされるコンテンツアイテムの要求を送信する（工程４５４）。ユーザは、クライアントデバイス４０８を使用してパブリッククラウドアカウントにログインする。ユーザはさらに、パブリッククラウドアカウントのエクスポートされるコンテンツアイテムの要求を送信する。エクスポートされるコンテンツアイテムの要求をユーザから受信することに応答して、クライアントデバイス４０８は、エクスポートされるコンテンツアイテムの要求をパブリッククラウドサービス４０２に送信する。
【０１１８】
１つまたは複数の実施形態では、パブリッククラウドサービス４０２は、フォルダＸを含む、エクスポートされるコンテンツアイテムを識別する情報をクライアントデバイス４０８に送信する（工程４５６）。パブリッククラウドサービス４０２は、エクスポートされるコンテンツアイテムの名前、エクスポートされるコンテンツアイテムのタイプ（例えば、フォルダまたはファイル、拡張子タイプなど）、エクスポートされるコンテンツアイテムのサイズ、エクスポートされるコンテンツアイテムのセキュリティレベル（読み取り専用、書き込み許可、共有許可など）、および／または他の情報を送信することができる。
【０１１９】
１つまたは複数の実施形態では、クライアントデバイス４０８は、フォルダＸを含むエクスポートされるコンテンツアイテムをユーザインターフェース上に表示する（工程４５８）。クライアントデバイス４０８は、エクスポートされるコンテンツアイテムの名前、エクスポートされるコンテンツアイテムのタイプ、エクスポートされるコンテンツアイテムのサイズ、および／またはエクスポートされるコンテンツアイテムのセキュリティレベルなどの、パブリッククラウドサービス４０２から受信される情報を表示することができる。
【０１２０】
エクスポートされるコンテンツアイテムと関連付けられる各アイコンは、エクスポートされるコンテンツアイテムにハイパーリンクすることができる。クライアントデバイス４０８のユーザがアイコンをクリックすると、クライアントデバイス４０８は、エクスポートされるコンテンツアイテムを開くおよび／またはダウンロードする要求をパブリッククラウドサービス４０２に送信する。パブリッククラウドサービス４０２は、エクスポートされるコンテンツアイテムへのポインタを取得する。パブリッククラウドサービス４０２は、ポインタによって示される記憶場所からエクスポートされるコンテンツアイテムを取得し、記憶場所は、パーソナルクラウドデバイス４１０と関連付けられるデータリポジトリ内にある。
【０１２１】
図４の工程に基づいて、パーソナルクラウドアカウントと関連付けられるパーソナルクラウドコンテンツアイテムが、パーソナルクラウドデバイス４１０とパブリッククラウドサービス４０２の両方によるバインドの検証後にのみ、パブリッククラウドアカウントにエクスポートされる。パーソナルクラウドデバイス４１０は、パーソナルクラウドデバイス４１０と関連付けられるデータリポジトリに記憶されたバインドリストに基づいて、パーソナルクラウドアカウントとパブリッククラウドアカウントとの間のバインドを検証する。パブリッククラウドサービス４０２は、パブリッククラウドサービス４０２と関連付けられるデータリポジトリに記憶されたバインドリストに基づいて、パーソナルクラウドアカウントとパブリッククラウドアカウントとの間のバインドを検証する。したがって、パブリッククラウドアカウントとパーソナルクラウドアカウントの間のバインドは、パーソナルクラウドユーザアカウントに関連付けて記憶されているコンテンツアイテムをパブリッククラウドユーザアカウントにエクスポートするための基準である。パーソナルクラウドコンテンツアイテムがパブリッククラウドアカウントにエクスポートされた後、ユーザは、パーソナルクラウドアカウントにログインせずに、パブリッククラウドアカウントを使用してパーソナルクラウドコンテンツアイテムにアクセスすることができる。
【０１２２】
６．パブリッククラウドユーザアカウントとパーソナルクラウドユーザアカウントとの間のバインドに基づくコンテンツアイテムの共有
図５は、１つまたは複数の実施形態による、２つのアカウント間のバインドに基づいて、パーソナルクラウドユーザアカウントと関連付けられるコンテンツアイテムを、パブリッククラウドユーザアカウントを使用して共有するための工程の例示的なセットを示す。図５に示されている１つまたは複数の工程は、ともに変更、再構成、または省略されてもよい。したがって、図５に示される工程の特定のシーケンスは、１つまたは複数の実施形態の範囲を限定するものとして解釈されるべきではない。
【０１２３】
クライアントデバイス５０８は、図１のクライアントデバイス１０８ａ〜ｃのいずれかと同様である。パブリッククラウドサービス５０２は、図１の同様のパブリッククラウドサービス１０２である。パーソナルクラウドデバイス５１０は、図１のパーソナルクラウドデバイス１１０ａ〜ｃのいずれかと同様である。
【０１２４】
１つまたは複数の実施形態では、クライアントデバイス５０８は、パーソナルクラウドデバイス５１０と関連付けられるパーソナルクラウドアカウントにログインする（工程５４２）。クライアントデバイスからパーソナルクラウドアカウントにログインするための例示的なステップは、図２の工程２４４を参照して上記で説明されている。
【０１２５】
１つまたは複数の実施形態では、クライアントデバイス５０８は、パーソナルクラウドコンテンツアイテム（ファイルＹなど）を共有する要求を、パブリッククラウドサービス５０２と関連付けられる受信者パブリッククラウドアカウントに送信する（工程５４４）。クライアントデバイス５０８は、ファイルＹを共有する要求を示すユーザ入力を受信する。ユーザ入力は、ファイルＹを特定のパブリッククラウドアカウント（本明細書においては「受信者パブリッククラウドアカウント」として参照される）と共有することを要求する。ユーザ入力の受信に応答して、クライアントデバイス５０８は、ファイルＹを共有する要求をパーソナルクラウドデバイス５１０に送信する。
【０１２６】
代替の実施形態では、ユーザは、代替的な手段を使用してコンテンツアイテムを共有する要求を送信することができる。一例として、ユーザは、（クライアントデバイス５０８ではなく）パーソナルクラウドデバイスのインターフェースを使用して、パーソナルクラウドコンテンツアイテムを共有する要求を入力および送信することができる。
【０１２７】
１つまたは複数の実施形態では、パーソナルクラウドデバイス５１０は、パーソナルクラウドアカウントと任意のパブリッククラウドアカウントとの間とバインドがあるか否かを判定する（工程５４６）。バインドがあるか否かを判定するための例示的なステップは、図４の工程４４６を参照して上記で説明されている。パーソナルクラウドデバイスと関連付けられるデータリポジトリに記憶されたバインドリストに基づいて、パーソナルクラウドデバイス５１０は、パーソナルクラウドアカウントが特定のパブリッククラウドアカウントとバインドされていることを判定する。
【０１２８】
１つまたは複数の実施形態では、パーソナルクラウドデバイス５１０は、ファイルＹを共有する要求を送信する（工程５４８）。共有の要求は、特定のパブリッククラウドアカウントを使用して、受信者パブリッククラウドアカウントとファイルＹを共有することを指定する。要求は、パブリッククラウドサービス５０２に送信される。
【０１２９】
１つまたは複数の実施形態では、パブリッククラウドサービス５０２は、ファイルＹが特定のパブリッククラウドアカウントにエクスポートされているか否かを判定する（工程５５０）。パブリッククラウドサービス５０２は、特定のパブリッククラウドアカウントを使用してファイルＹを共有する要求を受信する。パブリッククラウドサービス５０２は、特定のパブリッククラウドアカウントと関連付けて記憶されたエクスポートコンテンツアイテムＩＤを取得する。パブリッククラウドサービス５０２は、ファイルＹのコンテンツアイテムＩＤが、特定のパブリッククラウドアカウントと関連付けられるエクスポートコンテンツアイテムＩＤの１つであることを判定する。付加的または代替的に、パブリッククラウドサービス５０２は、ファイルＹが別のコンテンツアイテム（フォルダＸなど）内にあること、および、フォルダＸのコンテンツアイテムＩＤが特定のパブリッククラウドアカウントと関連付けられるエクスポートコンテンツアイテムＩＤの１つであることを判定する。したがって、パブリッククラウドサービス５０２は、ファイルＹが特定のパブリッククラウドアカウントにエクスポートされていることを判定する。
【０１３０】
１つまたは複数の実施形態では、パブリッククラウドサービス５０２は、ファイルＹを受信者パブリッククラウドアカウントにとってアクセス可能にする（工程５６２）。パブリッククラウドサービス５０２は、受信者パブリッククラウドアカウントとファイルＹのコンテンツアイテムＩＤとの間の関連付けを記憶する。ファイルＹのコンテンツアイテムＩＤは、受信者パブリッククラウドアカウントと関連付けられる「共有コンテンツアイテムＩＤ」として記憶され得る。パブリッククラウドサービス５０２は、ファイルＹの記憶場所へのポインタ（または他の基準）を記憶することができ、記憶場所は、パーソナルクラウドデバイス５１０と関連付けられるデータリポジトリ内にある。したがって、ユーザが受信者パブリッククラウドアカウントを使用してファイルＹへのアクセスを要求した場合、パブリッククラウドサービス４０２は、ポインタによって示される記憶場所に基づいてファイルＹにアクセスすることができる。パブリッククラウドサービス５０２は、パブリッククラウドサービス５０２と関連付けられるデータリポジトリ上にファイルＹの複製コピーを作成することができるが、必ずしもそうする必要はない。
【０１３１】
パブリッククラウドサービス５０２は、ファイルＹが特定のパブリッククラウドアカウントから共有されたことを示す通知を、受信者パブリッククラウドアカウントのユーザに提供することができる。パブリッククラウドサービス５０２は、ファイルＹと関連付けられるパーソナルクラウドアカウントのユーザ名を受信者パブリッククラウドアカウントに提供する必要はない。
【０１３２】
受信者パブリッククラウドアカウントのユーザは、クライアントデバイスを使用して受信者パブリッククラウドアカウントにログインすることができる。クライアントデバイスは、受信者パブリッククラウドアカウントと共有されているコンテンツアイテムを示す情報を提示することができる。提示される情報は、ファイルＹが特定のパブリッククラウドアカウントから共有されたことを示す情報を含むことができる。提示される情報は、ファイルＹと関連付けられるパーソナルクラウドアカウントのユーザ名を含む必要はない。
【０１３３】
図５の工程に基づいて、特定のユーザのパーソナルクラウドアカウントと関連付けられるパーソナルクラウドコンテンツアイテムが、特定のユーザ（「発信元ユーザ」としても参照される）のパブリッククラウドユーザアカウントから共有される。パーソナルクラウドコンテンツアイテムは、別のユーザ（「受信者ユーザ」としても参照される）のパブリッククラウドアカウントと共有される。共有は、（ａ）発信元ユーザのパーソナルクラウドアカウントとパブリッククラウドアカウントとがバインドされていることを検証し、（ｂ）パーソナルクラウドコンテンツアイテムが発信元ユーザのパブリッククラウドアカウントにエクスポートされていることを検証した後にのみ実行される。したがって、（ａ）発信元ユーザのパーソナルクラウドアカウントとパブリッククラウドアカウントとの間のバインド、および（ｂ）パーソナルクラウドアカウントからパブリッククラウドアカウントへのコンテンツアイテムのエクスポートは、発信元ユーザのパブリッククラウドユーザアカウントを使用してコンテンツアイテムを共有するための基準である。パーソナルクラウドコンテンツアイテムが受信者ユーザのパブリッククラウドアカウントと共有された後、受信者ユーザは、受信者ユーザのパブリッククラウドアカウントを使用してパーソナルクラウドコンテンツアイテムにアクセスすることができる。受信者ユーザは、発信元ユーザのパーソナルクラウドアカウントを知っている必要はない。
【０１３４】
７．例示的な実施形態
わかりやすくするために、詳細な例を以下に説明する。以下に説明する構成要素および／または工程は、特定の実施形態に適用することができない可能性がある特定の例として理解されるべきである。したがって、以下に説明する構成要素および／または工程は、請求項のいずれかの範囲を限定するものとして解釈されるべきではない。
【０１３５】
一例では、ハイブリッドクラウドサービスには、（ａ）ハイブリッドクラウドサービスプロバイダによって実行されるパブリッククラウドサービス、および（ｂ）様々なユーザが所有するパーソナルクラウドデバイスを含む。ハイブリッドクラウドサービスは、様々なクライアントデバイスによってアクセスされる。
【０１３６】
パーソナルクラウドデバイスＰの管理者および／または所有者は、パーソナルクラウドデバイス上で追加のユーザ、Ｊｏｈｎ  Ｓｍｉｔｈを有効化することを所望する。管理者は、Ｊｏｈｎの識別子ｂｅｓｔｉｅと関連付けられる新しいアカウントの確立に進む。管理者は、パーソナルクラウドデバイスＰにログインする。管理者は、（ａ）ローカルユーザアカウントｂｅｓｔｉｅを作成することを可能にするための、識別子ｊｏｈｎ．ｓｍｉｔｈ＠ｅｘａｍｐｌｅｅｍａｉｌ．ｃｏｍと関連付けられるクラウドユーザアカウントのユーザ、および（ｂ）グローバルアクセスおよび共有を目的として、クラウドユーザアカウントｊｏｈｎ．ｓｍｉｔｈ＠ｅｘａｍｐｌｅｅｍａｉｌ．ｃｏｍとバインドすることを可能にするためのローカルユーザアカウントｂｅｓｔｉｅのユーザを事前承認するためのユーザ入力を入力する。
【０１３７】
上記の要求の結果として、（ａ）クラウドユーザアカウントｊｏｈｎ．ｓｍｉｔｈ＠ｅｘａｍｐｌｅｅｍａｉｌ．ｃｏｍとローカルユーザアカウントｂｅｓｔｉｅとをバインドするための事前承認のレコードが作成され、そのレコードがパーソナルクラウドデバイスＰに記憶され、（ｂ）クラウドユーザアカウントｊｏｈｎ．ｓｍｉｔｈ＠ｅｘａｍｐｌｅｅｍａｉｌ．ｃｏｍと、パーソナルクラウドデバイスＰと関連付けられるローカルユーザアカウントｂｅｓｔｉｅとをバインドするための事前承認のレコードが作成され、そのレコードがパブリッククラウドに記憶される。
【０１３８】
任意選択的に、パブリッククラウド（またはパーソナルクラウドデバイス）により、通知（電子メールなど）がＪｏｈｎに送信される（例えば、クラウドユーザアカウントと関連付けられる電子メールアドレスｊｏｈｎ．ｓｍｉｔｈ＠ｅｘａｍｐｌｅｅｍａｉｌ．ｃｏｍを使用して）。
【０１３９】
通知を受信すると、ＪｏｈｎはＪｏｈｎのクライアントデバイス（スマートフォンまたはラップトップなど）のクライアントアプリケーションを使用して、Ｊｏｈｎのクラウドユーザアカウントｊｏｈｎ．ｓｍｉｔｈ＠ｅｘａｍｐｌｅｅｍａｉｌ．ｃｏｍにログインする。（代替的に、Ｊｏｈｎのクラウドユーザアカウントがまだ作成されていない場合、Ｊｏｈｎはクラウドユーザアカウントを作成してからログインする。）
クライアントアプリケーションは、パブリッククラウドサービスに問い合わせて、Ｊｏｈｎのクラウドユーザアカウントｊｏｈｎ．ｓｍｉｔｈ＠ｅｘａｍｐｌｅｅｍａｉｌ．ｃｏｍと任意のローカルユーザアカウントとの間に事前承認されたバインドがあるか否かを判定する。
【０１４０】
クライアントアプリケーションは、パーソナルクラウドデバイスＰと関連付けられるローカルアカウントアカウントｂｅｓｔｉｅが、クラウドユーザアカウントｊｏｈｎ．ｓｍｉｔｈ＠ｅｘａｍｐｌｅｅｍａｉｌ．ｃｏｍへのバインドを含むローカルユーザアカウントセットアップの完了を待機していることをパブリッククラウドサービスが示している情報を受信する。
【０１４１】
クライアントアプリケーションは、パーソナルクラウドデバイスＰに接続する。パブリッククラウドサービスは、（リレーチャネルまたはピアツーピア接続のいずれかを介して）接続を容易にする。
【０１４２】
クライアントアプリケーションは、一時的な認証情報の保有者がクラウドユーザアカウントｊｏｈｎ．ｓｍｉｔｈ＠ｅｘａｍｐｌｅｅｍａｉｌ．ｃｏｍのアイデンティティを有することを検証する目的で、パブリッククラウドサービスから一時的な認証情報を要求する。
【０１４３】
クライアントアプリケーションは、（上記の確立された接続を介して）パーソナルクラウドデバイスＰに、ローカルユーザアカウントｂｅｓｔｉｅのセットアップを完了する要求を行う。クライアントアプリケーションは、クラウドユーザアカウントｊｏｈｎ．ｓｍｉｔｈ＠ｅｘａｍｐｌｅｅｍａｉｌ．ｃｏｍを使用し、クライアントアプリケーションのアイデンティティの証明として一時的な認証情報をパーソナルクラウドデバイスに送信するものとして自身を識別する。
【０１４４】
パーソナルクラウドデバイスは、パーソナルクラウドデバイス自身のレコードと照合して、ローカルユーザアカウントｂｅｓｔｉｅがセットアップされ、かつクラウドユーザアカウントｊｏｈｎ．ｓｍｉｔｈ＠ｅｘａｍｐｌｅｅｍａｉｌ．ｃｏｍとバインドされることを確認する。パーソナルクラウドデバイスはさらに、クライアントアプリケーションから受信されている一時的な認証情報をパブリッククラウドサービスのレコードと照合してチェックして、一時的な認証情報がクラウドユーザアカウントｊｏｈｎ．ｓｍｉｔｈ＠ｅｘａｍｐｌｅｅｍａｉｌ．ｃｏｍによって所有されていることを検証する。
【０１４５】
一時的な認証情報がクラウドユーザアカウントｊｏｈｎ．ｓｍｉｔｈ＠ｅｘａｍｐｌｅｅｍａｉｌ．ｃｏｍによって所有されていることを検証すると、パーソナルクラウドデバイスは、（ａ）クライアントアプリケーションを介してＪｏｈｎ  Ｓｍｉｔｈが入力するローカルユーザアカウントｂｅｓｔｉｅの新しいパスワード情報を受け入れること、および（ｂ）パブリッククラウドサービスに最終要求を送信して、クラウドユーザアカウントｊｏｈｎ．ｓｍｉｔｈ＠ｅｘａｍｐｌｅｅｍａｉｌ．ｃｏｍがパーソナルクラウドデバイスＰのローカルユーザアカウントｂｅｓｔｉｅとバインドされていることを確認することを実施する。
【０１４６】
次に、パブリッククラウドおよびパーソナルクラウドデバイスＰの各々が、クラウドユーザアカウントｊｏｈｎ．ｓｍｉｔｈ＠ｅｘａｍｐｌｅｅｍａｉｌ．ｃｏｍとパーソナルクラウドデバイスＰのローカルユーザアカウントｂｅｓｔｉｅとの間のバインドを示す情報を記録する。
【０１４７】
任意選択的に、セットアップを完了するための追加の工程を実行することができる。例えば、ローカルユーザアカウントｂｅｓｔｉｅのデフォルトフォルダを、クラウドユーザアカウントｊｏｈｎ．ｓｍｉｔｈ＠ｅｘａｍｐｌｅｅｍａｉｌ．ｃｏｍにエクスポートすることができる。クラウドユーザアカウントｊｏｈｎ．ｓｍｉｔｈ＠ｅｘａｍｐｌｅｅｍａｉｌ．ｃｏｍがローカルユーザアカウントｂｅｓｔｉｅのセットアップおよびバインドのプロセスを完了したことを示す最終通知が、パーソナルクラウドデバイスＰの管理者に送信され得る。
【０１４８】
図６Ａ〜図６Ｃは、１つまたは複数の実施形態による、クライアントデバイス６００と関連付けられる例示的なユーザインターフェースを示す。
【０１４９】
図６Ａを参照すると、クライアントデバイス６００のユーザインターフェース６０２は、パブリッククラウドユーザアカウントｓｋｙｒｉｄｅ３５にログインしているユーザに提示され得る。
【０１５０】
ユーザは、パブリッククラウドサービスを使用するために、パブリッククラウドアカウントｓｋｙｒｉｄｅ３５にログインする。パブリッククラウドサービスは、パブリッククラウドアカウントｓｋｙｒｉｄｅ３５が、特定のパーソナルクラウドデバイスを使用するために、特定のパーソナルクラウドアカウントｄａｄｄｙとバインドすることを事前承認されていることを判定する。パブリッククラウドサービスは、クライアントデバイス６００に、（ａ）パーソナルクラウドアカウントの識別子、および（ｂ）パブリッククラウドサービスによって生成された一時的な認証情報を送信する。パブリッククラウドアカウントへのユーザのログインに基づいて、パブリッククラウドアカウントとパーソナルクラウドアカウントとのバインドは、ユーザがそれ以上関与することなく完了することができる。
【０１５１】
任意選択的に、クライアントデバイス６００は、パーソナルクラウドアカウントの新しい鍵を要求するためのユーザインターフェース６０２を提示する。ユーザインターフェース６０２は、パブリッククラウドアカウント名６０４、ｓｋｙｒｉｄｅ３５を含む。ユーザインターフェース６０２はまた、パーソナルクラウドアカウント名６０６、ｄａｄｄｙも含む。ユーザインターフェース６０２はまた、パーソナルクラウドアカウントｄａｄｄｙの新しい鍵を受信するように構成されたテキストボックス６０８を含む。任意選択的に、クライアントデバイス６００は、新しい鍵をパーソナルクラウドデバイスに送信する（以下に説明する、バインドの要求とともに）。パーソナルクラウドデバイスは、ユーザが後で同じ鍵を使用してパーソナルクラウドアカウントｄａｄｄｙにログインすることができるように、パーソナルクラウドアカウントｄａｄｄｙと関連付けて新しい鍵を記憶する。したがって、ユーザは、パーソナルクラウドアカウントｄａｄｄｙとパブリッククラウドアカウントｓｋｙｒｉｄｅ３５とのバインドプロセスを実行すると同時に、パーソナルクラウドアカウントｄａｄｄｙのパスワードを作成することができる。
【０１５２】
（ａ）パーソナルクラウドアカウントの識別子および（ｂ）一時的な認証情報を受信した後、クライアントデバイス６００は、パーソナルクラウドデバイスとバインドする要求を送信する。バインドの要求は、パブリッククラウドサービスから受信されている一時的な認証情報を含む。パーソナルクラウドデバイスは、パブリッククラウドアカウントｓｋｙｒｉｄｅ３５とパーソナルクラウドアカウントｄａｄｄｙとがバインドについて事前承認されていることを検証する。パーソナルクラウドデバイスは、パブリッククラウドサービスに、（ａ）事前承認の検証、および（ｂ）クライアントデバイス６００から受信されている一時的な認証情報を送信する。
【０１５３】
パブリッククラウドサービスは、パーソナルクラウドデバイスから受信されている一時的な認証情報が正しいことを検証する。検証されると、パブリッククラウドサービスは、パブリッククラウドアカウントｓｋｙｒｉｄｅ３５とパーソナルクラウドアカウントｄａｄｄｙとの間のバインドを記憶する。パブリッククラウドサービスは、確認をパーソナルクラウドデバイスに送信する。パーソナルクラウドデバイスは、パブリッククラウドアカウントｓｋｙｒｉｄｅ３５とパーソナルクラウドアカウントｄａｄｄｙとの間のバインドを記憶する。したがって、パブリッククラウドサービスおよびパーソナルクラウドデバイスの各々は、パブリッククラウドアカウントｓｋｙｒｉｄｅ３５とパーソナルクラウドアカウントｄａｄｄｙとの間のバインドを示す情報を記憶する。
【０１５４】
図６Ｂを参照すると、クライアントデバイス６００のユーザインターフェース６１０が、パブリッククラウドユーザアカウントｓｋｙｒｉｄｅ３５と関連付けられるエクスポートファイルを示すように提示されている。
【０１５５】
ユーザインターフェース６１０は、パブリッククラウドアカウント名６１２、ｓｋｙｒｉｄｅ３５を含む。ユーザインターフェース６１０はまた、ファイルディレクトリに配置されたコンテンツアイテムも示す。１つのディレクトリは、「エクスポートされているが共有されていない」とラベル付けされる。別のディレクトリは「エクスポートおよび共有されている」とラベル付けされる。
【０１５６】
「エクスポートされているが共有されていない」の下には、パーソナルクラウドアカウントからパブリッククラウドアカウントｓｋｙｒｉｄｅ３５にエクスポートされたファイルがある。エクスポートされるファイルは、納税申告ファイル、医療レポートファイル、およびホテル確認ファイルを含む。エクスポートされるファイルは、１つまたは複数のパーソナルクラウドデバイスに記憶される。エクスポートされるファイルには、パブリッククラウドアカウントｓｋｙｒｉｄｅ３５を使用してアクセスすることができる。
【０１５７】
「エクスポートおよび共有されている」の下には、「ｊｏｅｊｏｅ３」および「ｍａｒｙｓｍｉｔｈ」の２つのサブディレクトリがある。「ｊｏｅｊｏｅ３」の下には、パブリッククラウドユーザアカウントｊｏｅｊｏｅ３と共有されているファイルがある。共有ファイルは家族写真ファイルを含む。「ｍａｒｙｓｍｉｔｈ」の下には、パブリッククラウドユーザアカウントｍａｒｙｓｍｉｔｈと共有されているファイルがある。共有ファイルは、旅程ファイルを含む。ファイルは、パブリッククラウドアカウントｓｋｙｒｉｄｅ３５を使用して共有される。
【０１５８】
パブリッククラウドアカウントｓｋｙｒｉｄｅ３５のユーザが、パブリッククラウドアカウントｍａｒｙｓｍｉｔｈのユーザとの旅行を計画している。パブリッククラウドアカウントｓｋｙｒｉｄｅ３５のユーザは、すでに旅程ファイルをｍａｒｙｓｍｉｔｈと共有している。パブリッククラウドアカウントｓｋｙｒｉｄｅ３５のユーザは、今や、ホテル確認ファイルをｍａｒｙｓｍｉｔｈと共有するように要求する。
【０１５９】
ユーザは、パーソナルクラウドデバイスを使用するために、ユーザのパーソナルクラウドアカウントｈｏｎｅｙにログインする。ユーザは、ホテル確認ファイルをｍａｒｙｓｍｉｔｈと共有する要求をパーソナルクラウドデバイスに送信する。パーソナルクラウドデバイスは、ホテル確認ファイルがｈｏｎｅｙと関連付けてパーソナルクラウドデバイスに記憶されていることを判定する。パーソナルクラウドデバイスは、パーソナルクラウドアカウントｈｏｎｅｙがパブリッククラウドアカウントｓｋｙｒｉｄｅ３５とバインドされていることを判定する。パーソナルクラウドデバイスは、ｓｋｙｒｉｄｅ３５を使用してホテル確認ファイルをｍａｒｙｓｍｉｔｈと共有する要求を送信する。要求はパブリッククラウドサービスに送信される。
【０１６０】
パブリッククラウドサービスは、ホテル確認ファイルがｓｋｙｒｉｄｅ３５のエクスポートファイルであることを判定する。パブリッククラウドサービスにより、ホテル確認ファイルがｍａｒｙｓｍｉｔｈにとってアクセス可能にされる。ｍａｒｙｓｍｉｔｈのユーザは、ホテル確認ファイルがｈｏｎｅｙではなくｓｋｙｒｉｄｅ３５から共有されていることを確認する。
【０１６１】
図６Ｂを参照すると、クライアントデバイス６００のユーザインターフェース６１０が、パブリッククラウドユーザアカウントｓｋｙｒｉｄｅ３５と関連付けられるエクスポートファイルを示すように提示されている。ユーザインターフェース６１４は、パブリッククラウドアカウント名６１６、ｓｋｙｒｉｄｅ３５を含む。ｓｋｙｒｉｄｅ３５のユーザがホテル確認ファイルの共有を要求した後、ホテル確認ファイルがここで「エクスポートおよび共有されている」の下の「ｍａｒｙｓｍｉｔｈ」の下に現れる。パブリッククラウドアカウント名６１６およびユーザインターフェース６１４によって提示される他の情報に基づいて、ユーザインターフェース６１４は、ホテル確認ファイルがパブリッククラウドアカウントｓｋｙｒｉｄｅ３５を使用してｍａｒｙｓｍｉｔｈと共有されたことを示す。
【０１６２】
８．コンピュータネットワークおよびクラウドネットワーク
１つまたは複数の実施形態では、コンピュータネットワークは、ノードのセット間の接続を提供する。ノードは、互いにローカルおよび／またはリモートである可能性がある。ノードはリンクのセットによって接続されている。リンクの例は、同軸ケーブル、シールドなしツイストケーブル、銅ケーブル、光ファイバ、および仮想リンクを含む。
【０１６３】
ノードのサブセットが、コンピュータネットワークを実装する。このようなノードの例は、スイッチ、ルータ、ファイアウォール、およびネットワークアドレス変換器（ＮＡＴ）を含む。ノードの別のサブセットは、コンピュータネットワークを使用する。このようなノード（「ホスト」としても参照される）は、クライアントプロセスおよび／またはサーバプロセスを実行することができる。クライアントプロセスは、コンピューティングサービス（特定のアプリケーションの実行、および／または特定の量のデータの記憶など）を要求する。サーバプロセスは、要求されたサービスを実行すること、および／または、対応するデータを返すことによって応答する。
【０１６４】
コンピュータネットワークは、物理リンクによって接続された物理ノードを含む物理ネットワークであり得る。物理ノードは任意のデジタルデバイスである。物理ノードは、ハードウェアスイッチ、ハードウェアルータ、ハードウェアファイアウォール、ハードウェアＮＡＴなどの機能固有のハードウェアデバイスであり得る。付加的にまたは代替的に、物理ノードは、それぞれの機能を実行する様々な仮想マシンおよび／またはアプリケーションを実行するように構成された汎用マシンであり得る。物理リンクは、２つ以上の物理ノードを接続する物理媒体である。リンクの例は、同軸ケーブル、シールドなしツイストケーブル、銅ケーブル、および光ファイバを含む。
【０１６５】
コンピュータネットワークは、オーバーレイネットワークであり得る。オーバーレイネットワークは、別のネットワーク（物理ネットワークなど）の上に実装された論理ネットワークである。オーバーレイネットワークの各ノードは、基盤となるネットワークのそれぞれのノードに対応する。したがって、オーバーレイネットワーク内の各ノードは、オーバーレイアドレス（オーバーレイノードにアドレス指定するため）とアンダーレイアドレス（オーバーレイノードを実装するアンダーレイノードにアドレス指定するため）の両方に関連付けられる。オーバーレイノードは、デジタルデバイスおよび／またはソフトウェアプロセス（仮想マシン、アプリケーションインスタンス、またはスレッドなど）であってもよい。オーバーレイノードを接続するリンクは、基礎となるネットワークを通るトンネルとして実装される。トンネルの両端にあるオーバーレイノードは、それらの間の基礎となるマルチホップパスを単一の論理リンクとして扱う。トンネリングは、カプセル化およびカプセル化解除によって実行される。
【０１６６】
一実施形態では、クライアントは、コンピュータネットワークに対してローカルおよび／またはリモートであり得る。クライアントは、プライベートネットワークまたはインターネットなどの他のコンピュータネットワークを介してコンピュータネットワークにアクセスすることができる。クライアントは、ハイパーテキスト転送プロトコル（ＨＴＴＰ）などの通信プロトコルを使用してコンピュータネットワークに要求を通信することができる。要求は、クライアントインターフェース（ウェブブラウザなど）、プログラムインターフェース、またはアプリケーションプログラミングインターフェース（ＡＰＩ）などのインターフェースを介して通信される。
【０１６７】
一実施形態では、コンピュータネットワークは、クライアントとネットワークリソースとの間の接続を提供する。ネットワークリソースは、サーバプロセスを実行するように構成されたハードウェアおよび／またはソフトウェアを含む。ネットワークリソースの例は、プロセッサ、データストレージ、仮想マシン、コンテナ、および／またはソフトウェアアプリケーションを含む。ネットワークリソースは、複数のクライアント間で共有される。クライアントは、互いに独立してコンピュータネットワークにコンピューティングサービスを要求する。ネットワークリソースは、オンデマンドで要求および／またはクライアントに動的に割り当てられる。各要求および／またはクライアントに割り当てられるネットワークリソースは、例えば、（ａ）特定のクライアントによって要求されるコンピューティングサービス、（ｂ）特定のテナントによって要求される集約コンピューティングサービス、および／または（ｃ）コンピュータネットワークの要求されている集約コンピューティングサービスに基づいてスケールアップまたはダウンされ得る。このようなコンピュータネットワークは、「クラウドネットワーク」として参照される場合がある。
【０１６８】
一実施形態では、サービスプロバイダは、１人または複数のエンドユーザにクラウドネットワークを提供する。限定ではないがサービス型ソフトウェア（ＳａａＳ）、サービス型プラットフォーム（ＰａａＳ）、およびサービス型インフラストラクチャ（ＩａａＳ）を含む、様々なサービスモデルをクラウドネットワークによって実装することができる。ＳａａＳでは、サービスプロバイダは、ネットワークリソース上で実行されているサービスプロバイダのアプリケーションを使用する能力をエンドユーザに提供する。ＰａａＳでは、サービスプロバイダは、カスタムアプリケーションをネットワークリソースに展開する能力をエンドユーザに提供する。カスタムアプリケーションは、サービスプロバイダがサポートするプログラミング言語、ライブラリ、サービス、およびツールを使用して作成することができる。ＩａａＳでは、サービスプロバイダは、ネットワークリソースによって提供される処理、ストレージ、ネットワーク、および他の基本的なコンピューティングリソースを提供する能力をエンドユーザに提供する。オペレーティングシステムを含む任意のアプリケーションをネットワークリソース上で展開することができる。
【０１６９】
一実施形態では、限定ではないが、プライベートクラウド、パブリッククラウド、およびハイブリッドクラウドを含む、コンピュータネットワークによって様々な展開モデルを実装することができる。プライベートクラウドでは、ネットワークリソースは、１つまたは複数のエンティティの特定のグループによる排他的使用のために提供される（本明細書において使用される「エンティティ」という用語は、企業、組織、個人、または他のエンティティを指す）。ネットワークリソースは、特定のエンティティグループの施設に対してローカルおよび／またはリモートである可能性がある。パブリッククラウドでは、クラウドリソースは、互いに独立している複数のエンティティ（「テナント」または「顧客」としても参照される）に提供される。コンピュータネットワークおよびそのネットワークリソースは、異なるテナントに対応するクライアントによってアクセスされる。このようなコンピュータネットワークは、「マルチテナントコンピュータネットワーク」として参照される場合がある。複数のテナントが、同じ特定のネットワークリソースを異なる時間に、および／または同時に使用する場合がある。ネットワークリソースは、テナントの施設に対してローカルおよび／またはリモートであってもよい。ハイブリッドクラウドでは、コンピュータネットワークはプライベートクラウドおよびパブリッククラウドを含む。プライベートクラウドとパブリッククラウドとの間のインターフェースにより、データおよびアプリケーションの移植性が可能になる。プライベートクラウドに記憶されているデータとパブリッククラウドに記憶されているデータとは、インターフェースを介して交換することができる。プライベートクラウドにおいて実装されているアプリケーションとパブリッククラウドにおいて実装されているアプリケーションは、相互に依存し得る。プライベートクラウドのアプリケーションからパブリッククラウドのアプリケーションへの呼び出し（およびその逆）は、インターフェースを介して実行することができる。
【０１７０】
一実施形態では、マルチテナントコンピュータネットワークのテナントは、互いに独立している。例えば、あるテナントの事業または運営は、別のテナントの事業または運営とは別個であり得る。異なるテナントは、コンピュータネットワークに異なるネットワーク要件を要求し得る。ネットワーク要件の例は、処理速度、データストレージの量、セキュリティ要件、パフォーマンス要件、スループット要件、遅延要件、回復力要件、サービス品質（ＱｏＳ）要件、テナント分離、および／または一貫性を含む。同じコンピュータネットワークが、異なるテナントによって要求される異なるネットワーク要件を実装する必要がある場合がある。
【０１７１】
１つまたは複数の実施形態では、マルチテナントコンピュータネットワークにおいて、異なるテナントのアプリケーションおよび／またはデータが互いに共有されないことを保証するために、テナント分離が実装される。様々なテナント分離アプローチを使用することができる。
【０１７２】
一実施形態では、各テナントは、テナントＩＤと関連付けられる。マルチテナントコンピュータネットワークの各ネットワークリソースは、テナントＩＤをタグ付けされている。テナントおよび特定のネットワークリソースが同じテナントＩＤと関連付けられる場合にのみ、テナントは特定のネットワークリソースへのアクセスを許可される。
【０１７３】
一実施形態では、各テナントは、テナントＩＤと関連付けられる。コンピュータネットワークによって実装される各アプリケーションは、テナントＩＤによってタグ付けされる。付加的または代替的に、コンピュータネットワークによって記憶された各データ構造および／またはデータセットは、テナントＩＤによってタグ付けされる。テナントおよび特定のアプリケーション、データ構造、および／またはデータセットが同じテナントＩＤと関連付けられる場合にのみ、テナントは特定のアプリケーション、データ構造、および／またはデータセットへのアクセスを許可される。
【０１７４】
一例として、マルチテナントコンピュータネットワークによって実装される各データベースは、テナントＩＤによってタグ付けされ得る。対応するテナントＩＤと関連付けられるテナントのみが、特定のデータベースのデータにアクセスすることができる。別の例として、マルチテナントコンピュータネットワークによって実装されるデータベース内の各エントリは、テナントＩＤによってタグ付けされ得る。対応するテナントＩＤと関連付けられるテナントのみが、特定のエントリのデータにアクセスすることができる。ただし、データベースは複数のテナントによって共有される場合がある。
【０１７５】
一実施形態では、サブスクリプションリストが、いずれのテナントがいずれのアプリケーションにアクセスする権限を有するかを示す。アプリケーションごとに、アプリケーションへのアクセスを許可されたテナントのテナントＩＤのリストが記憶される。テナントのテナントＩＤが特定のアプリケーションに対応するサブスクリプションリストに含まれている場合にのみ、テナントは特定のアプリケーションへのアクセスを許可される。
【０１７６】
一実施形態では、異なるテナントに対応するネットワークリソース（デジタルデバイス、仮想マシン、アプリケーションインスタンス、およびスレッドなど）は、マルチテナントコンピュータネットワークによって維持されるテナント固有のオーバーレイネットワークに対して分離される。例として、テナントオーバーレイネットワーク内の任意のソースデバイスからのパケットは、同じテナントオーバーレイネットワーク内の他のデバイスにのみ送信することができる。カプセル化トンネルが、テナントオーバーレイネットワーク上のソースデバイスから他のテナントオーバーレイネットワーク内のデバイスへの送信を禁止するために使用される。具体的には、ソースデバイスから受信されているパケットは、外側パケット内にカプセル化される。外側パケットは、第１のカプセル化トンネルエンドポイント（テナントオーバーレイネットワーク内のソースデバイスと通信する）から第２のカプセル化トンネルエンドポイント（テナントオーバーレイネットワーク内の宛先デバイスと通信する）に送信される。第２のカプセル化トンネルエンドポイントは、外側パケットのカプセル化を解除して、ソースデバイスによって送信された元のパケットを取得する。元のパケットは、第２のカプセル化トンネルエンドポイントから同じ特定のオーバーレイネットワーク内の宛先デバイスに送信される。
【０１７７】
９．ハードウェアの概説
１つの実施形態によれば、本明細書に記載の技法は、１つまたは複数の専用コンピューティングデバイスによって実装される。専用コンピューティングデバイスは、当該技法を実行するために配線接続されてもよく、または、当該技法を実行するように永続的にプログラムされている１つまたは複数の特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、またはネットワーク処理ユニット（ＮＰＵ）などのデジタル電子デバイスを含んでもよく、または、ファームウェア、メモリ、他のストレージ、またはそれらの組み合わせにおいてプログラム命令に従って当該技法を実行するようにプログラムされた１つまたは複数の汎用ハードウェアプロセッサを含んでもよい。このような専用コンピューティングデバイスは、カスタム配線接続論理、ＡＳＩＣ、ＦＰＧＡ、またはＮＰＵをカスタムプログラミングと組み合わせて、本技法を実現することもできる。専用コンピューティングデバイスは、デスクトップコンピュータシステム、ポータブルコンピュータシステム、ハンドヘルドデバイス、ネットワーキングデバイス、または本技法を実装するための配線接続および／またはプログラムロジックを組み込んだ任意の他のデバイスであってもよい。
【０１７８】
例えば、図７は、本発明の実施形態を実装することができるコンピュータシステム７００を示すブロック図である。コンピュータシステム７００は、情報を通信するためのバス７０２または他の通信メカニズムと、情報を処理するためにバス７０２と結合されたハードウェアプロセッサ７０４とを含む。ハードウェアプロセッサ７０４は、例えば、汎用マイクロプロセッサであってもよい。
【０１７９】
コンピュータシステム７００はまた、プロセッサ７０４によって実行される情報および命令を記憶するためにバス７０２と結合された、ランダムアクセスメモリ（ＲＡＭ）または他の動的記憶装置などのメインメモリ７０６を含む。メインメモリ７０６はまた、プロセッサ７０４によって実行される命令の実行中に一時変数または他の中間情報を記憶するために使用され得る。そのような命令は、プロセッサ７０４にとってアクセス可能な非一時的な記憶媒体に記憶されると、コンピュータシステム７００を、命令において指定される工程を実行するようにカスタマイズされた専用マシンにレンダリングする。
【０１８０】
コンピュータシステム７００は、プロセッサ７０４のための静的情報および命令を記憶するためにバス７０２と結合された読み出し専用メモリ（ＲＯＭ）７０８または他の静的記憶装置をさらに含む。磁気ディスクまたは光ディスクなどの記憶装置７１０が提供され、情報および命令を記憶するためにバス７０２と結合される。
【０１８１】
コンピュータシステム７００は、コンピュータユーザに情報を表示するために、バス７０２を介して、陰極線管（ＣＲＴ）などのディスプレイ７１２と結合され得る。英数字および他の鍵を含む入力デバイス７１４が、情報およびコマンド選択をプロセッサ７０４に通信するためにバス７０２と結合される。別のタイプのユーザ入力デバイスは、方向情報およびコマンド選択をプロセッサ７０４に伝達し、ディスプレイ７１２上のカーソル移動を制御するための、マウス、トラックボール、またはカーソル方向キーなどのカーソル制御手段７１６である。この入力デバイスは、通常、デバイスが平面内の位置を指定することを可能にする、第１の軸（ｘなど）および第２の軸（ｙなど）の２つの軸内の２自由度を有する。
【０１８２】
コンピュータシステム７００は、カスタマイズされた配線接続論理、１つまたは複数のＡＳＩＣまたはＦＰＧＡ、ファームウェアおよび／またはプログラム論理を使用して本明細書に記載の技術を実装することができ、これらはコンピュータシステムと組み合わせてコンピュータシステム７００を専用マシンにするかまたはそのようにプログラムする。１つの実施形態によれば、本明細書の技法は、プロセッサ７０４が、メインメモリ７０６に含まれる１つまたは複数の命令の１つまたは複数のシーケンスを実行するのに応答して、コンピュータシステム７００によって実行される。そのような命令は、記憶装置７１０などの別の記憶媒体からメインメモリ７０６に読み出すことができる。メインメモリ７０６に含まれる命令のシーケンスの実行により、プロセッサ７０４は、本明細書に記載のプロセスステップを実行する。代替の実施形態では、配線接続回路を、ソフトウェア命令の代わりに、またはソフトウェア命令と組み合わせて使用することができる。
【０１８３】
本明細書において使用される「記憶媒体」という用語は、機械を特定の方法で動作させるデータおよび／または命令を記憶する任意の非一時的媒体を指す。そのような記憶媒体は、不揮発性媒体および／または揮発性媒体を含み得る。不揮発性媒体は、例えば、記憶装置７１０などの光ディスクまたは磁気ディスクを含む。揮発性媒体は、メインメモリ７０６などの動的メモリを含む。記憶媒体の一般的な形態は、例えば、フロッピーディスク、フレキシブルディスク、ハードディスク、ソリッドステートドライブ、磁気テープ、または他の任意の磁気データ記憶媒体、ＣＤ−ＲＯＭ、他の任意の光学データ記憶媒体、穴のパターンを有する任意の物理媒体、ＲＡＭ、ＰＲＯＭ、およびＥＰＲＯＭ、ＦＬＡＳＨ（登録商標）−ＥＰＲＯＭ、ＮＶＲＡＭ、任意の他のメモリチップまたはカートリッジ、連想メモリ（ＣＡＭ）、および三値連想メモリ（ＴＣＡＭ）を含む。
【０１８４】
記憶媒体は、伝送媒体とは異なるが、伝送媒体と組み合わせて使用されてもよい。伝送媒体は、記憶媒体間の情報転送に参加する。例えば、伝送媒体は、バス７０２を含むワイヤを含む、同軸ケーブル、銅線、および光ファイバを含む。伝送媒体は、無線波および赤外線データ通信中に生成されるものなど、音響波または光波の形をとることもできる。
【０１８５】
様々な形態の媒体が、実行のためのプロセッサ７０４への１つまたは複数の命令の１つまたは複数のシーケンスの搬送に関与し得る。例えば、命令は、最初は、リモートコンピュータの磁気ディスクまたはソリッドステートドライブ上で実行され得る。リモートコンピュータは、命令を動的メモリにロードし、モデムを使用して電話回線を介して命令を送信することができる。コンピュータシステム７００にローカルなモデムが、電話回線上でデータを受信し、赤外線送信機を使用してデータを赤外線信号に変換することができる。赤外線検出器が、赤外線信号内で搬送されるデータを受信することができ、適切な回路が、データをバス７０２上に配置することができる。バス７０２は、データをメインメモリ７０６に搬送し、そこからプロセッサ７０４が命令を取り出して実行する。メインメモリ７０６によって受信された命令は、任意選択的に、プロセッサ７０４による実行の前または後のいずれかで、記憶装置７１０に記憶されてもよい。
【０１８６】
コンピュータシステム７００はまた、バス７０２と結合された通信インターフェース７１８を含む。通信インターフェース７１８は、ローカルネットワーク７２２に接続されているネットワークリンク７２０と結合する双方向データ通信を提供する。例えば、通信インターフェース７１８は、総合デジタル通信網（ＩＳＤＮ）カード、ケーブルモデム、衛星モデム、または対応するタイプの電話回線へのデータ通信接続を提供するためのモデムであってもよい。別の例として、通信インターフェース７１８は、互換性のあるＬＡＮへのデータ通信接続を提供するためのローカルエリアネットワーク（ＬＡＮ）カードであってもよい。無線リンクも実装することができる。そのような任意の実施態様において、通信インターフェース７１８は、様々なタイプの情報を表すデジタルデータストリームを搬送する電気信号、電磁気信号、または光信号を送受信する。
【０１８７】
ネットワークリンク７２０は、通常、１つまたは複数のネットワークを介して他のデータデバイスへのデータ通信を提供する。例えば、ネットワークリンク７２０は、ローカルネットワーク７２２を介して、ホストコンピュータ７２４またはインターネットサービスプロバイダ（ＩＳＰ）７２６によって操作されるデータ機器への接続を提供することができる。次に、ＩＳＰ７２６は、現在一般に「インターネット」７２８として参照されている世界規模のパケットデータ通信ネットワークを介してデータ通信サービスを提供する。ローカルネットワーク７２２およびインターネット７２８は両方とも、デジタルデータストリームを搬送する電気信号、電磁気信号、または光信号を使用する。様々なネットワークを介した信号、および、ネットワークリンク７２０上の、コンピュータシステム７００との間でデジタルデータを搬送する通信インターフェース７１８を介した信号は、伝送媒体の例示的な形態である。
【０１８８】
コンピュータシステム７００は、ネットワーク、ネットワークリンク７２０、および通信インターフェース７１８を介して、メッセージを送信し、プログラムコードを含むデータを受信することができる。インターネットの例では、サーバ７３０が、インターネット７２８、ＩＳＰ７２６、ローカルネットワーク７２２、および通信インターフェース７１８を介して、アプリケーションプログラムの要求されるコードを送信することができる。
【０１８９】
受信されたコードは、受信時にプロセッサ７０４によって実行され、および／または後で実行するために記憶装置７１０または他の不揮発性記憶装置に記憶され得る。
【０１９０】
１０．その他、拡張機能
実施形態は、ハードウェアプロセッサを含み、本明細書に記載されたおよび／または添付の請求項のいずれかに記載された工程のいずれかを実行するように構成された１つまたは複数のデバイスを備えたシステムを対象とする。
【０１９１】
一実施形態では、非一時的コンピュータ可読記憶媒体は、１つまたは複数のハードウェアプロセッサによって実行されると、本明細書に記載および／または請求項のいずれかに記載の工程のいずれかを実行させる命令を含む。
【０１９２】
本明細書に記載の特徴および機能の任意の組み合わせを、１つまたは複数の実施形態に従って使用することができる。前述の明細書では、実施形態は、実施態様ごとに異なる可能性がある多数の特定の詳細を参照して説明されてきた。したがって、本明細書および図面は、限定的な意味ではなく例示的な意味において考察されるべきである。本発明の範囲の唯一かつ排他的な指標、および出願人が発明の範囲とすることを意図しているものは、任意の後続の補正を含む、特定の形式における、本出願から発行する特許請求の範囲の文字通りの同等の範囲である。
【図１Ａ】
2021536620.tif 000004
【図１Ｂ】
2021536620.tif 000005
【図１Ｃ】
2021536620.tif 000006
【図２】
2021536620.tif 000007
【図３】
2021536620.tif 000008
【図４】
2021536620.tif 000009
【図５】
2021536620.tif 000010
【図６Ａ】
2021536620.tif 000011
【図６Ｂ】
2021536620.tif 000012
【図６Ｃ】
2021536620.tif 000013
【図７】
2021536620.tif 000014
【手続補正書】
【提出日】令和3年5月6日(2021.5.6)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
命令を記憶する１つまたは複数の非一時的機械可読媒体であって、前記命令は１つまたは複数のプロセッサによって実行されると、
パブリッククラウドサービスを使用するためのユーザのパブリッククラウドユーザアカウントを識別することと、
パブリッククラウドサービスからのアプリケーションによって、パーソナルクラウドデバイスを使用するために前記ユーザの（ａ）前記パブリッククラウドユーザアカウントと（ｂ）パーソナルクラウドユーザアカウントとをバインドするための事前承認を示す情報を取得することと、
前記アプリケーションによって、前記パーソナルクラウドデバイスに、前記パブリッククラウドユーザアカウントと前記パーソナルクラウドユーザアカウントとをバインドする要求を送信することとを行わせる命令を有し、前記バインドの要求は、前記パブリッククラウドユーザアカウントと関連付けられる識別子を含み、前記命令はさらに、
前記アプリケーションによって、前記バインドの要求に応答して、前記パブリッククラウドユーザアカウントと前記パーソナルクラウドユーザアカウントの間のバインドが生成されたことを示す確認を取得することとを行わせる命令を有し、
前記バインドは、前記パブリッククラウドサービスを使用するために、前記パブリッククラウドユーザアカウントから第２のユーザの第２のパブリッククラウドユーザアカウントに、（ａ）前記パーソナルクラウドデバイスに記憶され、（ｂ）前記パーソナルクラウドユーザアカウントと関連付けられる、データを共有するための基準である、１つまたは複数の非一時的機械可読媒体。
【請求項２】
前記１つまたは複数のプロセッサによって実行されると、
前記パブリッククラウドユーザアカウントと前記パーソナルクラウドユーザアカウントとをバインドするための前記事前承認を示す前記情報の取得に応答して、前記アプリケーションによって、前記パーソナルクラウドユーザアカウントと関連付けられるユーザ名を提示することを行わせる命令をさらに記憶する、請求項１に記載の１つまたは複数の媒体。
【請求項３】
前記パブリッククラウドサービスから前記アプリケーションによって取得され、前記パブリッククラウドユーザアカウントと前記パーソナルクラウドユーザアカウントとをバインドするための前記事前承認を示す前記情報が、前記パブリッククラウドサービスと関連付けられるデータリポジトリに記憶される事前承認リストに基づいて決定される、請求項１に記載の１つまたは複数の媒体。
【請求項４】
（ａ）前記パブリッククラウドユーザアカウントおよび前記パーソナルクラウドユーザアカウントが、前記パブリッククラウドサービスに記憶されている第１の事前承認リストに基づいてバインドされることを承認されていることを、前記パブリッククラウドサービスが判定すること、および（ｂ）前記パブリッククラウドユーザアカウントおよび前記パーソナルクラウドユーザアカウントが、前記パーソナルクラウドデバイスに記憶されている第２の事前承認リストに基づいてバインドされることを承認されていることを、前記パーソナルクラウドデバイスが判定することが、前記パブリッククラウドユーザアカウントと前記パーソナルクラウドユーザアカウントとの間の前記バインドを生成するための基準である、請求項１に記載の１つまたは複数の媒体。
【請求項５】
前記パブリッククラウドユーザアカウントと前記パーソナルクラウドユーザアカウントとの間の前記バインドの生成は、
前記パブリッククラウドサービスと関連付けられる第１のデータリポジトリ上に、前記パブリッククラウドユーザアカウントと前記パーソナルクラウドユーザアカウントとの間の前記バインドを示す第１の情報セットを記憶することと、
前記パーソナルクラウドデバイスと関連付けられる第２のデータリポジトリ上に、前記パブリッククラウドユーザアカウントと前記パーソナルクラウドユーザアカウントとの間の前記バインドを示す第２の情報セットを記憶することとを含む、請求項１に記載の１つまたは複数の媒体。
【請求項６】
前記１つまたは複数のプロセッサによって実行されると、
前記アプリケーションによって、前記パーソナルクラウドユーザアカウントに対応する新しい鍵の要求を提示することと、
前記アプリケーションによって、前記パーソナルクラウドユーザアカウントに対応する前記新しい鍵を受信することと、
前記アプリケーションによって前記パーソナルクラウドデバイスに、前記新しい鍵を送信することとを行わせる命令をさらに記憶し、
前記パーソナルクラウドデバイスは、前記パーソナルクラウドユーザアカウントにログインするための検証情報として前記新しい鍵を記憶する、請求項１に記載の１つまたは複数の媒体。
【請求項７】
前記バインドは、（ａ）前記パーソナルクラウドユーザアカウントと関連付けて記憶され、（ｂ）前記パーソナルクラウドデバイスに記憶される、前記パブリッククラウドユーザアカウントにデータをエクスポートするためのさらなる基準である、請求項１に記載の１つまたは複数の媒体。
【請求項８】
命令を記憶する１つまたは複数の非一時的機械可読媒体であって、前記命令は１つまたは複数のプロセッサによって実行されると、
パブリッククラウドサービスを使用するためのユーザのパブリッククラウドユーザアカウントを識別することと、
前記パブリッククラウドユーザアカウントが、パーソナルクラウドデバイスを使用するための前記ユーザのパーソナルクラウドユーザアカウントとバインドすることを事前承認されていることを判定することと、
第１の認証情報を生成することと、
（ａ）前記パブリッククラウドユーザアカウントが、前記パーソナルクラウドユーザアカウントとバインドすることを事前承認されていることを示す情報、および（ｂ）前記第１の認証情報を、クライアントデバイスに送信することと、
（ａ）前記パブリッククラウドユーザアカウントが、前記パーソナルクラウドユーザアカウントとバインドすることを事前承認されていることの検証、および（ｂ）第２の認証情報を、前記パーソナルクラウドデバイスから受信することと、
前記第１の認証情報と前記第２の認証情報との間に一致があるか否かを判定することと、
前記第１の認証情報と前記第２の認証情報との間に前記一致があるという判定に応答して、前記パブリッククラウドユーザアカウントと前記パーソナルクラウドユーザアカウントの間のバインドを示す情報を記憶することとを行わせる命令を有し、
前記バインドは、前記パブリッククラウドサービスを使用するために、前記パブリッククラウドユーザアカウントから第２のユーザの第２のパブリッククラウドユーザアカウントに、（ａ）前記パーソナルクラウドデバイスに記憶され、（ｂ）前記パーソナルクラウドユーザアカウントと関連付けられる、データを共有するための基準である、１つまたは複数の非一時的機械可読媒体。
【請求項９】
（ａ）前記パブリッククラウドユーザアカウントが前記パーソナルクラウドユーザアカウントとバインドすることを事前承認されていることを判定することは、前記パブリッククラウドサービスに記憶された事前承認リストに基づく、
および／または、
（ｂ）前記パーソナルクラウドデバイスから受信される、前記パブリッククラウドユーザアカウントが前記パーソナルクラウドユーザアカウントとバインドすることを事前承認されていることの前記検証は、前記パーソナルクラウドデバイスに記憶された事前承認リストに基づく、請求項８に記載の１つまたは複数の媒体。
【請求項１０】
命令を記憶する１つまたは複数の非一時的機械可読媒体であって、前記命令は１つまたは複数のプロセッサによって実行されると、
パブリッククラウドサービスを使用するためのパブリッククラウドユーザアカウントと、パーソナルクラウドデバイスを使用するためのパーソナルクラウドユーザアカウントとをバインドする第１の要求を受信することと、
前記パブリッククラウドユーザアカウントが前記パーソナルクラウドユーザアカウントとバインドすることを承認されていることの判定に応答して、前記パブリッククラウドサービスに、前記パブリッククラウドユーザアカウントおよび前記パーソナルクラウドユーザアカウントがバインドすることを承認されていることを示す検証を送信することと、
前記パブリッククラウドサービスが前記パブリッククラウドユーザアカウントと前記パーソナルクラウドユーザアカウントとの間のバインドを示す第１の情報セットを記憶していることを示す確認を、前記パブリッククラウドサービスから取得することに応答して、前記パブリッククラウドユーザアカウントと前記パーソナルクラウドユーザアカウントとの間の前記バインドを示す第２の情報セットを、前記パーソナルクラウドデバイスと関連付けられるデータリポジトリ上に記憶することとを行わせる命令を有し、
前記バインドは、前記パブリッククラウドサービスを使用するために、前記パブリッククラウドユーザアカウントから第２のユーザの第２のパブリッククラウドユーザアカウントに、（ａ）前記パーソナルクラウドデバイスに記憶され、（ｂ）前記パーソナルクラウドユーザアカウントと関連付けられる、データを共有するための基準である、１つまたは複数の非一時的機械可読媒体。
【請求項１１】
前記パブリッククラウドユーザアカウントが前記パーソナルクラウドユーザアカウントとバインドすることを承認されていることを判定することは、（ａ）前記パーソナルクラウドデバイスと関連付けられる前記データリポジトリに記憶された事前承認リスト、および（ｂ）前記パブリッククラウドサービスと関連付けられる第２のデータリポジトリに記憶されている第２の事前承認リスト、のうちの１つ以上に基づく、請求項１０に記載の１つまたは複数の媒体。
【請求項１２】
１つまたは複数のプロセッサによって実行されると、
パーソナルクラウドデバイスを使用するためのユーザのパーソナルクラウドユーザアカウントを識別することと、
前記パーソナルクラウドデバイスに記憶され、前記パーソナルクラウドユーザアカウントと関連付けられるデータを、パブリッククラウドサービスを使用するための前記ユーザのパブリッククラウドユーザアカウントにエクスポートする要求を受信することと、
前記パーソナルクラウドユーザアカウントと前記パブリッククラウドユーザアカウントとの間にバインドがあるか否かを判定することと、
前記パーソナルクラウドユーザアカウントと前記パブリッククラウドユーザアカウントとの間にバインドがあることの判定に応答して、前記パーソナルクラウドデバイスに記憶されている前記データが前記パブリッククラウドユーザアカウントにエクスポートされることを承認されていることを示す情報を送信することとを行わせる命令を記憶している、１つまたは複数の非一時的機械可読媒体。
【請求項１３】
前記パーソナルクラウドユーザアカウントと前記パブリッククラウドユーザアカウントとの間に前記バインドがあるか否かを判定することは、（ａ）前記パーソナルクラウドデバイスと関連付けられるデータリポジトリに記憶されたバインドリスト、および（ｂ）前記パブリッククラウドサービスと関連付けられる第２のデータリポジトリに記憶されている第２のバインドリストのうちの１つ以上に基づく、請求項１２に記載の１つまたは複数の媒体。
【請求項１４】
前記１つまたは複数のプロセッサによって実行されると、
（ａ）前記パーソナルクラウドデバイスに記憶されている前記データを前記パブリッククラウドユーザアカウントにとってアクセス可能にすることを行わせる命令、および、
（ｂ）前記パブリッククラウドユーザアカウントを使用して前記パーソナルクラウドデバイスに記憶されている前記データにアクセスすることを行わせる命令のうちの１つ以上をさらに記憶する、請求項１２に記載の１つまたは複数の媒体。
【請求項１５】
１つまたは複数のプロセッサによって実行されると、
パーソナルクラウドデバイスを使用するための第１のユーザのパーソナルクラウドユーザアカウントを識別することと、
前記パーソナルユーザデバイスに記憶され、前記パーソナルクラウドユーザアカウントと関連付けられるデータを、パブリッククラウドサービスを使用するための第２のユーザの第１のパブリッククラウドユーザアカウントに共有する要求を受信することとであって、前記第１のユーザと前記第２のユーザとは異なる、受信することと、
前記パーソナルクラウドユーザアカウントが第２のパブリッククラウドユーザアカウントにバインドされることの判定に応答して、前記パーソナルユーザデバイスに記憶されている前記データを前記第１のパブリッククラウドユーザアカウントに共有するために前記第２のパブリッククラウドユーザアカウントを使用する要求を、前記クラウドサービスに送信することとを行わせる命令を記憶している、１つまたは複数の非一時的機械可読媒体。
【請求項１６】
前記１つまたは複数のプロセッサによって実行されると、
（ａ）前記パブリッククラウドサービスによって、前記パーソナルユーザデバイス上に記憶されており、かつ前記パーソナルクラウドユーザアカウントと関連付けられる前記データが前記第２のパブリッククラウドユーザアカウントにエクスポートされていることを判定することを行わせる命令、および、
（ｂ）前記パーソナルユーザデバイス上に記憶されている前記データが前記第２のパブリッククラウドユーザアカウントから前記第１のパブリッククラウドユーザアカウントに共有されていることを示す情報を、クライアントデバイスに送信することを行わせる命令のうちの１つ以上をさらに記憶する、請求項１５に記載の１つまたは複数の媒体。
【国際調査報告】
2021536620.tif 000015
2021536620.tif 000016
2021536620.tif 000017
2021536620.tif 000018