(57)【要約】  装置又は装置グループ発見及び登録サービスを提供する方法が、結び付けられていない装置から可用性メッセージを受信するステップと、サービスの要求を受信するステップと、サービス識別データを装置識別データと相関させるステップと、結び付けられていない装置を選択するステップと、結び付けられていない装置又は結び付けられていない装置グループを選択するようにユーザに促すステップと、ユーザから、選択された結び付けられていない装置又は選択された結び付けられていない装置グループを受信するステップと、選択された結び付けられていない装置又は選択された結び付けられていない装置グループに関連付けられた出力装置にマシン生成コードを送信するステップと、マシン生成コードを入力することによって上記選択された結び付けられていない装置又は装置グループの所有権を立証するようにユーザに促すステップと、ユーザから人間入力コードを受信するステップと、マシン生成コードを人間入力コードと比較するステップと、上記比較に基づいて、選択された装置又は選択された装置グループをサービスに選択的に結び付けるステップと、を含む。
2017507379.tif 000002
【特許請求の範囲】
【請求項１】
装置発見及び登録サービスを提供する方法であって、
１つ以上の結び付けられていない装置から１つ以上の可用性メッセージを受信するステップであって、前記１つ以上の可用性メッセージはそれぞれの装置識別データを含む、ステップと、
ユーザからウェブアプリケーションを介して、前記サービスの要求を受信するステップであって、前記要求はサービス識別データを含む、ステップと、
前記サービス識別データを前記装置識別データと相関させるステップと、
前記相関に基づいて、前記１つ以上の結び付けられていない装置から１つ以上の候補の結び付けられていない装置を選択するステップと、
前記装置識別データに基づいて前記１つ以上の候補の結び付けられていない装置から結び付けられていない装置を選択するようにユーザに促すステップと、
前記ユーザから、選択された結び付けられていない装置を受信するステップと、
前記選択された結び付けられていない装置にマシン生成コードを送信するステップと、
前記選択された結び付けられていない装置に送信された前記マシン生成コードを入力することによって前記選択された結び付けられていない装置の所有権を立証するようにユーザに促すステップと、
前記ユーザから前記ウェブアプリケーションを介して、人間入力コードを受信するステップと、
前記マシン生成コードを前記人間入力コードと比較するステップと、
前記比較に基づいて、前記選択された結び付けられていない装置を前記サービスに選択的に結び付けるステップと、
を含む方法。
【請求項２】
前記ウェブアプリケーションと前記選択された装置とにおけるさらなる通信のために前記サービスをサービスプロキシに引き渡すステップ、をさらに含む請求項１に記載の方法。
【請求項３】
前記サービスプロキシは別個のマシン上で実行されてスケーラビリティを提供する、請求項２に記載の方法。
【請求項４】
前記マシン生成コードはランダムに生成される、請求項１に記載の方法。
【請求項５】
前記マシン生成コードは暗号的セキュアアルゴリズムを用いて生成される、請求項１に記載の方法。
【請求項６】
前記サービスの要求は、前記ユーザに関連付けられたクレデンシャルを検証することを条件とする、請求項１に記載の方法。
【請求項７】
前記ユーザサービス識別データは、前記ユーザに関連付けられたユーザパブリックＩＰアドレスを含み、前記装置識別データは、前記１つ以上の結び付けられていない装置に関連付けられた１つ以上の装置パブリックＩＰアドレスを含む、請求項１に記載の方法。
【請求項８】
前記サービス識別データを前記装置識別データと相関させるステップは、前記ユーザパブリックＩＰアドレスを前記１つ以上の装置パブリックＩＰアドレスと比較することを含む、請求項７に記載の方法。
【請求項９】
前記ユーザパブリックＩＰアドレスは前記ユーザにより提供される、請求項７に記載の方法。
【請求項１０】
前記ウェブアプリケーションは、ユーザ装置上で実行されるシングルページアプリケーションであり、信頼されたドメインの中で前記登録サービスに接続される、請求項１に記載の方法。
【請求項１１】
前記選択された装置及び前記ウェブアプリケーションは、同じパブリックＩＰアドレスの背後にある、請求項１に記載の方法。
【請求項１２】
前記ウェブアプリケーション及び前記１つ以上の結び付けられていない装置は、セキュアプロトコルを使用して、信頼されていないドメインを通して通信する、請求項１に記載の方法。
【請求項１３】
前記１つ以上の結び付けられていない装置からの前記１つ以上の可用性メッセージは、前記１つ以上の結び付けられていない装置が結び付けられるように利用可能であるとき、自動的に生成される、請求項１に記載の方法。
【請求項１４】
前記装置識別データは、インターネットプロトコル（ＩＰ）アドレス、ホスト名、マシンアドレス、装置識別、クラスタ識別、及びバージョニング情報のうち、１つ以上を含む、請求項１に記載の方法。
【請求項１５】
装置グループ発見及び登録サービスを提供する方法であって、
１つ以上の結び付けられていない装置グループから１つ以上の可用性メッセージを受信するステップであって、前記１つ以上の可用性メッセージはそれぞれのグループ識別データを含む、ステップと、
ユーザからウェブアプリケーションを介して、前記サービスの要求を受信するステップであって、前記要求はサービス識別データを含む、ステップと、
前記サービス識別データを前記グループ識別データと相関させるステップと、
前記相関に基づいて、前記１つ以上の結び付けられていない装置グループから１つ以上の候補の結び付けられていない装置グループを選択するステップと、
前記グループ識別データに基づいて前記１つ以上の候補の結び付けられていない装置グループから結び付けられていない装置グループを選択するようにユーザに促すステップと、
前記ユーザから、選択された結び付けられていない装置グループを受信するステップと、
前記選択された結び付けられていない装置グループにマシン生成コードを送信するステップと、
前記選択された結び付けられていない装置グループに送信された前記マシン生成コードを入力することによって前記選択された結び付けられていない装置グループの所有権を立証するようにユーザに促すステップと、
前記ユーザから前記ウェブアプリケーションを介して、人間入力コードを受信するステップと、
前記マシン生成コードを前記人間入力コードと比較するステップと、
前記比較に基づいて、前記選択された結び付けられていない装置グループを前記サービスに選択的に結び付けるステップと、
を含む方法。
【請求項１６】
前記ウェブアプリケーションと前記選択された装置グループとにおけるさらなる通信のために前記サービスをサービスプロキシに引き渡すステップ、をさらに含む請求項１５に記載の方法。
【請求項１７】
前記サービスプロキシは別個のマシン上で実行されてスケーラビリティを提供する、請求項１５に記載の方法。
【請求項１８】
前記マシン生成コードはランダムに生成される、請求項１５に記載の方法。
【請求項１９】
前記マシン生成コードは暗号的セキュアアルゴリズムを用いて生成される、請求項１５に記載の方法。
【請求項２０】
前記サービスの要求は、前記ユーザに関連付けられたクレデンシャルを検証することを条件とする、請求項１５に記載の方法。
【請求項２１】
前記ユーザサービス識別データは、前記ユーザに関連付けられたユーザパブリックＩＰアドレスを含み、前記グループ識別データは、前記１つ以上の結び付けられていない装置グループに関連付けられた１つ以上のグループパブリックＩＰアドレスを含む、請求項１５に記載の方法。
【請求項２２】
前記サービス識別データを前記グループ識別データと相関させるステップは、前記ユーザパブリックＩＰアドレスを前記１つ以上のグループパブリックＩＰアドレスと比較することを含む、請求項２１に記載の方法。
【請求項２３】
前記ユーザパブリックＩＰアドレスは前記ユーザにより提供される、請求項１５に記載の方法。
【請求項２４】
前記ウェブアプリケーションは、ユーザ装置上で実行されるシングルページアプリケーションであり、信頼されたドメインの中で前記登録サービスに接続される、請求項１５に記載の方法。
【請求項２５】
前記選択された装置グループ及び前記ウェブアプリケーションは、同じパブリックＩＰアドレスの背後にある、請求項１５に記載の方法。
【請求項２６】
前記ウェブアプリケーション及び前記１つ以上の結び付けられていない装置グループは、セキュアプロトコルを使用して、信頼されていないドメインを通して通信する、請求項１５に記載の方法。
【請求項２７】
前記１つ以上の結び付けられていない装置グループからの前記１つ以上の可用性メッセージは、前記１つ以上の結び付けられていない装置グループが結び付けることに利用可能であるとき、自動的に生成される、請求項１５に記載の方法。
【請求項２８】
前記グループ識別データは、インターネットプロトコル（ＩＰ）アドレス、ホスト名、マシンアドレス、グループ識別、クラスタ識別、及びバージョニング情報のうち、１つ以上を含む、請求項１５に記載の方法。
【請求項２９】
装置又は装置グループ発見及び登録サービスを提供するシステムであって、
第１のデータ伝送プロトコルを利用する装置又は装置グループに関連付けられたデータ伝送を管理するように構成されたバックボーンと、
第２のデータ伝送プロトコルを利用するウェブサイトドメインと前記バックボーンとにおけるデータ伝送を管理するように構成されたランデブーモジュールであって、
前記ウェブサイトドメインは、ユーザのためにアクセス可能なウェブアプリケーションを管理する、
ランデブーモジュールと、
前記装置又は前記装置グループの識別を記憶するように構成されたメールボックスと、
前記メールボックスを監視し、前記サービスのメールボックス健全性に対して作用するように構成されたスーパバイザと、
を含むシステム。
【請求項３０】
前記ウェブサイトドメインは、前記ユーザを認証し、成功裏のユーザ認証に基づいて、ウェブサービスを前記ユーザの結び付けられていない装置又は結び付けられていない装置グループに関連付けるようにさらに構成される、請求項２９に記載のシステム。
【請求項３１】
前記ウェブサイトドメインは、ウェブサービスを匿名ユーザの結び付けられていない装置又は結び付けられていない装置グループに関連付けるようにさらに構成される、請求項２９に記載のシステム。
【請求項３２】
前記ウェブアプリケーションは、シングルページアプリケーションであり、信頼されたドメインの中で前記登録サービスに接続される、請求項２９に記載のシステム。
【請求項３３】
前記第１のデータ伝送プロトコルはセキュアプロトコルを使用し、前記セキュアプロトコルはＨＴＴＰＳ（Ｓｅｃｕｒｅ  Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）を含み、前記第２のデータ伝送プロトコルはＪＳＯＮ‐ＲＰＣ（ＪａｖａＳｃｒｉｐｔ  Ｏｂｊｅｃｔ  Ｎｏｔａｔｉｏｎ  Ｒｅｍｏｔｅ  Ｐｒｏｃｅｄｕｒｅ  Ｃａｌｌ）である、請求項２９に記載のシステム。
【請求項３４】
前記ウェブサイトドメインは、
結び付けられていない装置又は結び付けられていない装置グループから１つ以上の可用性メッセージを受信することであって、前記１つ以上の可用性メッセージはそれぞれの装置識別データを含み、
前記ユーザから前記ウェブアプリケーションを介して、前記サービスの要求を受信することであって、前記サービス要求はサービス識別データを含み、
前記サービス識別データを前記装置識別データ又はグループ識別データと相関させ、
前記相関に基づいて、前記１つ以上の結び付けられていない装置から１つ以上の候補の結び付けられていない装置を、あるいは前記１つ以上の結び付けられていない装置グループから１つ以上の候補の結び付けられていない装置グループを選択し、
前記装置識別データに基づいて前記１つ以上の候補の結び付けられていない装置から結び付けられていない装置を、あるいは前記グループ識別データに基づいて前記１つ以上の候補の結び付けられていない装置グループから結び付けられていない装置グループを選択するようにユーザに促し、
前記ユーザから、選択された結び付けられていない装置又は選択された結び付けられていない装置グループを受信し、
前記選択された結び付けられていない装置又は前記選択された結び付けられていない装置グループを前記サービスに選択的に結び付ける
ようにさらに構成される、請求項２９に記載のシステム。
【請求項３５】
プログラムを具現化させた非一時的コンピュータ可読媒体であって、前記プログラムは、プロセッサにより実行可能であって、装置又は装置グループ発見及び登録サービスを提供する方法を実行し、前記方法は、
１つ以上の結び付けられていない装置又は１つ以上の結び付けられていない装置グループから１つ以上の可用性メッセージを受信するステップであって、前記１つ以上の可用性メッセージはそれぞれの装置識別データ又はグループ識別データを含む、ステップと、
ユーザからウェブアプリケーションを介して、前記サービスの要求を受信するステップであって、前記サービス要求はサービス識別データを含む、ステップと、
前記サービス識別データを前記装置識別データ又は前記グループ識別データと相関させるステップと、
前記相関に基づいて、前記１つ以上の結び付けられていない装置から１つ以上の候補の結び付けられていない装置を、あるいは前記１つ以上の結び付けられていない装置グループから１つ以上の候補の結び付けられていない装置グループを選択するステップと、
前記装置識別データに基づいて前記１つ以上の候補の結び付けられていない装置から結び付けられていない装置を、あるいは前記グループ識別データに基づいて前記１つ以上の候補の結び付けられていない装置グループから結び付けられていない装置グループを選択するようにユーザに促すステップと、
前記ユーザから、選択された結び付けられていない装置又は選択された結び付けられていない装置グループを受信するステップと、
前記選択された結び付けられていない装置又は前記選択された結び付けられていない装置グループに関連付けられた装置にマシン生成コードを送信するステップと、
前記選択された結び付けられていない装置又は前記選択された結び付けられていない装置グループに関連付けられた装置に送信された前記マシン生成コードを入力することによって、前記選択された結び付けられていない装置又は前記選択された結び付けられていない装置グループの所有権を立証するように、ユーザに促すステップと、
前記ユーザから前記ウェブアプリケーションを介して、人間入力コードを受信するステップと、
前記マシン生成コードを前記人間入力コードと比較するステップと、
前記比較に基づいて、前記選択された結び付けられていない装置又は前記選択された結び付けられていない装置グループを前記サービスに選択的に結び付けるステップと、
を含む、非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、概してデータ処理に関し、より具体的にはクラウド接続された装置の管理及び提供に関する。
【背景技術】
【０００２】
本背景技術に説明されるアプローチは、追求されたことがある可能性があるが、必ずしもこれまでに着想され、あるいは追求されてきたアプローチではない。それゆえに、他に示されない限り、本背景技術に説明されるアプローチのいずれも、単に本背景技術に含まれるという理由で従来技術と見なすと仮定されるべきではない。
【０００３】
従来のクラウドコンピューティングは、様々なアプリケーション間においてコンピューティングリソースを共有することを可能にする。クラウドコンピューティングにおいて、種々のサービス、例えば、ストレージ及びアプリケーションなどが、インターネットを通して組織のコンピュータ及び装置に配信されることができる。クラウドコンピューティングは、相当な管理労力を伴って、運用、監視、最適化、並びに、クラウドの中に存在するユーザ、データ、及びサービスの間での適切なインタラクションに対して設計されたソフトウェア及びテクノロジーをサポートする。クラウド管理は、パフォーマンス監視、セキュリティ及びコンプライアンスの監査及び管理と、ディザスタリカバリ及びコンティンジェンシープランの開始及び監督とを含む、多数のタスクをさらに伴うことがある。
【０００４】
様々なセキュリティ懸念に対処するための従来の解決策には、組織のファイアウォール内のローカルエリアネットワーク（ＬＡＮ）上で実施されるプライベートクラウドプラットフォームが含まれる。しかしながら、プライベートクラウドストレージサービスは、組織によって内部的に管理されるため、高い資本及び維持コストを伴う。さらに、組織は、リソースを運営し及び管理する責任をサードパーティクラウドプロバイダにアウトソースすることに代わって、こうした責任を取る必要があることになる。
【発明の概要】
【０００５】
本発明の概要は、以下に詳細な説明においてさらに説明される概念のうち選択されたものを簡素化された形式において導入するために提供される。本発明の概要は、請求される対象事項の重要な特徴又は必須の特徴を識別するものではなく、請求される対象事項の範囲を決定することの助けとして用いられるべきものでもない。
【０００６】
本開示の一態様に従い、サービスを提供する方法が提供される。この方法は、１つ以上の結び付けられていないクラウド接続された装置から、１つ以上の可用性メッセージを受信するステップを含む。１つ以上の可用性メッセージは、それぞれの装置識別データを含み得る。方法は、ユーザからウェブアプリケーションを介して、サービスの要求を受信するステップであって、サービス要求はサービス識別データを含む、ステップをさらに含み得る。方法は、サービス識別データを装置識別データと相関させるステップと、この相関に基づいて、１つ以上の結び付けられていない装置から１つ以上の候補の結び付けられていない装置を選択するステップと、をさらに含み得る。方法は、装置識別データに基づいて１つ以上の候補の結び付けられていない装置から結び付けられていない装置を選択するようにユーザに促すステップと、ユーザから、選択された結び付けられていないデータ装置又は装置グループを受信するステップと、選択された装置に、マシンにより生成されたコードを送信するステップと、選択された装置に送信された、マシンにより生成されたコードを入力することによって、選択された結び付けられていない装置の所有権を立証するようにユーザに促すステップと、ユーザからウェブアプリケーションを介して、人間により入力されたコードを受信するステップと、をさらに含み得る。方法は、マシンにより生成されたコードを人間により入力されたコードと比較するステップと、この比較に基づいて、選択された装置をサービスに選択的に結び付けるステップと、をさらに含み得る。
【０００７】
特定の実施形態において、上記方法は、ウェブアプリケーションと選択された装置とにおけるさらなる通信のために、装置との通信をサービスプロキシに引き渡すステップをさらに含み得る。サービスプロキシは、別個のマシン上で実行されてスケーラビリティを提供してもよい。
【０００８】
サービスの要求は、ユーザに関連付けられたクレデンシャルの検証を条件とすることができる。ユーザサービス識別データは、ウェブアプリケーションに関連付けられたユーザパブリックＩＰアドレスを含むことができ、装置識別データは、１つ以上の結び付けられていない装置に関連付けられた１つ以上の装置パブリックＩＰアドレスを含むことができる。サービス識別データを装置識別データと相関させるステップは、ユーザパブリックＩＰアドレスを１つ以上の装置パブリックＩＰアドレスと比較することを含み得る。いくつかの実施形態において、ユーザは、ＩＰアドレスを手動で提供してもよい。
【０００９】
ウェブアプリケーションは、ウェブブラウザ内で実行されるシングルページアプリケーションであり得る。選択された装置及びウェブアプリケーションは、同じパブリックＩＰアドレスの背後にある（situated  behind）ことが可能である。選択された装置及びウェブアプリケーションは、ファイアウォールによって保護された信頼されていないドメイン内に配置されてもよい。
【００１０】
ウェブアプリケーション及び１つ以上の結び付けられていない装置は、様々なセキュリティプロトコルを使用して、信頼されたドメインに対して通信することができる。結び付けることに利用可能な１つ以上の結び付けられていない装置からの１つ以上の可用性メッセージが、１つ以上の結び付けられていない装置が初期化されるときに、自動的に生成されてもよい。装置識別データは、インターネットプロトコル（ＩＰ）アドレス、ホスト名、マシンアドレス、装置識別、クラスタ識別、及びバージョニング情報のうち、１つ以上を含み得る。ＩＰアドレスは、装置がＩＰアドレスに対してメッセージを送信するとき、バックエンドドメインによって見られるソースアドレスである。
【００１１】
本開示の別の態様に従い、サービスを提供するシステムが提供される。このシステムは、第１のデータ伝送プロトコルを利用する結び付けられた装置に関連付けられたデータ伝送を管理するように構成されたサービスプロキシを含み得る。システムは、第２のデータ伝送プロトコルを利用するウェブサイトドメインとの間の結び付けられていない装置に関連付けられたデータ伝送を管理するように構成されたランデブーモジュールをさらに含み得る。ウェブサイトドメインは、ユーザにとってアクセス可能なウェブアプリケーションを管理することができる。システムは、装置の識別を記憶するように構成されたメールボックスをさらに含み得る。
【００１２】
本開示の別の態様において、システムは、様々なサービスの健全性を監視し及び該健全性に作用するように構成されたスーパバイザをさらに含み得る。
【００１３】
特定の実施形態において、ウェブサイトドメインは、ユーザを認証し、成功裏のユーザ認証に基づいて、ウェブサービスを結び付けられていない装置に関連付けるようにさらに構成され得る。ウェブアプリケーションは、シングルページアプリケーション（Single  Page  Application；ＳＰＡ）を含み得る。特定の実施形態において、ウェブサイトドメインは、結び付けられていない装置から１つ以上の可用性メッセージを受信することであって、１つ以上の可用性メッセージはそれぞれの装置識別データを含み、ユーザからウェブアプリケーションを介して、サービスの要求を受信することであって、サービス要求はサービス識別データを含み、サービス識別データを装置識別データと相関させ、この相関に基づいて、１つ以上の結び付けられていない装置から１つ以上の候補の結び付けられていない装置を選択し、装置識別データに基づいて１つ以上の候補の結び付けられていない装置から１つ又はグループの結び付けられていない装置を選択するようにユーザに促し、ユーザから選択された結び付けられていない装置又は装置のグループを受信し、選択された装置又は装置のグループをサービスに選択的に結び付けるように、さらに構成され得る。
【００１４】
本開示のさらなる例示的な実施形態において、方法ステップが、命令を含むマシン可読媒体上に記憶され、上記命令は、１つ以上のプロセッサにより実施されるときに、列挙されたステップを実行する。さらなる別の例示的な実施形態において、ハードウェアシステム又は装置が、列挙されたステップを実行するように適合されることができる。他の特徴、例、及び実施形態が、以下に説明される。
【図面の簡単な説明】
【００１５】
実施形態は、図面の図において限定ではなく例として例示され、同様の参照は同様の要素を示す。
【図１】本開示の実施形態を実施することに適したシステムアーキテクチャの高レベルブロック図を示す。
【図２】一例示的な実施形態に従うサービスを提供する方法を示す処理フロー図である。
【図３】一例示的な実施形態に従う装置所有権検証の一例示的な方法を例示するフローチャートである。
【図４】コンピュータシステムの例示的な電子形態におけるマシンのコンピューティング装置の概略表現を示し、これにおいて、本明細書に論じられる方法論のうち任意の１つ以上をマシンに実行させる命令セットが実行されることができる。
【発明を実施するための形態】
【００１６】
下記の詳細な説明は添付図面に対する参照を含み、添付図面は本詳細な説明の一部を形成する。図面は、例示的な実施形態に従い例示を示す。こうした例示的な実施形態は、本明細書において「例」とさらに呼ばれ、十分詳細に説明されて、当業者が本対象事項を実施することを可能にする。実施形態は組み合わせられてもよく、他の実施形態が利用されてもよく、あるいは、構造的、論理的、及び電気的な変更が、請求されるものの範囲から逸脱することなく行われてもよい。ゆえに、下記の詳細な説明は、限定的な意味においてとられるべきではなく、その範囲は、別記の請求項及びその均等物によって定義される。本文献において、特許文献において一般的であるとおり、用語“ａ”及び“ａｎ”は、１つ又は１つより多くを含むように使用される。本文献において、用語“又は”は、非排他的な「又は」を参照するように使用され、したがって、別段指示されない限り、「Ａ又はＢ」は、「ＢでなくＡ」、「ＡでなくＢ」、及び「Ａ及びＢ」を含む。
【００１７】
本明細書に開示される実施形態は、様々なテクノロジーを用いて実施されることができる。例えば、本明細書に説明される方法は、コンピュータシステム上で実行されるソフトウェアにおいて、あるいは、マイクロプロセッサの組み合わせ、又は他の特別に設計された特定用途向け集積回路（ＡＳＩＣ）、プログラマブルロジック装置、若しくはこれらの様々な組み合わせのいずれかを利用するハードウェアにおいて実施されることができる。具体的に、本明細書に説明される方法は、ディスクドライブ又はコンピュータ可読媒体などの記憶媒体上に存在する一連のコンピュータ実行可能命令によって実施されてもよい。
【００１８】
本明細書に説明されるテクノロジーの多くの使用法のうち１つは、効率的な及びシームレスなストレージの配分及びスケーラビリティ、データセキュリティ及び完全性を提供することと、所有権の証明を用いて特定のストレージリソースをユーザが選択できるようにすることとを可能にする。
【００１９】
一例示的なアーキテクチャが、ウェブブラウザ内で動作するＳＰＡなどのウェブアプリケーションと、企業ＬＡＮ上に配置される装置とを含み得る。この例示的なアーキテクチャは、ウェブアプリケーションをサポートするウェブサイトドメインと、装置をサポートする装置ドメインと、装置に対するサービスの自動発見及び登録をサポートするバックエンドドメインとをさらに含み得る。
【００２０】
ウェブサイトドメインは、ウェブアプリケーションに関連付けられた、例えばＨＴＴＰＳ（Ｓｅｃｕｒｅ  Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）などの、セキュアプロトコル要求を調整するコントローラを含み得る。バックエンドドメインは、企業ＬＡＮ上の装置に関連付けられた、ＨＴＴＰＳなどの、セキュアプロトコル要求を調整するバックボーンを含み得る。バックエンドドメインは、ウェブサイトと結び付けられていない装置（unbound  devices）との間の通信交換を扱うランデブーモジュール（rendezvous  module）を含み得る。典型的に、クラウドプラットフォームの観点から、ウェブサイト及びバックエンドが信頼されたドメイン内に配置されると同時に、ウェブアプリケーション及び装置は信頼されていないドメイン内に配置される。信頼されたドメインと信頼されていないドメインとは、ファイアウォールによって分離され得る。データ完全性を確保するために、信頼されていないドメインと信頼されたドメインとの間の通信が、様々なセキュアプロトコルを利用することができる。
【００２１】
１つ以上のプロトコルを用いて、結び付けられていない装置は、ブートされるとき、ランデブーモジュールのメールボックスにメッセージをポストすること（posting）によって、該装置自体を告知することができる。メッセージは、装置のパブリックＩＰアドレスと他の装置関連のメタデータとを含み得る。結び付けられていない装置が、ウェブアプリケーションに関連付けられたサービスにいったん結び付けられる（bound）と、装置とウェブアプリケーションとの間のさらなる通信が、サービスプロキシメールボックスに引き渡される（handed  off）ことができる。
【００２２】
バックエンドドメインは、サービスプロキシインスタンスのライフサイクルを管理するスーパバイザをさらに含み得る。１つ以上のプロキシが複数のマシン間にわたって分散されて、スケーラビリティを提供してもよい。スーパバイザは、サービスプロキシの管理に関連するメッセージについて、メールボックスを監視し続けることができる。
【００２３】
装置発見及び登録サービスを提供する一例示的な方法は、上記で説明されたアーキテクチャに関連付けられた装置の存在の告知で始まり得る。装置はエージェントを含むことができ、エージェントが使用されて、ランデブーモジュールに対して装置存在を告知することができる。ランデブーモジュールは、バックエンドドメインにおいてコントローラを用いてエージェントの可用性を登録することができる。コントローラは、エージェントの可用性をデータベースに記憶することができる。
【００２４】
サービスのアカウントを有するユーザは、成功裏のログインにおいて、装置発見ウィザードにリダイレクトされることができる。ユーザクレデンシャルの検証において、コントローラは装置発見ウィザードを有効にすることができ、したがって、ユーザは継続するように促され、コントローラは、データベースに問い合わせて、いずれかの結び付けられていない装置が現在ログインしているユーザの管理的制御下であり得るかを決定する。相関関係が、利用可能な装置を、小さい一組の可能性のある候補へと下方にフィルタリングすることを可能にする。相関関係は、ＩＰアドレスの比較に基づくことができる。例えば、ウェブアプリケーションに関連付けられたパブリックＩＰアドレスが、結び付けられていない装置のパブリックＩＰアドレスに対して比較されることができる。いくつかの例において、ＬＡＮの外側のユーザが、ＩＰアドレスを手動で提供することによって、システムを利用することを可能にされてもよい。
【００２５】
比較が行われた後、サービスに結び付けられることが可能なあり得る候補が、装置に関連付けられた他の情報（例えば、ホスト名、ＩＰ、ｍａｃアドレス、装置ＩＤ、クラスタＩＤ、バージョニング（versioning）情報）と共に、ユーザに対して提示され、例えば、表示される。ユーザは、これら結び付けられていない装置のうち１つ以上の管理的制御を要求することを、１つ以上の結び付けられていない装置を選択することによって、可能にされ得る。
【００２６】
いったんユーザが装置又は装置のグループを選択すると、ユーザは、通信の独立したチャネルを通して装置又は装置のグループと相互作用することによって、例えば、装置に物理的に結合された、ＬＣＤディスプレイなどの出力装置のディスプレイを観察することによって、装置又は装置のグループの所有権を証明するように求められる。ユーザに事前に知られていないコードが、装置に関連付けられた出力装置に対してコントローラから送信されることができる。換言すると、各々の選択された装置又は装置のグループは、例えば、装置に関連付けられたＬＣＤディスプレイ上にコードを表示することによって、コードをユーザが読むために利用可能にすることができる。ユーザは、所有権を証明するために、装置発見ウィザード内にコードを入力するように求められ得る。このことは、装置発見ウィザードにおいてコードを入力すると、選択された装置に対するユーザの管理的制御が立証される（confirmed）ことができるので、セキュア検証及び登録処理において重要な一ステップである。
【００２７】
ゆえに、セキュアにされた検証処理が、装置に関連付けられた結合された出力装置に対して１つの通信チャネルを通してコードを送信し、ユーザが異なる通信チャネル上でシステムに対してコードを提供して戻すことを含み得る。
【００２８】
図１は、本開示の実施形態を実施することに適したシステムアーキテクチャ１００の高レベルブロック図を示す。図に示されるとおり、装置ドメイン１０５が、１つ以上の装置１１０を含む。図に示されるとおり、１つ以上の装置１１０は、複数のユーザ装置１２０を有する組織のＬＡＮ１１５に関連付けられる。ユーザ装置１２０には、例えば、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、セルラーフォン、スマートフォン、ルータ、モデム、サービサー、及び記憶装置などを含む、任意の適切なネットワーク化されたストレージ及び／又はコンピューティングリソースが含まれ得る。装置１１０には、クラスタと呼ばれる装置のグループが含まれ得る。ユーザは、１つ以上のユーザ装置に関連付けられることができる。
【００２９】
ユーザは、ブラウザ又はユーザインターフェースを有する他のアプリケーションを通して、ウェブアプリケーション１２７を利用することができる。ウェブアプリケーション１２７には、例えば、ＳＰＡ又は同様のウェブサービスが含まれることが可能であり、このＳＰＡ又は同様のウェブサービスが、１つ以上の装置１１０又は１つ以上の装置のグループを、組織に関連付けられたサービスに結び付けることに使用されて、ユーザがその記憶又は計算リソースをセキュアに使用することができる。
【００３０】
システムアーキテクチャ１００は、バックエンドドメイン１３５とウェブサイトドメイン１４０と装置ドメイン１０５との間における通信に対して責任を負うウェブサーバ１３０をさらに含み得る。ウェブサーバ１３０は、信頼されたドメイン（すなわち、バックエンドドメイン１３５及びウェブサイトドメイン１４０）と信頼されていないドメインとを分離するファイアウォール１４５を採用することができる。ウェブサーバ１３０は、ＨＴＴＰ、ＨＴＴＰＳ（ＨＴＴＰセキュア）、又は他のセキュアなプロトコルを用いて、データを通信し及び伝送することができる。
【００３１】
図１には示されていないが、ウェブサーバ１３０とバックエンドドメイン１３５とウェブサイトドメイン１４０と装置ドメイン１０５との間における通信及びデータ伝送には、１つ以上のネットワークが含まれ得る。例えば、１つ以上のネットワークには、インターネット、ローカルイントラネット、ＰＡＮ（パーソナルエリアネットワーク）、ＬＡＮ（ローカルエリアネットワーク）、ＷＡＮ（ワイドエリアネットワーク）、ＭＡＮ（メトロポリタンエリアネットワーク）、仮想プライベートネットワーク（ＶＰＮ）、ストレージエリアネットワーク（ＳＡＮ）、フレームリレー接続、高度インテリジェントネットワーク（ＡＩＮ）接続、同期型光ネットワーク（ＳＯＮＥＴ）接続、デジタルＴ１、Ｔ３、Ｅ１若しくはＥ３回線、デジタルデータサービス（ＤＤＳ）接続、ＤＳＬ（デジタル加入者回線）接続、イーサネット接続、ＩＳＤＮ（統合サービスデジタルネットワーク）回線、ケーブルモデム、ＡＲＭ（非同期転送モード）接続、又はＦＤＤＩ（光ファイバ分散データインターフェース）若しくはＣＤＤＩ（銅線分散データインターフェース）接続のうち、１つ以上が含まれ得る。さらに、通信には、ＧＰＲＳ（Ｇｅｎｅｒａｌ  Ｐａｃｋｅｔ  Ｒａｄｉｏ  Ｓｅｒｖｉｃｅ）、ＧＳＭ（登録商標）（Ｇｌｏｂａｌ  Ｓｙｓｔｅｍ  ｆｏｒ  Ｍｏｂｉｌｅ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ）、ＣＤＭＡ（コード分割多重アクセス）、ＴＤＭＡ（時分割多重アクセス）、セルラーフォンネットワーク、ＧＰＳ，ＣＤＰＤ（セルラーデジタルパケットデータ）、ＲＩＭ（Ｒｅｓｅａｒｃｈ  ｉｎ  Ｍｏｔｉｏｎ，Ｌｉｍｉｔｅｄ）デュプレックスページングネットワーク、Ｂｌｕｅｔｏｏｔｈ（登録商標）無線、又はＩＥＥＥ８０２．１１ベースの無線周波数ネットワークを含む、様々なワイヤレスネットワークのうち任意のものに対するリンクがさらに含まれ得る。
【００３２】
バックエンドドメイン１３５は、装置１１０又は装置のグループの自動発見、管理、及びサポートをサポートすることができる。バックエンドドメイン１３５はバックボーン１５０を含むことができ、バックボーン１５０は、データ伝送を調整し、セキュアなプロトコル、例えば、ＨＴＴＰ又はＨＴＴＰＳプロトコルを利用した装置１１０又は装置のグループからの装置要求を扱う。各装置１１０又は装置のグループは、２つの主要な動作状態を有し得る。第１の動作状態は「登録されていない」ことであり、装置１１０又は装置のグループがサービスに結び付けられていないことを意味し得る。第２の動作状態は「登録されている」ことであり、装置１１０又は装置のグループがサービスに結び付けられていることを意味し得る。バックエンドドメイン１３５は、１つ又は複数のプロトコルを利用する結び付けられていない装置１１０又は結び付けられていない装置のグループ及びそのコンポーネントのためにウェブドメイン１４０との通信交換を扱うように構成されたランデブーモジュール１６０をさらに含むことができ、上記１つ又は複数のプロトコルは、装置又は装置のグループがサービスに対して結び付けられた後にサービスプロキシ１７０と装置１１０又は装置のグループとウェブサイトドメイン１４０とウェブサーバ１３０との間における通信に使用されるプロトコルとは異なり得る。例えば、ランデブーモジュール１６０は、ウェブサイトドメイン１４０との通信に対して、ＪＳＯＮ‐ＲＰＣ（ＪａｖａＳｃｒｉｐｔ（登録商標）  Ｏｂｊｅｃｔ  Ｎｏｔａｔｉｏｎ  Ｒｅｍｏｔｅ  Ｐｒｏｃｅｄｕｒｅ  Ｃａｌｌ）を利用することができる。ランデブーモジュール１６０は、本明細書において「メールボックス」１８０と呼ばれる別のデータベースに関連付けられ、あるいは動作的に結合されることができ、メールボックス１８０は、ランデブーモジュール１６０によって、結び付けられていない装置１１０又は結び付けられていない装置のグループにメッセージを送信することに使用されることができる。さらに、サービスプロキシ１７０が、本明細書において「メールボックス」１５５と呼ばれるデータベースに関連付けられ、あるいは動作的に結合されることができ、メールボックス１５５は、サービスに結び付けられている装置１１０又は装置のグループの識別、動作ステータス、及びメッセージを記憶する。
【００３３】
さらに、結び付けられていない装置１１０又は結び付けられていない装置のグループのユーザがいったん、認証され、結び付けられていない装置１１０若しくは結び付けられていない装置のグループ、又は関連付けられたユーザ装置若しくは出力装置の所持を証明すると、ランデブーモジュール１６０は、様々なサービスを装置１１０又は装置のグループに割り当て、結び付けられていない装置１１０又は装置のグループをサービスに関連付ける（結び付ける）ことができる。
【００３４】
さらに、図に示されるとおり、バックエンドドメイン１３５はスーパバイザ１６５を含むことができ、スーパバイザ１６５は、装置１１０又は装置のグループのステータス（フラグ）についてメールボックス１５５を監視することと、サービスのメールボックス健全性（mailbox  health）に対して作用すること（reacting  to）とを通して、プロキシ１７０のライフサイクルを管理する。さらに、バックエンドドメイン１３５はバックボーン１５０を含むことができ、バックボーン１５０を通して、通信及びサービスが提供されることができる。
【００３５】
さらに図１を参照すると、ウェブサイトドメイン１４０はコントローラ１７５を含むことができ、コントローラ１７５は、ウェブアプリケーション１２７（例えば、ＳＰＡ）に対する要求を扱い、応答を提供するように構成され、ユーザ認証に対して責任を負う。上記目的のために、ウェブサイトドメイン１４０は、ユーザクレデンシャル及び関連する情報を記憶するデータベースを含み得る。
【００３６】
ウェブサイトドメイン１４０及び／又はバックエンドドメイン１３５は、複数の補助的コンポーネント、例えば、構成データベース、ファイルサーバ、プロキシ、記憶装置、コンピューティングユニット、ネットワークルータ、及び同様のものなどを利用することができ、これらは明りょうさを目的として省略されていることを、当業者は理解するであろう。
【００３７】
図２は、一例示的な実施形態に従いサービスを提供する方法２００を示す処理フロー図である。方法２００は、ハードウェア（例えば、意思決定ロジック、専用ロジック、プログラマブルロジック、及びマイクロコード）、ソフトウェア（例えば、汎用目的コンピュータシステム又は専用マシン上で実行されるソフトウェアなど）、又は双方の組み合わせを含み得る処理ロジックによって実行されることができる。一例示的な実施形態において、処理ロジックは、バックエンドドメイン１３５及び／又はウェブサイトドメイン１４０に存在する。換言すると、方法２００は、図１を参照して上記で論じられた様々なコンポーネントによって実行されることができる。
【００３８】
図２に示されるとおり、方法２００は動作２０５において始まることができ、動作２０５において、結び付けられていない装置又は結び付けられていない装置のグループ（装置グループ）がサービスに結び付けられるように、装置又は装置グループは、１つ以上の可用性メッセージをランデブーモジュールのメールボックスに送信することができる。可用性メッセージは、それぞれの装置識別データ又はグループ識別データ、ＩＰアドレス、ホスト名、マシンアドレス、クラスタ識別データ、バージョニング情報、及び同様のものを含み得る。上記メッセージは、例えば、結び付けられていない装置又は結び付けられていない装置グループの初期化（アクティブ化）において、あるいは、１つ以上の結び付けられていないデータ装置又は１つ以上の結び付けられていない装置グループをサービスに結び付けることを通してプライベートデータ又は計算リソースにアクセスするためのユーザ意図に応答して、生成されることができる。専用のソフトウェアエージェントが、１つ以上の結び付けられていない装置又は１つ以上の結び付けられていない装置グループによって利用されて、可用性メッセージを生成し及び通信してもよい。メールボックスの中にメッセージを受信することに応答して、ランデブーモジュールは、ウェブサイトドメインと通信して、結び付けられていない装置又は結び付けられていない装置グループを告知することができる。
【００３９】
動作２１０において、ウェブサイトドメインは、ユーザからウェブアプリケーションを介して、サービスの要求を受信することができ、上記要求には、サービス識別データ又は他の関連する情報を含むことができる。このステップにおいて、ユーザは認証されることができる。上記目的のために、ユーザは、クレデンシャル（例えば、ログイン、パスワード、ピンコード、及び同様のものなど）を提供するように促されることが可能であり、上記クレデンシャルは、データベースの記録に対して照合されることができる。
【００４０】
動作２１５において、コントローラは、サービス識別データを、プロキシに関連付けられたメールボックスに記憶された装置識別データ又はグループ識別データに相関させる（correlate）ことができる。特定の実施形態において、サービス識別データは、ユーザに関連付けられたユーザパブリックＩＰアドレスを含むことができ、装置識別データは、１つ以上の結び付けられていない装置に関連付けられた装置パブリックＩＰアドレスを含むことができ、グループ識別データは、１つ以上の結び付けられていない装置グループに関連付けられたグループパブリックＩＰアドレスを含むことができる。ユーザパブリックＩＰアドレスは、ユーザブラウザのＩＰアドレスを含むことができる。したがって、相関動作２１５は、ユーザパブリックＩＰアドレスと装置パブリックＩＰアドレス又はグループパブリックＩＰアドレスとの比較を含み得る。様々な実施形態において、ユーザパブリックＩＰアドレスは、自動的に決定されるか、あるいはユーザにより手動で提供されるかのいずれかであり得る。
【００４１】
動作２２０において、コントローラは、上記相関と様々なデータベースに記憶されたデータとに基づいて、１つ以上の結び付けられていない装置から１つ以上の候補の結び付けられていない装置を、あるいは１つ以上の結び付けられていない装置グループから１つ以上の候補の結び付けられていない装置グループを選択することができる。特定の環境において、装置パブリックＩＰアドレスは、複数のユーザ装置、ネットワーク装置、又は他の装置に関連し得る。したがって、動作２２５において、ユーザは、装置識別データに基づいて１つ以上の候補の結び付けられていないデータ装置から１つの結び付けられていない装置を選択するように、あるいは、グループ識別データに基づいて１つ以上の候補の結び付けられていない装置グループから１つの結び付けられていない装置グループを選択するように促される。例えば、ウェブアプリケーションは、ユーザに対して、利用可能な装置又は利用可能な装置グループを示すことができ、ユーザは、ユーザに所持されているか又はユーザが利用したい１つの装置又は１つの装置グループを選択することができる。動作２３０において、コントローラは、ユーザから、選択された結び付けられていない装置を受信する。
【００４２】
動作２３５において、コントローラ（又は、いくつかの環境において、バックエンドドメイン）は、マシンにより生成されたコード（マシン生成コード）を、選択された装置又は選択された装置グループに関連付けられた、結合された出力装置に送信することができる。上記コードは、英数字メッセージ、ランダムに生成された、静止画像若しくは動画像、オーディオメッセージ、又はアクティベーション命令に関連し得る。結び付けられていない装置又は結び付けられていない装置グループに関連付けられた対応する出力装置による、マシン生成コードの受信において、このマシン生成コードは、ディスプレイ上に示されることができる。マシン生成コードは、視覚的なもの（visual）に限定されないことが理解されるべきである。
【００４３】
動作２４０において、ユーザは、ユーザ装置、又は選択された装置若しくは選択された装置グループに関連付けられた他の機器を利用して、マシン生成コードを入力することによって、選択された結び付けられていない装置の所有権を立証するように促されることができる。例えば、ウェブアプリケーションが、ユーザに、マシン生成コードを入れるように促すことができる。
【００４４】
動作２４５において、コントローラは、ユーザからウェブアプリケーションを介して、人間により入力されたコード（人間入力コード）を受信することができる。動作２５０において、コントローラは、マシン生成コードを人間入力コードと比較することができ、動作２５５において、上記比較の結果に基づいて、選択された装置又は選択された装置グループをサービスに選択的に結び付けることができる。バックエンドドメインは、対応する記録をメールボックスの中に生成することができる。特定の実施形態において、サービスがプロキシに引き渡されて、セキュアデータ通信を提供することができる。さらに、装置又は装置グループに属する複数の他の機密性及びデータ完全性ポリシーが実施されてもよい。プロキシは、別個のマシン上で（例えば、バックエンドドメインの外部において）実行されて、十分なスケーラビリティを提供してもよい。プロキシは、メールボックスにバックボーンメッセージを受信すること、インバウンドメッセージをポリシー設定し（policing）て、サービスに結び付けられている装置又は装置グループからメッセージが来ていることを確保すること、装置又は装置グループの接続ステータスを監視すること、及びメールボックスに対してウェブサイトドメインから起こる結び付けられていないバックボーンメッセージ（unbound  backbone  messages）をプロキシする（proxying）ことの責任を負うことができる。
【００４５】
図３は、装置所有権検証の一例示的な方法３００を例示するフローチャートを示す。方法３００は、動作３１０において、コントローラがコードを作成することで始まり得る。動作３２０において、コードは、バックボーンにポストされることができる。動作３３０において、バックボーンは、コードを含むメッセージを出力装置に伝送することができる。動作３４０において、コードは、出力装置のディスプレイ上に表示されることができる。それから、ユーザは、表示されたコードを、装置発見ウィザード内に入力することができる。動作３５０において、ユーザドメインの中のユーザにより入力されたコードは、ウェブドメインによって受け入れられることができ、動作３６０において、コードは、コントローラに対して送信されて戻されることができる。動作３７０において、２つのコードの比較が実行されることができる。上記比較に基づいて、動作３８０において、サービスが装置に結び付けられることができ、メッセージが、サービスに関連付けられたプロキシに対して送信されて、プロキシに、現在装置の責任を負っていることを通知することができる。それから、メッセージがランデブーモジュールに対して送信されて、ランデブーモジュールに、装置が現在サービスにより所有されていると通知することができる。一方、ユーザにより入力されたコードが妥当でない場合、動作３９０において、サービスは装置に結び付けられない。
【００４６】
図４は、コンピュータシステム４００の例示的な電子形態におけるマシンのコンピューティング装置の概略表現を示し、このコンピュータシステム内において、本明細書に論じられる方法論のうち任意の１つ以上をマシンに実行させる命令セットが実行されることができる。様々な例示的実施形態において、マシンは、スタンドアロン装置として動作し、あるいは他のマシンに対して接続される（ネットワーク化される）ことができる。ネットワーク化される展開において、マシンは、サーバクライアントネットワーク環境におけるサーバ又はクライアントマシンの能力において、あるいはピアツーピア（又は分散された）ネットワーク環境におけるピアマシンとして動作することができる。マシンは、ウェブ家電製品、ネットワークルータ、スイッチ、ブリッジ、又はマシンによりとられるべきアクションを規定する命令セット（順次的又はその他）を実行する能力のある任意のマシンであり得る。さらに、単一のマシンが例示されるが、用語「マシン」はさらに、命令セット（又は複数の命令セット）を個々に又は結合的に実行して本明細書に論じられた方法論のうち任意の１つ以上を実行するマシンの任意の集合を含むように解されるべきである。
【００４７】
例示的なコンピュータシステム４００は、プロセッサ又は複数のプロセッサ４０５、ディスクドライブユニット４３５、メインメモリ４１０、及びスタティックメモリ４１５を含み、これらは、バス４２０を介して互いに通信する。コンピュータシステム４００は、ネットワークインターフェース装置４４５と、データ圧縮及びオブジェクト識別子暗号法計算に特化されたコプロセッサとをさらに含み得る。
【００４８】
ディスクドライブユニット４３５には、コンピュータ可読媒体４５０を含むことができ、コンピュータ可読媒体４５０は、本明細書に説明される方法論又は機能のうち任意の１つ以上を具現化しあるいは該任意の１つ以上により利用される命令４５５の１つ以上のセットを記憶する。命令４５５はさらに、コンピュータシステム４００による命令４５５の実行の間、メインメモリ４１０内及び／又はプロセッサ４０５内に、完全に又は少なくとも部分的に存在し得る。メインメモリ４１０及びプロセッサ４０５はさらに、マシン可読媒体、例えば、ＨＤＤ又はＳＳＤなどを構成する。
【００４９】
コンピュータ可読媒体４５０は、例示的な一実施形態において単一の媒体であるように示されるが、用語「コンピュータ可読媒体」は、１つ以上の命令セットを記憶する単一の媒体又は複数の媒体（例えば、集中化された又は分散されたデータベース、及び／又は関連付けられたキャッシュ及びサーバ）を含むように解されるべきである。用語「コンピュータ可読媒体」はさらに、マシンによる実行のための命令セットを記憶し、エンコードし、及び担体することができて、本出願の方法論のうち任意の１つ以上をマシンに実行させ、あるいは、上記の命令セットにより利用される又は該命令セットに関連付けられたデータ構造を記憶し、エンコードし、又は担体することができる任意の媒体を含むように解されるべきである。したがって、用語「コンピュータ可読媒体」は、これらに限られないが、ソリッドステートメモリ、光媒体及び磁気媒体を含むように解されるべきである。上記の媒体はさらに、限定ではなく、ハードディスク、フロッピーディスク、ＮＡＮＤ又はＮＯＲフラッシュメモリ、デジタルビデオディスク、ランダムアクセスメモリ（ＲＡＭ）、読取専用メモリ（ＲＯＭ）、ハードディスクドライブ（ＨＤＤ）、ソリッドステートディスク（ＳＳＤ）、及び同様のものを含み得る。
【００５０】
本明細書に説明される例示的な実施形態は、コンピュータ上にインストールされたコンピュータ実行可能命令（例えば、ソフトウェア）を含む動作環境において、ハードウェアにおいて、又はソフトウェアとハードウェアとの組み合わせにおいて実施されることができる。コンピュータ実行可能命令は、コンピュータプログラミング言語において書かれてもよく、あるいはファームウェアロジックにおいて具現化されてもよい。認識されている標準に合うプログラミング言語において書かれる場合、上記の命令は、様々なハードウェアプラットフォーム上で、及び、様々なオペレーティングシステムに対するインターフェースのために実行されることができる。これらに限定されないが、本願方法を実施するコンピュータソフトウェアプログラムは、任意数の適切なプログラミング言語、例えば、Ｃ、Ｃ＋＋、Ｃ＃、Ｐｙｔｈｏｎ、Ｇｏ、又は、他のコンパイラ、アセンブラ、インタプリタ、若しくは他のコンピュータの言語若しくはプラットフォームにおいて書かれることができる。
【００５１】
上述のとおり、ネットワーク化されたアーキテクチャにおいてサービスを提供する方法及びシステムが開示される。実施形態が、特定の例示的な実施形態を参照して説明されたが、本出願の範囲のより広い主旨及び範囲から逸脱することなく、上記の例示的な実施形態に対して様々な修正及び変更がなされ得ることが明らかであろう。したがって、明細書及び図面は、限定的ではなく例示的な意味において考慮されるべきである。
【図１】
2017507379.tif 000003
【図２】
2017507379.tif 000004
【図３】
2017507379.tif 000005
【図４】
2017507379.tif 000006
【国際調査報告】
2017507379.tif 000007