図面において、参照符号の最も左側の数字は、参照符号が最初に現れる図面を特定し得る。
前述のように、クラウドに基づくサービスを使用し得るクライアントデバイスは、典型的には、エンド・ツー・エンドの経験を提供するためのクライアント・サーバモデルの一部である。このモデルでは、クライアント側コンポーネントは、サービスを提供するササーバ側コンポーネントと通信する。クライアントデバイス情報の持続性は、サーバ、クライアントデバイス、又はサーバとクライアントデバイスとの双方に格納され得る。デバイス情報がサーバとクライアントデバイスとの双方で同一であることを確保するために、サーバ及びクライアントデバイスは、典型的には各エンドのソフトウェアコンポーネントを介して周期的に通信する必要がある。情報の持続性のこのモデルの1つのマイナス面は、クライアント側のソフトウェアコンポーネントがクライアントデバイスから削除された場合、クライアントとサーバとの間の通信が中断され、クライアント側で情報の持続性を維持することが困難になる点にある。
前述のことは、クライアントデバイスがサービスを受けるダミーコンソールとして使用される場合には、全ての情報がサーバエンド又はクラウドに格納され得るため、問題にならないことがある。このモデルは、ユーザが適切な認証でサービスを利用するためにいずれかのデバイスを使用することができるという点で便利である。しかし、このモデルでは、サーバに保持された情報は、特定のサービスの利用に特有のものであり、各サービスプロバイダにより別々に制御及び維持される。
現在、普遍的なデバイス情報を維持し、デバイス特有の情報を、それを必要とし得るいずれかのサービスに提供する機構を提供することができる単一のクラウド持続性サービスは存在しない。例えば、現在、特定のデバイスに関連する特定のアクティビティ又は状態(例えば、特殊なアクティビティ又は不審なアクティビティ、紛失した状態又は盗難された状態等)が存在し得ることを示す情報を1つのサービスから取得することができ、他のサービスが特定のデバイスによるサービスの使用に適したように対処することができるように、他のサービスに警告することができる単一のクラウド持続性サービスは存在しない。
ここに開示されるものは、登録サービスを共有するために、普遍的に中央集権的な方式でデバイス持続性情報をどのように管理するかという技術的問題を解決する方法、システム及びコンピュータプログラムプロダクトである。
図面を参照して実施例について説明する。同様の参照符号は、同一の要素又は機能的に同様の要素を示してもよい。特定の構成及び配置について説明するが、これは例示的な目的のみで行われることが認識されるべきである。関連分野の当業者は、本発明の要旨及び範囲を逸脱することなく、他の構成及び配置も使用され得ることを認識する。また、ここに記載のもの以外の様々な他のシステム及びアプリケーションで使用されてもよいことは、当業者に明らかである。
図1は、実施例による持続性クラウドサービス(PCS:persistence cloud service)システムの例示的なブロック図100を示している。PCSシステムは、ネットワーク108を介して通信するPCSサーバ102と、1つ以上の登録サービスデバイス104-1〜104-N(併せて104)と、1つ以上のクライアントデバイス(例えば、ユーザデバイス)106-1〜106-N(併せて106)とを含んでもよい。持続性クラウドサービスは、PCSサーバ102のコントローラにより実行又は制御されるソフトウェア及び/又はハードウェアにより実現されてもよい。説明の明瞭性及び簡潔性のために1つのみのPCSサーバが示されているが、持続性クラウドサービスは、例えば冗長性及び/又は負荷分散のために、複数の分散サーバコンピュータによりホストされてもよい。
登録サービスデバイス104は、例えば、ユーザがこれらのサービスを利用するためにログインすることを可能にするウェブに基づくサービスサーバを含んでもよいコンピューティングデバイスでもよい。このようなウェブに基づくサービスは、例えば、銀行サービス、ソーシャルネットワーキングサービス、ゲームサービス、ショッピングサービス、盗難防止サービス、アンチウィルスサービス、データバックアップサービス、データ記憶サービス等を含んでもよいが、これらに限定されない。これらのいくつかは、図2の登録サービスデバイス204として示されている。登録サービスデバイス104/204はまた、ここに更に詳細に説明するように、ネットワークトラヒックをルーティングするために使用されるルータを含んでもよい。
クライアントデバイス106は、例えば、パーソナルコンピュータ(PC:personal computer)、ラップトップコンピュータ、ウルトララップトップコンピュータ、タブレット、タッチパッド、ポータブルコンピュータ、ハンドヘルドコンピュータ、パームトップコンピュータ、パーソナルデジタルアシスタント(PDA:personal digital assistant)、電子リーダ、携帯電話、携帯電話/PDAの組み合わせ、テレビ、スマートデバイス(例えば、スマートフォン、スマートタブレット又はスマートテレビ)、モバイルインターネットデバイス(MID:mobile internet device)、メッセージングデバイス、データ通信デバイス、メディア再生デバイス、カメラ、ゲームコンソール等を含んでもよいが、これらに限定されないコンピューティングデバイスでもよい。クライアントデバイス106は、例えばネットワークで登録サービスデバイス104により提供されるサービスを利用するために、ソフトウェアの実行及び/又はハードウェアの制御を行うコントローラ及び他のコンポーネントを含んでもよい。例えば、クライアントデバイス106は、1つ以上の登録サービスデバイス104により提供されるウェブに基づくサービスにアクセスするための1つ以上のソフトウェアクライアントを含んでもよい。クライアントデバイス106は、更に又は代わりに、クライアントデバイスがこのようなウェブに基づくサービスにアクセスすることができるブラウザで実行するウェブインタフェースを含んでもよい。
ネットワーク108は、広域ネットワーク(WAN:Wide Area Network)、ローカルエリアネットワーク(LAN:Local Area Network)等のようないずれかの有線又は無線ネットワークでもよい。一例として、ネットワーク108は、インターネットのような分散型公衆ネットワークでもよい。PCSサーバ102、登録サービス104及びクライアントデバイス106は、有線又は無線接続を介してネットワークに接続される。
実施例によれば、以下に更に詳細に説明するように、どのサービス(及び、例えばこれらのサービスのどのアドレス)にデバイス持続性情報が提供されるべきか、また、どのサービスからデバイス持続性情報の更新が期待されるかを持続性クラウドサービスが認識するために、持続性クラウドサービスに加入することを希望するサービスのサービスプロバイダは、事前に持続性クラウドサービスに登録してもよい。登録サービスデバイス104は、PCSサーバ102と通信するためにアプリケーションプログラムインタフェース(API:application program interface)をそれぞれ必要としてもよい。登録サービスデバイス104とPCSサーバ102との間のデータ通信は、当業者に認識されるようないずれかの方式で実行されてもよい(例えば、標準的なサーバ・サーバ間の通信が使用されてもよい)。このような登録サービスを使用するクライアントデバイスの登録について説明する。
図3は、実施例に従ってここに記載の持続性クラウドサービスにクライアントデバイスを登録する例示的な処理フローを示すシーケンス図300である。クライアントデバイス306のユーザは、例えば、クライアントデバイス306で実行するクライアントソフトウェア又はクライアントデバイス306のブラウザで実行するウェブに基づくクライアントを介して、登録サービスデバイス304によりホストされた登録サービス(例えば、銀行サービス又はソーシャルネットワーキングサービス)にログインしてもよい(320)。登録サービスデバイス304は、クライアントデバイス306からクライアントデバイスIDを要求してもよく(322)、クライアントデバイス306は、クライアントデバイスIDを登録サービスデバイス304に提供してもよい(324)。或いは、クライアントデバイスIDは、ログイン320の間に含まれてもよい。登録サービスデバイス304は、提供されたクライアントデバイスIDに関連するデバイスが、その関連する登録サービスに関して以前に持続性クラウドサービスを選択しているか否かを認識するために検査してもよい(326)。クライアントデバイスIDに関連するクライアントデバイスが以前に持続性クラウドサービスを選択していない場合、登録サービスデバイス304は、この特定の登録サービスに関して持続性クラウドサービスにクライアントデバイス306を登録したいか否かをクライアントデバイス306のユーザに問い合わせる要求をクライアントデバイス306に送信してもよい(328)。クライアントデバイス306は、選択判断を登録サービスデバイス304に送信してもよい(330)。判断が持続性クラウドサービスを選択するものである場合、登録サービスデバイス304は、クライアントデバイスIDに関連するクライアントデバイスデータ(例えば、登録データ)をPCSサーバ302に提供してもよく(332)、また、クライアントデバイスIDに関連するデバイスが既に持続性クラウドサービスに登録していることを認識するために、関連するクライアントデバイス及び/又は登録データ自体を格納してもよい。PCSサーバ302は、クライアントデバイスの選択データの受信の確認を登録サービスデバイス304に送信してもよい(334)。登録サービスデバイス304は、選択の確認をクライアントデバイス306に送信してもよい(336)。
実施例によれば、登録サービスデバイス304によりPCSサーバ302に提供されるクライアントデバイスの登録データは、例えば、クライアントデバイスID、クライアントデバイス状態情報、アフィリエイトID(affiliate ID)、及びアフィリエイトポリシーを含んでもよい。クライアントデバイスIDは、例えば、クライアントデバイス306の媒体アクセス制御(MAC:Media Access Control)アドレスのようなクライアントデバイス306の固有のハードウェア識別子、又はクライアントデバイス306の他の識別子でもよい(又はこれに基づくもの若しくはこれから導かれたものでもよい)。クライアントデバイス状態情報は、情報を提供する特定の登録サービスに関してクライアントデバイス306の状態を適切に示すいずれかの情報でもよい。例えば、クライアントデバイス状態情報は、クライアントデバイス306の初期の登録の際には、おそらく何らかの種類の“正常”の指示でもよい。アフィリエイトIDは、情報を送信する登録サービスの固有の識別子でもよい。アフィリエイトポリシーは、現在のクライアントデバイス状態に基づいて持続性クラウドサービスが従うポリシーを含んでもよい。例えば、アフィリエイトポリシーは、登録サービスデバイス304からの後のクライアントデバイスの更新に基づいて、どのように持続性クラウドサービスがPCSサーバ302においてクライアントデバイス状態を更新するべきかに関する命令を含んでもよい。アフィリエイトポリシーはまた、PCSサーバ302における現在のクライアントデバイス状態に基づいて登録サービスデバイス304に提供されるクライアントデバイス持続性情報としてどの情報を含めるかに関する命令を含んでもよい。
図4は、実施例による、特定のクライアントデバイスの持続性情報に関連する例示的なデータのレコード400を示している。この例示的なデータのレコードは、例えば、登録クライアントデバイス106/306毎に、PCSサーバ102/302に格納されてもよい。データのレコード400は、クライアントデバイスID440(例えば、クライアントデバイス106/306のMACアドレス)と、クライアントデバイス情報442と、クライアントデバイス106/306が持続性クラウドサービスでの使用に登録されている登録サービスのアフィリエイトID444-1〜444N及びアフィリエイトポリシー446-1〜446-Nとを含んでもよい。
クライアントデバイス情報(又は持続性情報)442は、クライアントデバイス106/306の現在の状態を示すいずれかの情報でもよい。例えば、クライアントデバイス情報442は、クライアントデバイスが正常の状態にあるという指示、クライアントデバイスが紛失した又は盗難されたという指示、クライアントデバイスのアクティビティ(例えば、ログインアクティビティ)が不審であるという指示、クライアントデバイスの使用が規定の一式のポリシーに従うべきであるという指示、及び/又はクライアントデバイスの位置の指示を含んでもよいが、これらに限定されない。他のクライアントデバイス情報又は状態も考えられてもよい。PCSサーバ102/302により維持されるクライアントデバイス情報442は、PCSサーバ102/302が特定のクライアントデバイスについて登録サービスデバイス104/304から受信した更新に依存してもよい。更新は、以下に更に詳細に説明するように、登録サービスにより提供される特定のサービスに依存してもよい。
図5は、実施例に従ってここに記載の持続性クラウドサービスからクライアントデバイス持続性情報を提供する例示的な処理フローを示すシーケンス図500である。図5に示す最初のログインシーケンスは、図3に示すものと同様である。しかし、クライアントデバイス506が登録サービスデバイス504-1に関連する登録サービスに関して持続性クラウドサービスに既に登録している場合、登録サービスデバイス504-1は、クライアントデバイス506に関する更新されたクライアント情報をPCSサーバ502に送信してもよく、及び/又はPCSサーバ502からクライアントデバイス506に関する現在のクライアントデバイス情報を要求してもよい(550)。例えば、登録サービスへのログインが正常である場合、登録サービスデバイス504-1は、クライアントデバイス506でどのようにそのサービスに対処するべきかを決定するために、そのことをPCSサーバ502に示してもよく、PCSサーバ502から現在のクライアントデバイス情報を要求してもよい。しかし、ログイン手順が(仮にあったとしても)正確なパスワードに達する前に複数の不正確なパスワードを受け取った場合、登録サービスデバイス504-1は、クライアントデバイス506で“不審なアクティビティ”が存在したことをPCSサーバ502に示してもよい。現在のクライアントデバイス情報のその更新又は要求において、登録サービスデバイス504-1は、PCSサービスに対して登録サービスデバイス504-1を識別するために、そのアフィリエイトIDを含めてもよい。実施例では、PCSサーバ502は、提供されたアフィリエイトIDに基づいて、登録サービスデバイス504-1に関連するサービスが実際に持続性クラウドサービスに登録されていることを確認してもよい。PCSサーバ502は、登録サービスデバイス504-1により提供された更新に基づいてクライアントデバイス506についてのそのデータレコードのクライアントデバイス情報を更新してもよい(552)。PCSサーバ502は、現在のクライアントデバイス情報を登録サービスデバイス504-1に送信してもよい(554)。例えば、他の登録サービスデバイス504-2が、クライアントデバイス506が不審なログインアクティビティを有すること、又は紛失若しくは盗難として報告されていること、又は他の種類の警告若しくは異常状態を有するものとして報告されていることを示す更新を以前にPCSサーバ502に送信している場合(555)、PCSサーバ502により登録サービスデバイス504-1に送信される現在のクライアントデバイス情報は、その情報を示す。そうでない場合、PCSサーバ502により送信される現在のクライアントデバイス情報は、現在のクライアントデバイス状態が正常であることを示す。
登録サービスデバイス504-1は、PCSサーバ502により提供された現在のクライアントデバイス情報に基づく、クライアントデバイス506に提供されるサービスのレベルを決定してもよい。登録サービスデバイス504-1は、決定されたサービスのレベルの指示をクライアントデバイス506に送信してもよい(558)。実施例によれば、サービスのレベルは、登録サービスへの完全なアクセスの許可、登録サービスへのアクセスの拒否、登録サービスへの制限されたアクセスの提供、及び/又は更なるセキュリティアクションの呼び出しを含んでもよいが、これらに限定されない。他のサービスのレベルも考えられてもよい。例えば、クライアントデバイス506において最近の“不審なアクティビティ”が存在したことを現在のクライアントデバイス情報が示す場合、登録サービスは、まずクライアントデバイス506で更なるセキュリティアクションを呼び出し、どのレベルのアクセスをクライアントデバイス506において提供するか(例えば、完全、制限又はなし)を決定してもよい。更なるセキュリティアクションの呼び出しは、例えば、更なる認証検査の実行、登録サービスに関連するアカウントのロック、クライアントデバイス506のロック、及び/又はクライアントデバイス506からのデータの削除を含んでもよいが、これらに限定されない。他の更なるセキュリティアクションも考えられてもよい。他の例では、クライアントデバイス506が紛失又は盗難を報告されていることを現在のクライアントデバイス情報が示す場合、登録サービスは、クライアントデバイス506において登録サービスへのアクセスを直ちに制限又は拒否してもよい。登録サービスへのアクセスの制限は、例えば、行われ得るアクションの種類の制限、行われ得るアクションに関与する量の制限、及び/又はアクションが行われ得るローカルエリアの制限を含んでもよいが、これらに限定されない。他の種類のアクセスの制限も考えられてもよい。銀行サービスの例に従って、行われ得るアクションの種類の制限は、例えば、預金を許可するが引き出しを許可しないことを含んでもよく、量の制限は、例えば、少額の取引のみの許可及び/又は取引の数の制限を含んでもよく、アクションが行われ得るローカルエリアの制限は、例えば、デバイスが正当なユーザのローカル銀行の規定の半径内にある場合にのみ取引を許可することを含んでもよい。
図6は、実施例に従ってここに記載の持続性クラウドサービスからルータデバイスにクライアントデバイス持続性情報を提供する例示的な処理フロー600を示すシーケンス図である。ルータは、データパケットが転送されるべき次のネットワークポイントを決定するデバイスである。前述の登録サービスデバイス504のような登録サービスデバイスは、ルータでもよい。クライアントデバイス606がネットワークにアクセスするために登録ルータ604にアクセスした場合、クライアントデバイス606のクライアントIDは、登録ルータ604に送信されてもよい(634)。登録ルータ604は、現在のクライアントデバイス情報について要求をPCSサーバ602に送信してもよい(650)。この要求において、ルータ604は、PCSサービスに対してルータを識別するルータ識別子を提供してもよい。PCSサーバ602は、現在のクライアントデバイス情報を登録ルータ604に送信してもよい(654)。現在のクライアントデバイス情報は、例えば、クライアントデバイスが正常の状態にあるという指示、クライアントデバイスが紛失した又は盗難されたという指示、クライアントデバイスのアクティビティが不審であるという指示、クライアントデバイスの使用が規定の一式のポリシーに従うべきであるという指示、及び/又はクライアントデバイスの位置の指示等のような、デバイスに割り当てられたデバイス状態を含んでもよい。他の現在のクライアントデバイス情報又は状態も考えられてもよい。登録ルータ604は、受信した現在のデバイス情報に基づいてクライアントデバイス606に提供するサービスのレベルを決定してもよい(656)。登録ルータ604は、決定されたサービスのレベルをクライアントデバイス606に提供してもよい(658)。ルータが提供し得るサービスのレベルは、例えば、完全なネットワークアクセスの許可、ネットワークアクセスの拒否、制限されたネットワークアクセスの提供、及び/又は更なるセキュリティアクションの呼び出し等を含んでもよい。他のサービスのレベルも考えられてもよい。
図7は、実施例に従って持続性クラウドサービスに登録されたサービスの観点から、ここに記載のシステムの例示的な処理フロー700を示すフローチャートである。702において、登録サービスデバイスは、クライアントデバイスから、登録サービスに対してクライアントデバイスを識別するデバイス識別子を受信する。これは、例えば、クライアントデバイスのデバイスが登録サービスにログインしたときに受信されてもよく、或いは、ログインの後に登録サービスにより要求されてもよい。704において、登録サービスデバイスは、持続性クラウドサービスに関連するサーバから、デバイス識別子に関連する現在のクライアントデバイス持続性情報を要求する。706において、登録サービスデバイスは、PCSサーバから現在のクライアントデバイス持続性情報を受信する。前述のように、クライアントデバイス情報又は持続性情報は、クライアントデバイスの現在の状態を示すいずれかの情報でもよい。708において、登録サービスデバイスは、持続性情報に基づいてクライアントデバイスに提供するサービスのレベルを決定してもよい。710において、登録サービスデバイスは、決定されたサービスのレベルをクライアントデバイスに提供してもよい。前述のように、サービスのレベルは、例えば、登録サービスへの完全なアクセスの許可、登録サービスへのアクセスの拒否、登録サービスへの制限されたアクセスの提供、及び/又は更なるセキュリティアクションの呼び出し等を含んでもよい。
図8は、実施例に従って持続性クラウドサービスに登録されたサービスの観点から、ここに記載の持続性クラウドサービスにクライアントを登録する例示的な処理フロー800を示すフローチャートである。クライアントデバイスを介して登録サービスにログインすると、802において、登録サービスデバイスは、クライアントデバイスが登録サービスに関して持続性クラウドサービスに登録されているか否かを決定してもよい。804において、クライアントデバイスが持続性クラウドサービスに登録されていないという決定に応じて、登録サービスデバイスは、クライアントデバイスを持続性クラウドサービスに登録するか否かを問い合わせる要求をクライアントデバイスに送信してもよい。806において、クライアントデバイスが持続性クラウドサービスに登録されるべきであるという決定に応じて、登録サービスデバイスは、クライアントデバイスに関連する登録情報をPCSサーバに送信してもよい。前述のように、登録情報は、例えば、クライアントデバイスのクライアントデバイスID、クライアントデバイス状態情報、登録サービスを識別するアフィリエイトID、及び関連するアフィリエイトポリシーを含んでもよい。
図9は、実施例に従って持続性クラウドサービスに登録されたサービスの観点から、ここに記載の持続性クラウドサービスを更新する例示的な処理フロー900を示すフローチャートである。クライアントデバイスを介して登録サービスにログインする間に、902において、登録サービスデバイスは、クライアントデバイスから、クライアントデバイスのユーザのログイン情報を受信してもよい。904において、登録サービスデバイスは、ログイン情報に基づいて、クライアントデバイス状態変化通知又は更新をPCSサーバに提供してもよい。前述のように、クライアントデバイス状態変化の更新は、情報を提供する特定の登録サービスに関してクライアントデバイスの状態を適切に示すいずれかの情報を含んでもよい。例えば、クライアントデバイス状態変化の更新は、例えば、クライアントデバイスが正常の状態にあること、クライアントデバイスが紛失したこと又は盗まれたこと、クライアントデバイスのアクティビティ(例えば、ログインアクティビティ)が不審であること、クライアントデバイスの使用が規定の一式のポリシーに従うべきであること、及び/又はクライアントデバイスの位置の指示等を示してもよい。
図10は、実施例に従ってPCSサーバの観点から、ここに記載のシステムの例示的な処理フロー1000を示すフローチャートである。1002において、PCSサーバは、持続性クラウドサービスに登録された第1のサービスに関連する第1のコンピューティングデバイスから、持続性クラウドサービスに登録されたクライアントデバイスについてのクライアントデバイスの更新を受信してもよい。1004において、PCSサーバは、クライアントデバイスの更新に基づいて、クライアントデバイスに関連するクライアントデバイス持続性情報を更新してもよい。1006において、PCSサーバは、持続性クラウドサービスに登録された第2のサービスに関連する第2のコンピューティングデバイスから、クライアントデバイス持続性情報の要求を受信してもよい。1008において、PCSサーバは、クライアントデバイス持続性情報を第2のコンピューティングデバイスに提供してもよい。
図11は、実施例に従ってPCSサーバの観点から、ここに記載の持続性クラウドサービスにクライアントを登録する例示的な処理フロー1100を示すフローチャートである。1102において、PCSサーバは、持続性クラウドサービスに登録されたサービスに関連するコンピューティングデバイスから、クライアントデバイスの登録情報を受信してもよい。1104において、PCSサーバは、登録情報を格納してもよい。
図12は、実施例による例示的なPCSサーバ1202のブロック図である。PCSサーバ1202は、例えば、それぞれ図1、3、5又は6のPCSサーバ102、302、502又は602を表してもよい。図示のように、PCSサーバ1202は、バス1268又は同様の機構により、メモリ1262、1つ以上の2次記憶デバイス1264、及び通信インタフェース1266に接続されたプロセッサ又はコントローラ1260を含んでもよい。PCSサーバ1202は、任意選択で、例えばシステム管理者により使用されるユーザインタフェースコンポーネント1270を含んでもよい。ユーザインタフェースコンポーネント1270は、例えば、タッチスクリーン、ディスプレイ、1つ以上のユーザ入力コンポーネント(例えば、キーボード、マウス等)、スピーカ等、又はこれらのいずれかの組み合わせを含んでもよい。しかし、図示しないが、PCSサーバ1202は更なるコンポーネントを含んでもよい点に留意すべきである。プロセッサ1260は、マイクロプロセッサ、デジタルASIC、FPGA、又は同様のハードウェアデバイスでもよい。実施例では、プロセッサ1260は、マイクロプロセッサでもよく、ソフトウェアは、ここに記載の機能を提供するためにプロセッサ1260により実行されるため、メモリ1262に格納又はロードされてもよい。1つ以上の2次記憶デバイス1264は、例えば、1つ以上のハードドライブ等でもよく、プロセッサ1260により実行されるロジック1272を格納してもよい。通信インタフェース1266は、ハードウェア又はハードウェアとソフトウェアとの組み合わせで実現されてもよい。通信インタフェース1266は、図1に示すネットワーク108のようなネットワークへの有線又は無線ネットワークインタフェースを提供してもよい。
図13は、実施例による例示的な登録サービスデバイス1304のブロック図である。登録サービスデバイス1034は、例えば、それぞれ図1、2、3、5又は6の登録サービスデバイス104、204、304、504又は604のいずれかを表してもよい。図示のように、登録サービスデバイス1304は、バス1368又は同様の機構により、メモリ1362、1つ以上の2次記憶デバイス1364、及び通信インタフェース1366に接続されたプロセッサ又はコントローラ1360を含んでもよい。登録サービスデバイス1304は、任意選択で、例えばシステム管理者により使用されるユーザインタフェースコンポーネント1370を含んでもよい。ユーザインタフェースコンポーネント1370は、例えば、タッチスクリーン、ディスプレイ、1つ以上のユーザ入力コンポーネント(例えば、キーボード、マウス等)、スピーカ等、又はこれらのいずれかの組み合わせを含んでもよい。しかし、図示しないが、登録サービスデバイス1304は更なるコンポーネントを含んでもよい点に留意すべきである。プロセッサ1360は、マイクロプロセッサ、デジタルASIC、FPGA、又は同様のハードウェアデバイスでもよい。実施例では、プロセッサ1360は、マイクロプロセッサでもよく、ソフトウェアは、ここに記載の機能を提供するためにプロセッサ1360により実行されるため、メモリ1362に格納又はロードされてもよい。1つ以上の2次記憶デバイス1364は、例えば、1つ以上のハードドライブ等でもよく、プロセッサ1360により実行されるロジック1372を格納してもよい。通信インタフェース1366は、ハードウェア又はハードウェアとソフトウェアとの組み合わせで実現されてもよい。通信インタフェース1366は、図1に示すネットワーク108のようなネットワークへの有線又は無線ネットワークインタフェースを提供してもよい。
図14は、実施例による例示的なクライアントデバイス1406のブロック図である。クライアントデバイス1406は、例えば、それぞれ図1、3、5又は6のクライアントデバイス106、306、506又は606を表してもよい。図示のように、クライアントデバイス1406は、バス1468又は同様の機構により、メモリ1462、1つ以上の2次記憶デバイス1464、及び通信インタフェース1466に接続されたプロセッサ又はコントローラ1460を含んでもよい。クライアントデバイス1406はまた、例えばクライアントデバイスのユーザにより使用されるユーザインタフェースコンポーネント1470を含んでもよい。ユーザインタフェースコンポーネント1470は、例えば、タッチスクリーン、ディスプレイ、1つ以上のユーザ入力コンポーネント(例えば、キーボード、マウス等)、スピーカ等、又はこれらのいずれかの組み合わせを含んでもよい。しかし、図示しないが、クライアントデバイス1406は更なるコンポーネントを含んでもよい点に留意すべきである。プロセッサ1460は、マイクロプロセッサ、デジタルASIC、FPGA、又は同様のハードウェアデバイスでもよい。実施例では、プロセッサ1460は、マイクロプロセッサでもよく、ソフトウェアは、ここに記載の機能を提供するためにプロセッサ1460により実行されるため、メモリ1462に格納又はロードされてもよい。1つ以上の2次記憶デバイス1464は、例えば、1つ以上のハードドライブ等でもよく、プロセッサ1460により実行されるロジック1472を格納してもよい。通信インタフェース1466は、ハードウェア又はハードウェアとソフトウェアとの組み合わせで実現されてもよい。通信インタフェース1466は、図1に示すネットワーク108のようなネットワークへの有線又は無線ネットワークインタフェースを提供してもよい。
方法及びシステムは、ここでは、機能、特徴及びこれらの関係を示す機能構成単位によって開示されている。これらの機能構成単位の境界の少なくともいくつかは、説明の便宜上でここでは任意に規定されている。指定された機能及びその関係が適切に実行される限り、別の境界が規定されてもよい。様々な実施例がここに開示されたが、これらは例として提示されていることが分かる。特許請求の範囲は、ここに開示された例示的な実施例のいずれかにより限定されるべきではない。
前述のように、ここに開示された1つ以上の機能は、ディスクリート及び集積回路ロジック、特定用途向け集積回路(ASIC)ロジック、及びマイクロコントローラを含み、ハードウェア、ソフトウェア、ファームウェア及びこれらの組み合わせで実現されてもよく、ドメイン特有の集積回路パッケージの一部又は集積回路パッケージの組み合わせとして実現されてもよい。ここで使用されるソフトウェア及びファームウェアという用語は、コンピュータシステムに対してここに開示された1つ以上の機能及び/又は機能の組み合わせを実行させるため、格納されたコンピュータ実行可能命令のようなコンピュータプログラムロジックを有する少なくとも1つのコンピュータ読み取り可能媒体を含むコンピュータプログラムプロダクトを示す。コンピュータ読み取り可能媒体は、過渡的でもよく、過渡的でなくてもよい。過渡的なコンピュータ読み取り可能媒体の例は、ローカルエリアネットワーク又は広域ネットワークを通じて、或いはインターネットのようなネットワークを通じて、無線周波数又は導体で送信されるデジタル信号でもよい。過渡的でないコンピュータ読み取り可能媒体の例は、コンパクトディスク、フラッシュメモリ、又は他のデジタル記憶デバイスでもよい。
この明細書及び特許請求の範囲で使用されるときに、“1つ以上”という用語で結合される項目のリストは、リストの項目のいずれかの組み合わせを意味してもよい。例えば、“A、B又はCのうち1つ以上”という用語は、A、B、C、A及びB、A及びC、B及びC、又はA、B及びCを意味してもよい。
以下の例は、更なる実施例に関する。
例1は、持続性クラウドサービスに登録されたサービスに関連するコンピューティングデバイスを含んでもよく、プロセッサと、プロセッサと通信するメモリとを有し、メモリは、プロセッサに対して、クライアントデバイスから、登録サービスに対してクライアントデバイスを識別するデバイス識別子を受信し、持続性クラウドサービスに関連する持続性クラウドサーバから、デバイス識別子に関連する持続性情報を要求し、持続性情報を受信し、持続性情報に基づいてクライアントデバイスに提供するサービスのレベルを決定し、サービスのレベルをクライアントデバイスに提供するように指示するよう適合された複数の処理命令を格納する。
例2は、例1の対象を含んでもよく、サービスのレベルを提供することは、サービスのレベルの指示をクライアントデバイスに提供することを有し、サービスのレベルの指示は、登録サービスに関連するクライアントアプリケーションがどのようにクライアントデバイスにおいて対処するべきかを示す。
例3は、例1〜2のいずれか1つの対象を含んでもよく、処理命令は、プロセッサに対して、クライアントデバイスが持続性クラウドサービスに登録されているか否かを決定し、クライアントデバイスが持続性クラウドサービスに登録されていないという決定に応じて、クライアントデバイスを持続性クラウドサービスに登録するか否かを問い合わせる要求をクライアントデバイスに送信し、クライアントデバイスが持続性クラウドサービスに登録されるべきであるという決定に応じて、クライアントデバイスに関連する登録情報を持続性クラウドサーバに送信するように指示するよう更に適合される。
例4は、例3の対象を含んでもよく、登録情報は、デバイス識別子と、登録サービスを識別するサービス識別子と、クライアントデバイスに関連する持続性情報に基づいて持続性クラウドサービスが従う登録サービスのポリシーとを含む。
例5は、例1〜4のいずれか1つの対象を含んでもよく、デバイス識別子は、クライアントデバイスの媒体アクセス制御(MAC)アドレスに基づく。
例6は、例1〜5のいずれか1つの対象を含んでもよく、持続性情報は、クライアントデバイスに割り当てられたデバイス状態を含む。
例7は、例6の対象を含んでもよく、デバイス状態は、クライアントデバイスが正常の状態にあるという指示、クライアントデバイスが紛失した又は盗難されたという指示、クライアントデバイスのアクティビティが不審であるという指示、クライアントデバイスの使用が規定の一式のポリシーに従うべきであるという指示、及びクライアントデバイスの位置の指示のうち1つ以上を含む。
例8は、例1〜7のいずれか1つの対象を含んでもよく、持続性情報の要求は、登録サービスを識別するサービス識別子を持続性クラウドサーバに提供することを含む。
例9は、例1〜8のいずれか1つの対象を含んでもよく、サービスのレベルは、登録サービスへの完全なアクセスの許可、登録サービスへのアクセスの拒否、登録サービスへの制限されたアクセスの提供、及び更なるセキュリティアクションの呼び出しのうち1つ以上を含む。
例10は、例9の対象を含んでもよく、登録サービスへの制限されたアクセスの提供は、行われ得るアクションの種類の制限、行われ得るアクションに関与する量の制限、及びアクションが行われ得るローカルエリアの制限のうち1つ以上を含む。
例11は、例9〜10のいずれか1つの対象を含んでもよく、更なるセキュリティアクションの呼び出しは、更なる認証検査の実行、登録サービスに関連するアカウントのロック、クライアントデバイスのロック、及びクライアントデバイスからのデータの削除のうち1つ以上を含む。
例12は、例1〜11のいずれか1つの対象を含んでもよく、処理命令は、プロセッサに対して、クライアントデバイスから、クライアントデバイスのユーザのログイン情報を受信し、ログイン情報に基づいてデバイス状態変化通知を持続性クラウドサーバに提供するように指示するよう更に適合される。
例13は、持続性クラウドサービスに登録されたサービスに関連する装置を含んでもよく、クライアントデバイスから、登録サービスに対してクライアントデバイスを識別するデバイス識別子を受信する手段と、持続性クラウドサービスに関連する持続性クラウドサーバから、デバイス識別子に関連する持続性情報を要求する手段と、持続性情報を受信する手段と、持続性情報に基づいてクライアントデバイスに提供するサービスのレベルを決定する手段と、サービスのレベルをクライアントデバイスに提供する手段とを有する。
例14は、持続性クラウドサービスに登録されたルータを含んでもよく、プロセッサと、プロセッサと通信するメモリとを有し、メモリは、プロセッサに対して、クライアントデバイスから、クライアントデバイスを識別するデバイス識別子を受信し、持続性クラウドサービスに関連する持続性クラウドサーバから、デバイス識別子に関連する持続性情報を要求し、持続性情報を受信し、持続性情報に基づいてクライアントデバイスに提供するサービスのレベルを決定し、サービスのレベルをクライアントデバイスに提供するように指示するよう適合された複数の処理命令を格納する。
例15は、例14の対象を含んでもよく、持続性情報は、クライアントデバイスに割り当てられたデバイス状態を含む。
例16は、例15の対象を含んでもよく、デバイス状態は、クライアントデバイスが正常の状態にあるという指示、クライアントデバイスが紛失した又は盗難されたという指示、クライアントデバイスのアクティビティが不審であるという指示、クライアントデバイスの使用が規定の一式のポリシーに従うべきであるという指示、及びクライアントデバイスの位置の指示のうち1つ以上を含む。
例17は、例14〜16のいずれか1つの対象を含んでもよく、持続性情報の要求は、登録ルータを識別するルータ識別子を持続性クラウドサーバに提供することを含む。
例18は、例14〜17のいずれか1つの対象を含んでもよく、サービスのレベルは、完全なネットワークアクセスの許可、ネットワークアクセスの拒否、制限されたネットワークアクセスの提供、及び更なるセキュリティアクションの呼び出しのうち1つ以上を含む。
例19は、クライアントデバイスにサービスを提供する方法を含んでもよく、クライアントデバイスから、クライアントデバイスを識別するデバイス識別子を受信するステップと、持続性クラウドサービスに関連する持続性クラウドサーバから、デバイス識別子に関連する持続性情報を要求するステップと、持続性情報を受信するステップと、持続性情報に基づいてクライアントデバイスに提供するサービスのレベルを決定するステップと、サービスのレベルをクライアントデバイスに提供するステップとを有する。
例20は、例19の対象を含んでもよく、サービスのレベルを提供するステップは、サービスのレベルの指示をクライアントデバイスに提供するステップを有し、サービスのレベルの指示は、持続性クラウドサービスに登録されたサービスに関連するクライアントアプリケーションがどのようにクライアントデバイスにおいて対処するべきかを示す。
例21では、例19〜20のいずれか1つの対象は、任意選択で、クライアントデバイスが持続性クラウドサービスに登録されているか否かを決定するステップと、クライアントデバイスが持続性クラウドサービスに登録されていないという決定に応じて、クライアントデバイスを持続性クラウドサービスに登録するか否かを問い合わせる要求をクライアントデバイスに送信するステップと、クライアントデバイスが持続性クラウドサービスに登録されるべきであるという決定に応じて、クライアントデバイスに関連する登録情報を持続性クラウドサーバに送信するステップとを含んでもよい。
例22では、例19〜21のいずれか1つの対象は、任意選択で、クライアントデバイスから、クライアントデバイスのユーザのログイン情報を受信するステップと、ログイン情報に基づいてデバイス状態変化通知を持続性クラウドサーバに提供するステップとを含んでもよい。
例23は、過渡的でないコンピュータ読み取り可能媒体を含んでもよく、コンピューティングデバイスのプロセッサに対して、クライアントデバイスから、クライアントデバイスを識別するデバイス識別子を受信し、持続性クラウドサービスに関連する持続性クラウドサーバから、デバイス識別子に関連する持続性情報を要求し、持続性情報を受信し、持続性情報に基づいてクライアントデバイスに提供するサービスのレベルを決定し、サービスのレベルをクライアントデバイスに提供するように命令する制御ロジックを格納する。
例24は、例23の対象を含んでもよく、サービスのレベルを提供することは、サービスのレベルの指示をクライアントデバイスに提供することを有し、サービスのレベルの指示は、持続性クラウドサービスに登録されたサービスに関連するクライアントアプリケーションがどのようにクライアントデバイスにおいて対処するべきかを示す。
例25は、例23〜24のいずれか1つの対象を含んでもよく、制御ロジックは、プロセッサに対して、クライアントデバイスが持続性クラウドサービスに登録されているか否かを決定し、クライアントデバイスが持続性クラウドサービスに登録されていないという決定に応じて、クライアントデバイスを持続性クラウドサービスに登録するか否かを問い合わせる要求をクライアントデバイスに送信し、クライアントデバイスが持続性クラウドサービスに登録されるべきであるという決定に応じて、クライアントデバイスに関連する登録情報を持続性クラウドサーバに送信するように更に命令するよう実施される。
例26は、例19〜21のいずれか1つの対象を含んでもよく、制御ロジックは、プロセッサに対して、クライアントデバイスから、クライアントデバイスのユーザのログイン情報を受信し、ログイン情報に基づいてデバイス状態変化通知を持続性クラウドサーバに提供するように更に命令するよう実施される。
例27は、持続性クラウドサービスに関連する持続性クラウドサーバを含んでもよく、プロセッサと、プロセッサと通信するメモリとを有し、メモリは、プロセッサに対して、持続性クラウドサービスに登録された第1のサービスに関連する第1のコンピューティングデバイスから、持続性クラウドサービスに登録されたクライアントデバイスについてのクライアントデバイスの更新を受信し、クライアントデバイスの更新に基づいてクライアントデバイスに関連するクライアントデバイス持続性情報を更新し、持続性クラウドサービスに登録された第2のサービスに関連する第2のコンピューティングデバイスから、クライアントデバイス持続性情報の要求を受信し、クライアントデバイス持続性情報を第2のコンピューティングデバイスに提供するように指示するよう適合された複数の処理命令を格納する。
例28は、例27の対象を含んでもよく、第2のコンピューティングデバイスは、ルータである。
例29は、例27の対象を含んでもよく、クライアントデバイス持続性情報の要求を受信することは、第2の登録サービスを識別するサービス識別子を受信することを含む。
例30は、例29の対象を含んでもよく、処理命令は、プロセッサに対して、受信したサービス識別子に基づいて、第2の登録サービスが持続性クラウドサービスに登録されていることを確認するように指示するよう更に適合される。
例31は、例27〜30のいずれか1つの対象を含んでもよく、クライアントデバイス持続性情報は、クライアントデバイスに割り当てられたクライアントデバイス状態を含む。
例32は、例31の対象を含んでもよく、クライアントデバイス状態は、クライアントデバイスが正常の状態にあるという指示、クライアントデバイスが紛失した又は盗難されたという指示、クライアントデバイスのアクティビティが不審であるという指示、クライアントデバイスの使用が規定の一式のポリシーに従うべきであるという指示、及びクライアントデバイスの位置の指示のうち1つ以上を含む。
例33は、例31〜32のいずれか1つの対象を含んでもよく、処理命令は、プロセッサに対して、第2のコンピューティングデバイスから、クライアントデバイスの登録情報を受信し、登録情報は、クライアントデバイスを識別するデバイス識別子と、第2の登録サービスを識別するサービス識別子と、クライアントデバイス状態に基づいて持続性クラウドサービスが従う第2の登録サービスのポリシーセットとを含み、登録情報を格納するように指示するよう更に適合される。
例34は、例33の対象を含んでもよく、デバイス識別子は、クライアントデバイスの媒体アクセス制御(MAC)アドレスに基づく。
例35は、例33〜34のいずれか1つの対象を含んでもよく、ポリシーセットは、どのように持続性クラウドサーバが第2のサーバからの後のクライアントデバイスの更新に基づいてクライアントデバイス状態を更新するべきかに関する命令と、クライアントデバイス状態に基づいて第2のサーバに提供されるクライアントデバイス持続性情報としてどの情報を含めるかに関する命令との一方又は双方を含む。
例36は、持続性クラウドサービスに関連する装置を含んでもよく、持続性クラウドサービスに登録された第1のサービスに関連する第1のコンピューティングデバイスから、持続性クラウドサービスに登録されたクライアントデバイスについてのクライアントデバイスの更新を受信する手段と、クライアントデバイスの更新に基づいてクライアントデバイスに関連するクライアントデバイス持続性情報を更新する手段と、持続性クラウドサービスに登録された第2のサービスに関連する第2のコンピューティングデバイスから、クライアントデバイス持続性情報の要求を受信する手段と、クライアントデバイス持続性情報を第2のコンピューティングデバイスに提供する手段とを有する。
例37は、登録サービスに対して持続性クラウドサービスを提供する方法を含んでもよく、持続性クラウドサービスに登録された第1のサービスに関連する第1のコンピューティングデバイスから、持続性クラウドサービスに登録されたクライアントデバイスについてのクライアントデバイスの更新を受信するステップと、クライアントデバイスの更新に基づいてクライアントデバイスに関連するクライアントデバイス持続性情報を更新するステップと、持続性クラウドサービスに登録された第2のサービスに関連する第2のコンピューティングデバイスから、クライアントデバイス持続性情報の要求を受信するステップと、クライアントデバイス持続性情報を第2のコンピューティングデバイスに提供するステップとを有する。
例38では、例37の対象は、任意選択で、第2のコンピューティングデバイスから、クライアントデバイスの登録情報を受信するステップであり、登録情報は、クライアントデバイスを識別するデバイス識別子と、第2の登録サービスを識別するサービス識別子と、クライアントデバイス持続性情報に基づいて持続性クラウドサービスが従う第2の登録サービスのポリシーセットとを含むステップと、登録情報を格納するステップとを含んでもよい。
例39は、過渡的でないコンピュータ読み取り可能媒体を更に含んでもよく、コンピューティングデバイスのプロセッサに対して、持続性クラウドサービスに登録された第1のサービスに関連する第1のコンピューティングデバイスから、持続性クラウドサービスに登録されたクライアントデバイスについてのクライアントデバイスの更新を受信し、クライアントデバイスの更新に基づいてクライアントデバイスに関連するクライアントデバイス持続性情報を更新し、持続性クラウドサービスに登録された第2のサービスに関連する第2のコンピューティングデバイスから、クライアントデバイス持続性情報の要求を受信し、クライアントデバイス持続性情報を第2のコンピューティングデバイスに提供するように命令する制御ロジックを格納する。
例40は、例39の対象を含んでもよく、制御ロジックは、プロセッサに対して、第2のコンピューティングデバイスから、クライアントデバイスの登録情報を受信し、登録情報は、クライアントデバイスを識別するデバイス識別子と、第2の登録サービスを識別するサービス識別子と、クライアントデバイス持続性情報に基づいて持続性クラウドサービスが従う第2の登録サービスのポリシーセットとを含み、登録情報を格納するように更に命令するよう実施される。
例41は、コンピューティングデバイスで実行されることに応じて、コンピューティングデバイスに対して例18〜21のいずれか1つの方法を実行させる複数の命令を有する少なくとも1つの機械読み取り可能媒体を含んでもよい。
例42は、例19〜22のいずれか1つの方法を実行するコンピュータシステムを含んでもよい。
例43は、例19〜22のいずれか1つの方法を実行するように構成された装置を含んでもよい。
例44は、例19〜22のいずれか1つの方法を実行する機械を含んでもよい。
例45は、例19〜22のいずれか1つの方法を実行する手段を有する装置を含んでもよい。
例46は、コンピューティングデバイスで実行されることに応じて、コンピューティングデバイスに対して例19〜22のいずれか1つの方法を実行させる複数の命令を有する少なくとも1つの機械読み取り可能媒体を含んでもよい。
例47は、例37〜38のいずれかの方法を実行するコンピュータシステムを含んでもよい。
例48は、例37〜38のいずれか1つの方法を実行するように構成された装置を含んでもよい。
例49は、例37〜38のいずれかの方法を実行する機械を含んでもよい。
例50は、例37〜38のいずれか1つの方法を実行する手段を有する装置を含んでもよい。
ここに記載されるシステム、方法及びコンピュータプログラムプロダクトは、クライアントデバイスのユーザと、これらのクライアントデバイスの不正な使用に対してこれらのユーザにより利用される事実上如何なるサービスとの双方にとって、迅速でシームレスな保護を提供し得る、普遍的に中央集権的な警告システムを提供するという利点を有する。持続性クラウドサービスに登録されるサービスが増えるほど、提供される保護が良くなる。この理由は、いずれか登録されたサービスは、他の登録サービスと共有されるシステムへの不審なデバイスアクティビティを報告し得るからである。理想的には、持続性クラウドサービスに登録されたサービスは、デバイスによるサービスの次の使用の前にデバイスの紛失又は盗難について他のサービスに通知し得る何らかの種類の盗難防止サービスを含んでもよい。このシステムの使用は、紛失したクライアントデバイス又は盗まれたクライアントデバイス及び/又はその犯人を見つけるのすら有用になり得る。この理由は、クライアントデバイスの使用は、潜在的に持続性クラウドサービスにより追跡され得るからである。この事例では、持続性クラウドサービスに登録されるサービスが増えるほど、デバイスの追跡が網羅的になる。持続性クラウドサービスに登録された場合に有用になる他のサービスは、データバックアップサービスである。例えば、クライアントデバイスが紛失又は盗難として報告された場合、クライアントデバイスに関連し得る登録データバックアップサービスは、犯人がデバイスを新しくしようと試みる前にデータがバックアップされるように、デバイスが検出された場合にデバイスのスケジュールされていないバックアップを実行するように潜在的にトリガーされてもよい。
PCSシステムの他の利点は、その企業の利用にある。会社は、例えば各デバイスのMACアドレス又は他のハードウェア識別情報により、その従業員に対して交付したユーザデバイスを追跡してもよい。そのデバイスのそれぞれの持続性クラウドサービスに提供されるアフィリエイトポリシーにおいて、システムにより報告されたいずれか潜在的なセキュリティ侵害が与えられたときに各デバイスに何が起こるべきかに関して、特定の命令が提供されてもよい。例えば、デバイスが紛失又は盗難として報告された場合、何らかのデータのロス又は侵害を最小化するために、デバイスのデータバックアップ及び/又はデータ消去がトリガーされてもよい。他の例では、ポリシーは、どのレベルのアクセスを特定のデバイスが有するべきかについての命令を提供してもよい。会社の従業員が管理者若しくはシステム管理者又は会社で何らかの主要な役目を有する人である場合、その人のデバイスは、会社のシステム及び設定に対して他の従業員より広範囲のアクセスを許可されてもよい。多くの他の利点及び使用も考えられる。