説明

可動性装置サーバ

安全なモバイル・コンピューティングを可能にする可動性装置プラットフォームの一部として使用される可動性装置管理サーバが提供される。図示される実施例では、典型的な可動性装置プラットフォームは、少なくとも1つのコンピューティング環境と通信インターフェースを介して通信し、安全なウェブ・サービスを処理して記憶するために動作する可動性装置、データ及びコンピューティング・アプリケーションをウェブ・サービスを使用して通信するために動作する通信ネットワーク、並びにウェブ・サービスを可動性装置に対して生成し、処理し、記憶し、通信し、暗号化するために動作する可動性装置管理サーバを含む。更に、可動性装置管理サーバは、暗号化キーを協動する可動性装置に提供し、ウェブ・サービスを要求中の協動する可動性装置を可動性装置管理サーバから認証して検証する1又は複数の可動性装置管理機能を実行するために動作する。更に、可動性装置管理サーバ及び可動性装置は、ユーザ識別情報及びパスワード情報を使用して認証及び検証を実行するために動作する。更に、可動性装置管理サーバは、測定機能、及び可動性装置プラットフォームで処理され実行されるウェブ・サービスでのオペレーションを実行するために動作する。更に、可動性装置管理サーバは、可動性装置管理サーバと協動する可動性装置の間の断続的接続をサポートするために動作する。

【発明の詳細な説明】
【技術分野】
【0001】
本願は、2003年09月29日に出願された米国特許仮出願第60/507,197号「GO-KEY SYSTEM」、第60/506,918号「GO-KEY ONLINE MUSIC SUBSCRIPTION AND DISTRIBUTION APPLICATION AND SERVICE」、第60/506,919号「GO-KEY E-MAIL APPLICATION AND SERVICE」、第60/506,925号「GO-KEY MOBILE DESKTOP ENVIRONMENT」、及び2004年01月23日に出願された第60/543,735号「MDMS」、第60/538,763号「OMNI FILE SYSTEM (OFS)」、第60/538,915号「UDDI DIRECTORY」、第60/538,767号「UDDI REPOSITORY」の利益を主張する。加えて、本願は、米国同時係属出願第XX/XXX,XXX号「MOBILITY DEVICE」、及び第XX/XXX,XXXX号「MOBILITY DEVICE PLATFORM」を参照する。
【0002】
本発明のシステム及び方法はモバイル・コンピューティング技術に関し、更に詳細には、安全なリモート・モバイル・コンピューティングを可能にする可動性装置管理サーバに関する。
【背景技術】
【0003】
企業及び個人は、同様に、コンピューティング環境の特徴として可動性をますます要求する。企業にとって、可動性は社員をバラバラな地理的位置に配置することを可能にし、企業がより良いサービスを顧客に提供することを可能にする。例えば、大規模な製薬会社は、営業社員を見込み客(例えば、医師)に近い「フィールド」に配置したい。その様な状況で、「フィールド」社員は、機密扱いの営業・マーケティング情報、及びコンピューティング・アプリケーションに安全な接続を介してアクセスしたい。現在のソリューションによって、これらの社員は、1日の終わりに企業ネットワークと安全なコンピュータ・ネットワーク接続(例えば、仮想専用ネットワーク)を通して「同期」する煩雑な仕事が残されることが多い。比較してみると、個人は、データ及びコンピューティング・アプリケーションに近づく機能、更に詳細には、インターネット通信の時代に「接続して」断続的にとどまる機能を可能にするコンピューティング環境に可動性を要求する。
【0004】
モバイル・コンピューティングに対する必要性に対応して、コンピューティング環境製造業者は、人々がコンピューティング環境を路上で楽しむことを可能にする(例えば、スタンドアロンの、ネットワーク化された、及び/又は組み込み)モバイル・コンピューティング技術を開発した。その種のモバイル装置は、ユーザがファイル及びアプリケーションを常に「持ち運ぶ」ことを可能にすることを目的とする。可動性を提供しても、形状的因子、処理能力、及び携帯性において変化するときに、これらの装置は辛うじて有効である。その種の制限によって、ユーザは必要なファイル及びコンピューティング・アプリケーションの全てを持つことを保証する大型の携帯型コンピュータを苦労して持ち歩くことが多い。その種の慣習は、コンピューティング・システムの固有の(即ち、「装置中心」コンピューティングを利用する)設計を前提とする。
【0005】
「装置中心」コンピューティングによって、ユーザはリモート通信アプリケーション(例えば、仮想専用ネットワーク)を介してファイルにリモートで安全にアクセスできるが、データ及びコンピューティング・アプリケーションを検索する大型の煩雑なコンピューティング手段をまだ持ち歩かなければならない。更に詳細には、装置中心コンピューティングによって、ユーザは企業コンピューティング要求に対する1つの装置(例えば、会社のパーソナル・コンピュータ、又はラップトップ・コンピュータ)を一般に支給され、1又は複数のコンピューティング環境を自宅に個人用として一般に有する。複数のコンピューティング環境を維持することにおいて、コンピュータ・ユーザは、個別の選択及び設定を多くの異なるコンピューティング環境の間で同期させる仕事を課される。その種の仕事はどうひいき目に見ても骨が折れ、コンピュータ・ユーザを多くの異なるコンピューティング環境の間で所望するデータ及び/又はコンピューティング・アプリケーションにアクセスできないままにすることが多い。
【0006】
例えば、コンピュータ・ユーザは、彼(又は、彼女)の財務計画及び管理コンピューティング・アプリケーション(例えば、 Quicken, Microsoft Money)からの財務計画及び管理データを常に持ち、生じる支払い(例えば、失効した請求書)を処理したい。現在のソリューションによって、彼(又は、彼女)がこの所望するデータにアクセスできるように、コンピューティング・ユーザは財務計画、管理コンピューティング・アプリケーション、及びデータを(会社のコンピューティング施策及び手続きに違反する彼(又は、彼女)の会社のコンピュータを含む)各自のコンピューティング環境にインストールする。比較してみると、企業は解雇される従業員からの機密扱いの企業データへの全てのアクセスを効果的かつ直ちに終了させたい。装置中心コンピューティングに基づく現在の慣習では、従業員は彼らのコンピューティング環境(例えば、ラップトップ・コンピュータ、パーソナル・コンピュータ、携帯電話、又は携帯情報端末)を提出するように求められる。加えて、直ぐに解雇される従業員は、企業ユーザ・ディレクトリ情報を終了させることによって、企業データの使用を制限される。しかし、その種の装置を回収すること、及びアクセスを終了させることには固有の待ち時間が存在する。その種の待ち時間は、従業員がファイルを企業コンピューティング環境から後で使用するためにコピーすることを招く。そういうものであるから、既存の慣習では、機密扱いの企業データが改竄されるかもしれない。
【発明の開示】
【発明が解決しようとする課題】
【0007】
上記のことから、既存の慣習の短所を克服する必要性が存在する。
【課題を解決するための手段】
【0008】
安全なモバイル・コンピューティングを可能にする可動性装置プラットフォームの一部として使用される可動性装置管理サーバが提供される。図示される実施例では、典型的な可動性装置プラットフォームは、少なくとも1つのコンピューティング環境と通信インターフェースを介して通信し、安全なウェブ・サービスを処理して記憶するために動作する可動性装置、データ及びコンピューティング・アプリケーションをウェブ・サービスを使用して通信するために動作する通信ネットワーク、並びにウェブ・サービスを可動性装置に対して生成し、処理し、記憶し、通信し、暗号化するために動作する可動性装置管理サーバを含む。更に、可動性装置管理サーバは、暗号化キーを協動する可動性装置に提供し、ウェブ・サービスを要求中の協動する可動性装置を可動性装置管理サーバから認証して検証する1又は複数の可動性装置管理機能を実行するために動作する。更に、可動性装置管理サーバ及び可動性装置は、ユーザ識別情報及びパスワード情報を使用して認証及び検証を実行するために動作する。更に、可動性装置管理サーバは、測定機能、及び可動性装置プラットフォームで処理され実行されるウェブ・サービスでのオペレーションを実行するために動作する。更に、可動性装置管理サーバは、可動性装置管理サーバと協動する可動性装置の間の断続的接続をサポートするために動作する。
【0009】
オペレーションでは、典型的な可動性装置は、協動するコンピューティング環境で使用するように形成される。更に、可動性装置は、協動する1又は複数の可動性装置管理サーバと通信を確立し、選択された認証情報及び検証情報を使用して協動する1又は複数の可動性装置管理サーバによって認証及び検証されることを試みる。認証及び検証されると直ぐ、協動する1又は複数の可動性装置管理サーバは、協動する典型的な可動性装置からのデータ及びコンピューティング・アプリケーションに対する要求を、ウェブ・サービスを使用して処理する。ウェブ・サービスは、典型的な選択された認証情報及び検証情報(例えば、キー)を使用して、協動する1又は複数の可動性装置管理サーバによって暗号化され、協動する1又は複数の可動性装置管理サーバ及び典型的な可動性装置から要求されたデータ及びコンピューティング・アプリケーションの安全な通信を可能にする。
【0010】
本発明のシステム及び方法の他の特徴が、以下に記載される。
【発明を実施するための最良の形態】
【0011】
本発明のシステム及び方法は、「ユーザ中心」アプローチをコンピューティング及びモバイル・コンピューティングに提供する。一般に、(企業又は個人の)現在のコンピューティング・ソリューションは、「装置中心」モデルを使用して設計される。装置中心モデルは、装置の割当て及び指定に基づいてユーザを管理し追跡することを目的とする。例えば、企業コンピューティングという状況では、企業コンピューティング環境は、多数のサーバ・コンピューティング環境、及び多数のクライアント・コンピューティング環境を含む。一般に、企業の各ユーザは、サーバ・コンピューティング環境に企業通信インターフェースを通して(又は、もしユーザが企業通信ネットワークに対してリモートであれば、仮想専用ネットワーク(VPN)を通して)一般にネットワーク化されたクライアント・コンピューティング環境(例えば、パーソナル・コンピュータ、又はラップトップ・コンピュータ)を支給される。加えて、従来の企業コンピューティング環境では、ユーザの権利及び特権を企業データ及びコンピューティング・アプリケーションに関連付けるディレクトリ・サービス構造を通して、ユーザはユーザ識別情報及びパスワード情報を提供される。
【0012】
その種の企業コンピューティング環境によって、もしユーザがネットワーク中をうろついて自分以外のコンピューティング環境にログオンしたら、個別の選択及び設定にアクセスしないように、ユーザは支給された彼(又は、彼女)のコンピューティング環境を彼(又は、彼女)の選択及び設定でカスタマイズすることを許可されるだけであることが多い。また、この問題は、選択及び設定(例えば、ブラウザ・ブックマーク、デスクトップのルック・アンド・フィール、色彩設計、アプリケーションのレイアウト、及びファイルに対するディレクトリ構造)を企業コンピューティング環境と個人のコンピューティング環境(例えば、自宅のコンピュータ)の間の同期を維持したい企業ユーザが同期を手動で実行することが多いときにも見られる。
【0013】
更に、既存の企業コンピューティング環境によって、多数のクライアント・コンピューティング環境の管理は困難な仕事になった。現在、企業は、(数百ではない)数十単位の情報技術部門を雇用して、多くのユーザ及びコンピューティング環境をサポートしている。単なる物理的管理以上に、企業データの保全性及びセキュリティが、装置中心コンピューティング・モデルによって稼働させられる。その様な状況で、企業コンピューティング・ユーザは、機密扱いの企業データのコピー及び構成における自分の意志を放置することが多い。企業ファイル及びデータの無許可コピーをユーザにさせない仕事はどうひいき目に見ても困難なので、殆どの企業は見て見ぬふりをする。既存の慣習のその種の限定は、企業及び個人に対して同様に非常に高くつく。
【0014】
本発明のシステム及び方法は、「ユーザ中心」モデルを使用して設計された可動性装置プラットフォーム(MDP)を提供することによって既存の慣習の短所を改善することを目的とする。図示される実施例では、可動性装置プラットフォームは、1又は複数の協動するコンピューティング環境(例えば、パーソナル・コンピュータ、携帯情報端末、携帯電話、ネットワーク化されたコンピュータ、及び他のコンピューティング環境)と通信インターフェース(例えば、ユニバーサル・シリアル・バス(USB)、IEEE 1394通信インターフェース(FireWire)、802.XX通信インターフェース、Bluetooth通信インターフェース、パーソナル・コンピュータ・インターフェース、小型コンピュータ・シリアル・インターフェース、及び無線アプリケーション・プロトコル(WAP)通信インターフェース)を通して通信するために動作する少なくとも1つの可動性装置(MD)を含む。加えて、可動性装置プラットフォームは、認証及び検証、並びにユーザ管理を協動する可動性装置及びそれらのユーザに提供するために動作する1又は複数の可動性装置管理サーバ(MDMS)を含む。
【0015】
オペレーションでは、可動性装置は、ウェブ・サービスを処理するための1又は複数の作業領域を呼び出す1又は複数のコンピューティング環境と協働する。ウェブ・サービスは、MDに近いデータ及びコンピューティング・アプリケーションから実行されるか、又はMDは1又は複数のMDMSと協働して所望するウェブ・サービスを得る。MDMSは、要求中のMDが要求されたウェブ・サービスに対する権利及び特権を有することを認証するために動作する。加えて、MDMSはサード・パーティ・ウェブ・サービス・プロバイダと協働して、要求されたウェブ・サービスを得る。その様な状況で、MDMSは、ウェブ・サービスを非MD固有のウェブ・サービス形式からMD固有のウェブ・サービス形式に変換するために機能する。ウェブ・サービスがMDMSから協動MDへ通信するとき、MDMS及びMDは、ユーザ及び装置の認証情報及び検証情報を使用して1028ビット及び/又は2056ビット暗号化(例えば、PKI暗号化)に従事する。MDMSによってMDへ提供されたウェブ・サービスは、(限定されないが)コンピューティング・アプリケーション、及び所望するデータを含む。加えて、MDはMDに近い参加ユーザのカスタマイズされた設定及び選択を記憶するために動作するので、MDはユーザに対して常に利用可能である。
【0016】
そういうものであるから、可動性装置プラットフォームによって、ユーザは任意の数の協動するコンピューティング環境を横断して、カスタマイズされた設定及び選択にアクセスできること、更に詳細には、(例えば、ウェブ・サービスとして提供されたような)コンピューティング・アプリケーション及びファイルに安全にアクセスできることを確信する。
【0017】
[ウェブ・サービス]
一般に、ウェブ・サービス(又は、アプリケーション・サービス)と呼ばれる、通信ネットワーク(例えば、インターネット)を通して提供されるサービスが進歩している。同様に、その種のサービスを容易にする技術も進歩している。ウェブ・サービスは、アプリケーション(又は、エンドユーザ)によって使用されるために便利にパッケージされたビジネス論理プロセスを実行する情報源として定義される。次第に、ウェブ・サービスは、ネットワークを通して機能を提供する手段になってきた。一般に、ウェブ・サービスは、プログラム、及びエンド・ユーザのためのアプリケーション・サーバ(及び、他のネットワーク接続されたアプリケーション・プログラム)から利用可能にされるデータの組み合わせを含む。ウェブ・サービスは、記憶管理、及び顧客関係管理のようなサービスから更に限定されたサービス(例えば、株価の提供、及び競売への入札のチェック)まで及ぶ。
【0018】
ウェブ・サービスの使用を定義して標準化することに焦点を合わせた活動は、ウェブ・サービス記述言語(WSDL)の開発を含む。WSDLは、ウェブ・サービスを文書指向情報、又は手続き指向情報の何れかを含むメッセージで動作する1組のエンドポイントとして記述するための拡張マークアップ言語(XML)形式である。オペレーション及びメッセージは抽象的に記述され、具体的なネットワーク・プロトコル、及びエンドポイントを定義するメッセージ形式に結び付く。関連する具体的なエンドポイントは、抽象エンドポイント(サービス)と合体する。
【0019】
現在、推奨されるウェブ・サービス利用モデルは、一般に以下のようである。
【0020】
(1)サービスは、(サーバ・サイドと呼ばれることが多い)1つのサイトで実施されて展開される。
【0021】
(2)サービスはWSDLを使用して記述され、手段(例えば、UDDI(Universal Description,Discovery,and Integration))を介して掲載される。UDDIは、提供するウェブ・サービスによってインターネットに自らをリストする世界中のビジネスのためのXMLに基づくレジストリである。
【0022】
(3)クライアント・アプリケーションは、ウェブ・サービスを(クライアント・サイドと呼ばれることが多い)他のサイトにおいて、1又は複数のWSDLドキュメントを最初に逐次解釈することによって使用する。いったん逐次解釈されたら、クライアントは、関連するサービスの特性を理解できる。例えば、サービス特性は、サービスAPI仕様(例えば、(a)入力データ型、(b)サービス入力データ形式、(c)サービス・アクセス機構、又はスタイル(例えば、RPC対メッセージング)、及び(d)関連する符号化形式)を含む。
【0023】
(4)クライアント・アプリケーションは、種々の特定のウェブ・サービスが理解する方法でデータを準備する。
【0024】
(5)クライアント・アプリケーションは、特定のサービスを、サービスに対して指定された方法によって、例えば、関連するWSDLドキュメントで呼び出す。
【0025】
入力データの形式、及びウェブ・サービスが呼び出される方法に対して、多くの相違点がウェブ・サービスの間に存在する。例えば、1つのアプリケーション・サービス・プロバイダが、単一の入力パラメータ(例えば、従来の都市名(例えば、 Salt Lake City に対して SLC))を要求するサービス(getCityWeather)を提供すると仮定する。その種のサービスを呼び出す傾向があるクライアント・アプリケーションが書き込まれることを要求するので、都市情報を抽出するために内部の(又は、アプリケーションによって出力された)データを解析することができる。実行時には、準備された記号は、getCityWeatherサービス・サイトに適切なAPIを使用して伝わる。
【0026】
しかし、他のアプリケーション・サービス・プロバイダが、2つの入力パラメータ(例えば、都市名、及び郵便番号)を要求する類似のサービスを提供すると仮定する。従って、もしクライアント・アプリケーションがこの第2のサービスを呼び出す予定があれば、クライアント・アプリケーションは、第2のサービスのデータを要求されたサービス入力パラメータに対して適切に解析して抽出する必要がある。従って、もし単一のアプリケーションが両方のサービスを呼び出す予定があれば、アプリケーションはサービス特有のAPI情報及び手続きを用いてハードコード化されなければならない。更に、もしアプリケーションが多数のサービスを呼び出す予定があれば、アプリケーションは(アプリケーションが呼び出す予定の)各々及び全てのサービスに関連するサービス特有のAPI情報及び手続きを用いてハードコード化しなければならない。
【0027】
上で説明したように、種々のウェブ・サービスは類似の機能を提供するが、多くのやり方で異なる。本発明のシステム及び方法は、データをウェブ・サービス・プロバイダから受信して協動する可動性装置に対して固有のウェブ・サービス・モデルで提示するために動作するウェブ・サービス変換モジュールを(他の間に)含むモバイル装置管理サーバを有する可動性装置プラットフォームを提供することによって、その種の不均衡を改善することを目的とする。
【0028】
[シンプル・オブジェクト・アクセス・プロトコル(SOAP)]
シンプル・オブジェクト・アクセス・プロトコル(SOAP)は、分散した環境で情報を交換するための軽快なXMLに基づくプロトコルである。SOAPは、情報交換の異なるスタイルをサポートする。即ち、
【0029】
エンドポイントが手続き指向メッセージを受信し、相関する応答メッセージによって応答する、要求−応答処理を可能にするリモート・プロシージャ・コール・スタイル(RPC)。
【0030】
メッセージは送信されるが、送信者は即時の応答を期待しない(又は、待たない)、ビジネス(又は、他の型の)ドキュメントを交換する必要がある構成及びアプリケーションをサポートするメッセージ指向情報交換を含む。
【0031】
一般に、SOAPメッセージは、2つのデータ構造、SOAPヘッダ、及びSOAPボディを含むSOAPエンベロープ、並びにそれらを定めるネーム空間についての情報を含む。ヘッダはオプションであり、存在するとき、ヘッダはSOAPボディで定められた要求についての情報を運ぶ。例えば、ヘッダは、トランザクション情報、セキュリティ情報、文脈情報、又はユーザ・プロファイル情報を含む。ボディはウェブ・サービス要求を含むか、又は要求にXML形式で応答する。SOAPメッセージの高レベル構造が、以下の図に示される。
【0032】
(ウェブ・サービス要求、及び応答を運ぶために使用されるとき)SOAPメッセージは、利用可能なウェブ・サービスのウェブ・サービス記述言語(WSDL)に従う。WSDLは、ウェブ・サービスにアクセスするために使用されるSOAPメッセージ、その種のSOAPメッセージが交換されるプロトコル、及びこれらのウェブ・サービスがアクセスされるインターネット・ロケーションを記述できる。WSDL記述子はUDDI、又は他のディレクトリ・サービスに存在でき、また機器構成、又は他の手段(例えば、SOAP要求応答のボディで)を介して提供できる。
【0033】
要求及び応答を符号化するための標準的な方法を提供するSOAP規格書(例えば、 http://www.w3.orgで見出されるw3 SOAP規格書)が存在する。SOAP規格書は、メッセージ・ペイロードの構造及びデータ型をXMLスキーマを使用して記述する。SOAPがウェブ・サービスのメッセージ及び応答に対して使用される方法は以下のようである。
【0034】
SOAPクライアントが、SOAP規格書に従いサービスに対する要求を含むXMLドキュメントを使用する。
【0035】
SOAPクライアントがドキュメントをSOAPサーバへ送信し、サーバで実行中のSOAPサーブレットがドキュメントを、例えば、HTTP又はHTTPSを使用して処理する。
【0036】
ウェブ・サービスがSOAPメッセージを受信し、メッセージをサービス呼出しとして要求されたサービスを提供するアプリケーションへ発送する。
【0037】
サービスからの応答がSOAPサーバへ(SOAPプロトコルを再び使用して)戻され、このメッセージが送信元SOAPクライアントへ戻される。
【0038】
SOAPは本発明のシステム及び方法のための通信プロトコルとして記載されているが、その種の記述は本発明のシステム及び方法の単なる例示であり、種々の通信プロトコル及びメッセージ規格を利用できる。
【0039】
[コンピューティング環境の例示]
図1は、本発明のシステム及び方法による典型的なコンピューティング・システム100を示す。コンピューティング・システム100は、多様なオペレーティングシステム180、及びオペレーティングシステム180で動作可能なコンピューティング・アプリケーション180’(例えば、ウェブブラウザ、及びモバイル・デスクトップ環境)を実行できる。典型的なコンピューティング・システム100は、コンピュータ読み取り可能な命令によって主に制御され、コンピュータ読み取り可能な命令はソフトウェア(その種のソフトウェアが記憶されアクセスされる場所及び方法)の形態である。その種のソフトウェアは中央処理装置(CPU)110の内部で実行され、データ処理システム100を動作させる。多くの既知のコンピュータ・サーバ、ワークステーション、及びパーソナル・コンピュータでは、中央処理装置110は、マイクロプロセッサと呼ばれるマイクロ・エレクトロニクス・チップCPUによって実施される。コプロセッサ115は(主CPU110とは別の)オプションのプロセッサであり、追加の機能を実行するか、又はCPU110を補助する。CPU110は、コプロセッサ115に相互接続112を介して接続される。1つの一般的な型のコプロセッサは浮動小数点コプロセッサ(又は、数値演算コプロセッサ)であり、浮動小数点コプロセッサは数値計算を汎用CPU110よりも速く適切に実行するように設計される。
【0040】
図示されたコンピューティング環境は単一のCPU110を含むように示されるが、その種の記述は単なる例示であり、コンピューティング環境100は多数のCPU110を含んでもよい。加えて、コンピューティング環境100は、通信ネットワーク160、又は他のデータ通信手段(図示されない)を介してリモートCPU(図示されない)のリソースを活用する。
【0041】
オペレーションでは、CPU110が命令をフェッチ、デコード、及び実行し、他のリソースへ/からコンピュータの主データ転送経路(システム・バス105)を介して情報を転送する。その種のシステム・バスは、構成要素をコンピューティング・システム100の中で接続し、データ交換のための媒体を定める。一般に、システム・バス105は、データを送信するためのデータ・ライン、アドレスを送信するためのアドレス・ライン、及び割り込みを送信してシステム・バスを動作させるための制御ラインを含む。その種のシステム・バスの実施例は、PCI(Peripheral Component Interconnect)バスである。今日の進歩したバスの中には、拡張カード、制御装置、及びCPU110によってバスへのアクセスを統制するバス裁定と呼ばれる機能を提供するものもある。これらのバスに付属し、調停してバスを占有する装置は、バスマスタと呼ばれる。また、バスマスタ・サポートは、マルチプロセッサ形態のバスが、プロセッサ及びサポート・チップを含むバスマスタ・アダプタの追加によって創出されることを可能にする。
【0042】
システム・バス105に結合されたメモリ装置は、ランダム・アクセス・メモリ(RAM)125、及び読出し専用メモリ(ROM)130を含む。その種のメモリは、情報が記憶されて検索されることを可能にする回路を含む。一般に、ROM130は、修正できない記憶データを含む。RAM125に記憶されたデータは、CPU110(又は、他のハードウェア装置)によって読み出し(又は、変更)可能である。RAM125及び/又はROM130へのアクセスは、メモリ制御装置120によって制御される。メモリ制御装置120は、命令が実行されるときに仮想アドレスを物理アドレスに変換するアドレス変換機能を提供する。また、メモリ制御装置120は、システム内部の複数プロセスを隔離し、システム・プロセスをユーザ・プロセスから隔離するメモリ保護機能を提供する。従って、通常は、ユーザ・モードで実行中のプログラムは、自らのプロセス仮想アドレス空間によってマッピングされたメモリのみにアクセスでき、プロセス間で共用するメモリが設定されるまで他のプロセスの仮想アドレス空間の内部のメモリにアクセスできない。
【0043】
加えて、コンピューティング・システム100は、CPU110から周辺機器(例えば、プリンタ140、キーボード145、マウス150、及びデータ記憶ドライブ155)への命令伝達を担当する周辺機器制御装置135を含む。
【0044】
(ディスプレイ制御装置163によって制御される)ディスプレイ165は、コンピューティング・システム100によって生成された可視出力を表示するために使用される。その種の可視出力は、テキスト、グラフィックス、動画、及びビデオを含む。ディスプレイ165は、CRTに基づくビデオ・ディスプレイ、LCDに基づくフラット・パネル・ディスプレイ、ガス・プラズマに基づくフラット・パネル・ディスプレイ、タッチ・パネル、又は他のディスプレイ形態を用いて実施される。ディスプレイ制御装置163は、ディスプレイ165へ送信されるビデオ信号を生成するために必要な電子構成要素を含む。
【0045】
更に、コンピューティング・システム100は、コンピューティング・システム100を外部通信ネットワーク160に接続するために使用されるネットワーク・アダプタ170を含む。通信ネットワーク160は、コンピュータ・ユーザにソフトウェア及び情報を電子的に伝達及び転送する手段を提供する。加えて、通信ネットワーク160は分散処理を提供し、分散処理は、複数のコンピュータ、及び作業負荷の分担(又は、作業の実行における協調的努力)を含む。図示されるネットワーク接続は典型的であり、コンピュータの間に通信リンクを確立する他の手段も使用してよい。
【0046】
典型的なコンピュータ・システム100は、本発明のシステム及び方法が動作するコンピューティング環境の単なる例示であり、本明細書の記載と異なる構成要素及び機器構成を有するコンピューティング環境における本発明のシステム及び方法の実施例が、種々の構成要素及び機器構成を有する種々のコンピューティング環境で実施されることを制限しない。
【0047】
[コンピュータ・ネットワーク環境の例示]
上記のコンピューティング・システム100は、コンピュータ・ネットワークの一部として展開できる。一般に、コンピューティング環境に対する上の記述は、ネットワーク環境の中で展開されたサーバ・コンピュータ及びクライアント・コンピュータの両方に適用される。図2は(クライアント・コンピュータと通信ネットワークを介して通信するサーバを有する)典型的なネットワーク化されたコンピューティング環境200を示し、コンピューティング環境200では、本発明のシステム及び方法が利用される。図2に示されるように、サーバ205は、(有線又は無線LAN、WAN、イントラネット、エクストラネット、ピア・トゥ・ピア・ネットワーク、インターネット、又は他の通信ネットワークの何れか1つ、又は組み合わせである)通信ネットワーク160を介して、多数のクライアント・コンピューティング環境(例えば、タブレット・パーソナル・コンピュータ210、携帯電話215、電話220、パーソナル・コンピュータ100、及び携帯情報端末225)と相互接続する。加えて、本発明のシステム及び方法は、自動車コンピューティング環境(図示されない)、消費者コンピューティング環境(図示されない)、及びビル自動制御コンピューティング環境(図示されない)と通信ネットワーク160を介して協働する。例えば、通信ネットワーク160がインターネットであるネットワーク環境では、サーバ205は、多数の既知のプロトコル(例えば、ハイパーテキスト転送プロトコル(HTTP)、ファイル転送プロトコル(FTP)、シンプル・オブジェクト・アクセス・プロトコル(SOAP)、又は無線アプリケーション・プロトコル(WAP))を介した、クライアント・コンピューティング環境100,210,215,220,225とのウェブ・サービスの処理及び相互通信のために動作可能な専用のコンピューティング環境サーバでもよい。各クライアント・コンピューティング環境100,210,215,220,225は、1又は複数のコンピューティング・アプリケーション(例えば、ウェブブラウザ(図示されない)、又はサーバ・コンピューティング環境205へのアクセスを得るためのモバイル・デスクトップ環境(図示されない))をサポートするために動作可能なブラウザ・オペレーティングシステム180を備える。
【0048】
オペレーションでは、ユーザ(図示されない)は、クライアント・コンピューティング環境で実行中のコンピューティング・アプリケーションと対話して、所望するデータ及び/又はコンピューティング・アプリケーションを得る。データ及び/又はコンピューティング・アプリケーションはサーバ・コンピューティング環境205に記憶され、協動するユーザとクライアント・コンピューティング環境100,210,215,220,225を通して、典型的な通信ネットワーク160によって通信する。参加ユーザは、全体または一部がサーバ・コンピューティング環境205にウェブ・サービス・トランザクションを使用して収納された特定のデータ及びアプリケーションへのアクセスを要求する。これらのウェブ・サービス・トランザクションは、クライアント・コンピューティング環境100,210,215,220,225と処理及び記憶のためのサーバ・コンピューティング環境の間で伝達される。サーバ・コンピューティング環境205は、ウェブ・サービスの生成、認証、暗号化、及び通信のためのコンピューティング・アプリケーション、プロセス、及びアプレットを収容し、他のサーバ・コンピューティング環境(図示されない)、サード・パーティ・サービス・プロバイダ(図示されない)、ネットワーク結合記憶装置(NAS)、及び記憶領域ネットワーク(SAN)と協働してその種のウェブ・サービス・トランザクションを実現する。
【0049】
従って、本発明のシステム及び方法は、ネットワークにアクセスして対話するためのクライアント・コンピューティング環境、及びクライアント・コンピューティング環境と対話するためのサーバ・コンピューティング環境を有するコンピュータ・ネットワーク環境で利用できる。しかし、可動性装置プラットフォームを提供するシステム及び方法は、多様なネットワークに基づくアーキテクチャを用いて実施でき、従って、例示された実施例に限定されない。本発明のシステム及び方法が、実施例を参照して更に詳細に記述される。
【0050】
[可動性装置プラットフォーム構成要素の協働]
図3は、典型的な可動性装置プラットフォームの構成要素の間の典型的な対話を示す。一般に、図3で示されるように、典型的な可動性装置プラットフォーム300は、簡単には、選択された通信プロトコル(図示されない)で動作する通信インターフェース305を使用してクライアント・コンピューティング環境100と協動する可動性装置310を含む。加えて、典型的な可動性装置プラットフォーム300は、(図1の)通信ネットワーク160、及びサーバ・コンピューティング環境205を更に含む。
【0051】
オペレーションでは、可動性装置は、クライアント・コンピューティング環境100と通信インターフェース305を通して協働し、可動性装置310から起動して、ユーザとの対話のためにクライアント・コンピューティング環境100で表示可能な1又は複数のコンピューティング・アプリケーション180’を実行する。コンピューティング・アプリケーション180’は、(限定されないが)従来のオペレーティングシステムのルック・アンド・フィールを提供するブラウザ・アプリケーション、ワープロ・アプリケーション、表計算、データベース・アプリケーション、ウェブ・サービス・アプリケーション、及びユーザ管理/選択アプリケーションを含む。加えて、可動性装置310は、サーバ・コンピューティング環境205とクライアント・コンピューティング環境100を使用する通信ネットワーク160を介して協働し、データ及び/又はコンピューティング・アプリケーションをウェブ・サービスの形態で得る。
【0052】
図4は、典型的な可動性装置プラットフォーム400に対する構成要素の対話を示す。図4に示されるように、典型的な可動性装置プラットフォーム400は、可動性装置(MD)405、コンピューティング環境410、通信ネットワーク435、可動性装置管理サーバ(MDMS)420、及びサード・パーティ・ウェブ・サービス・プロバイダ440を含む。加えて、MD組立分解図に更に示されるように、MD405は、処理装置(PU)、オペレーティングシステム(OS)、記憶メモリ(RAM/ROM)、及びMD通信インターフェースを更に含む。また、MDMS420は、変換エンジン425、ウェブ・サービス430、及び暗号化エンジン445を更に含む。
【0053】
オペレーションでは、MD405は、コンピューティング環境415と、1又は複数のMD構成要素PU,OS,RAM/ROM、及びMD通信インターフェースを使用して、MD/コンピューティング環境通信インターフェース410を通して通信する。コンピューティング環境415と通信するとき、MD405は、(限定されないが)モバイル・デスクトップ環境、ユーザ・カスタマイズ及び認証管理プログラム、及びウェブ・サービス・アプリケーションを構成の一部として含む1又は複数のコンピューティング・アプリケーション(図示されない)を起動する。いったん形成されたら、MD405はコンピューティング環境415と更に協働して、1又は複数のウェブ・サービス(例えば、ウェブ・サービス・データ、及び/又はコンピューティング・アプリケーション)を処理する。その様な状況で、MD405はまた、ウェブ・サービス・データ及び/又はコンピューティング・アプリケーションに、協動MDMS420から通信ネットワーク435を使用して、その種のウェブ・サービスを処理することを要求する。その種の実施例では、MDMS420は、MD405を認証して、参加ユーザ(図示されない)及び可動性装置405が正しい特権を要求されたデータ及び/又はコンピューティング・アプリケーションに対して有することを保証するために動作する。
【0054】
もし適切に認証されたら、MDMS420は、要求されたデータ及び/又はコンピューティング・アプリケーションを局所的にMDMS420に配置し、その種の要求されたデータ及び/又はコンピューティング・アプリケーション(例えば、ウェブ・サービス)を提供してMD405を通信ネットワーク435によって認証するために更に動作するか、又はサード・パーティ・サービス・プロバイダ440と協働して、要求されたウェブ・サービスを、認証されたMD405に対する通信に対して得るために動作する。サード・パーティ・ウェブ・サービス・プロバイダ440と協動するとき、MDMS420は、サード・パーティ・ウェブ・サービス・プロバイダ440から起動するウェブ・サービス430を、MD固有の形式に変換エンジン425を使用して変換するために動作する。加えて、認証されたMD405からのウェブ・サービスに対する要求が満足されるとき、MDMS420は、要求されたウェブ・サービスを、暗号化エンジン445を使用して暗号化するために動作する。
【0055】
加えて、MDMS420は、選択された暗号化プロトコル(例えば、PKI暗号化)を使用してファイル・システム(図示されない)と更に協働し、MD405への通信のために要求されたデータを得る。協動するファイル・システムは、(限定されないが)ファイル・アロケーション・テーブル(FAT)ファイル・システム、及び新技術のファイル・システム(NTFS)を含む。
【0056】
図5は、図示されたネットワーク化されたコンピューティング環境に配置された可動性装置管理サーバ(MDMS)の典型的な構成要素を示すブロック図である。図示されるように、ネットワーク化されたコンピューティング環境は、典型的なMDMS及び構成要素を各々が有するサイトA、サイトB、及びサイトCを含む。サイトAは、それ自体がオペレーティングシステム504を含むMDMS502を含む。オペレーティングシステム(OS)504は、MDMS・Java(登録商標)コード508を同様にサポートするJava(登録商標)仮想マシン(JVM)506をサポートするものとして示される。MDMS・Java(登録商標)コード508は、その中に、SOAP連鎖538、及びサービス548を含む。加えて、オペレーティングシステム504は、ユーザ・データベース510、キー・データベース512、及びファイル記憶装置514をサポートして協働するために動作する。また、オペレーティングシステム504は、常駐アプリケーション550、JVM552、及びJVM554をサポートして協働するために動作する。更に、OS504は、暗号化ドライバ、通信インターフェース・ドライバ、及びネットワーク・ドライバをサポートして協働するために動作する。OS504をミラーリングするとき、MDMS502はハードウェア(例えば、ハードウェア・アクセラレータ、暗号化ドライバと協働する通信インターフェース・ポート、及びネットワーク・インターフェース・カード(NIC)、通信インターフェース・ドライバ、並びにネットワーク・ドライバ)をMDMS502オペレーション中に保守する。
【0057】
加えて、図示されるように、MDMSは、MDMS502を協動するファイル/データ記憶装置518及び協動MDMS520,522に接続するために動作可能な記憶領域ネットワーク(SAN)/ネットワーク結合記憶装置(NAS)インターフェース516を含む。SAN/NASインターフェース516は、協動するファイル/データ記憶装置及びMDMS520,522に、通信ネットワーク519を通して結合される。また、図示されるように、MDMS502は、MDMS502の近くに存在する(又は、MDMS502とは地理的に異なる)他のMDMS環境536,528と協働する。MDMS環境536は、MDMS534及びファイル/データ記憶装置522を含む。同様に、MDMS環境528は、ファイル/データ記憶装置524に機能的に結合するMDMS526,530を含む。
【0058】
SOAP連鎖モジュール538の内部では、(限定されないが)データ通信をモニタするために動作するパケット・スニッファ、データ特権及びアクセスを維持するために動作するセキュリティ強化、サービス使用量を測定するために動作する使用量/モニタ、及び要求中の構成要素(例えば、図示されない認証されたMD)と協働するためのウェブ・サービスをキャッシュするために動作するウェブ・サービス・プロキシを含む多数のサブモジュールが常駐する。これらのサブモジュールは、(限定されないが)パケット・スニッファ・サブモジュールで動作する管理デバッガ、セキュリティ/強化サブモジュールで動作するセキュリティ管理プログラム、使用量/モニタ・サブモジュールで動作する測定管理プログラム、及びウェブ・サービス・プロキシで動作するプロキシ管理プログラムを含む1又は複数のサブモジュール・アプリケーションによって制御可能である。
【0059】
サービス・モジュール548の内部では、(限定されないが)可動性装置管理プログラム、暗号化管理プログラム(PKCS管理プログラム)、ファイル転送サービス、ウェブ・サービス管理プログラム、ウェブ・サービス・アクセス制御サービス、ウェブ・サービス測定サービス、Universal Description, Discovery, and Integration ディレクトリ(UDDIディレクトリ)サービス、UDDIリポジトリ・サービス、ファイル・システム(例えば、Omniファイル・システム)、SOAPプロキシ・サービス、ウェブ・サービス変換サービス、並びに(限定されないが)ロードバランシング、MDMSホット・スワッピング、及びフェイルオーバーを含む機能を実行するために動作するサービス・オペレーションの質を含む多数のサービスが常駐する。
【0060】
常駐アプリケーション550は、(限定されないが)セキュリティ、ルータ、SAN/NAS制御、及び暗号化制御を含む。JVM552は、暗号化情報(例えば、キー情報)、ユーザ認証、サービス配分、及びMDMS・Java(登録商標)オペレーションを動作させて処理するコードを含む。比較してみると、JVM554は、可動性装置ハードウェア構成をエミュレートすることを可能にするJava(登録商標)コードを含む。
【0061】
オペレーションでは、MDMSは1又は複数の上記構成要素に影響力を行使して、ウェブ・サービスに対する要求を処理し、認証情報及び検証情報を使用して協動する構成要素に要求するための暗号化プロセスを使用してウェブ・サービスを安全に提供する。MDMS502は、他のMDMS環境(例えば、MDMS環境536,528)と協働して、ウェブ・サービスに対する要求を満たす。
【0062】
図示される実施例では、MDMS501は、ユーザ・データの安全な管理、アプリケーション及びサービスのレジストリ、並びに記憶装置の調整を提供する。オペレーションでは、MDMS501は、ユーザ・アクセスと管理機能の両方をサポートする。例えば、モバイル・デスクトップ・ユーザは、アプリケーション及びデータをMDMS501を通して接続する。この状況では、接続すると直ぐ、MDMS501がユーザ認証及びユーザ選択をチェックする。アクセス制御が自動的に課され、「スキン」がアプリケーション及びサービスに適用されて、参加ユーザの環境に適合する。アプリケーション及びデータに対する要求はローカルデバイスの速度で処理され、システム改良のためにモニタされる。
【0063】
更に、MDMS502は動作して、ユーザがパーミッションを有するファイル記憶装置(例えば、518,532,524)にアクセスし、ファイルを個人、グループ、又は世界に発行することを可能にする。この状況では、MDMS502は種々のMDMS構成要素を利用して、ファイル、アプリケーション/サービス548,550、及び大容量記憶装置の管理を提供する。更に、協動する可動性装置(図示されない)を使用してリモート・ロケーションからMDMS502に接続する機能を管理者に提供するので、MDMS502は更に強力な管理を可能にする。
【0064】
図5に示されるように、MDMS502は多数の機能構成要素、及びモジュールを含む。これらの構成要素、及びモジュールは、(限定されないが)セキュリティ、可動性装置管理、暗号化キーの追跡及び管理、トランザクションの測定、ファイル・システム管理、アプリケーション/サービス管理、アプリケーション契約管理、ウェブ・サービス・モニタリング、従来インフラストラクチャの拡張、データ記憶管理、並びにクラスタの配置及び管理を含む機能を提供するために動作する。
【0065】
図6は、ウェブ・サービスを処理する協動MDMS及びMDと協動するときに、典型的なMDMS502によって実行される処理を示す。図示されるように、処理はブロック600で始まり、協動MDの認証が生成又は更新される必要があるか否かを決定するためにチェックが実行されるブロック605に進む。もし、MDの認証は確立又は更新される必要がないことをブロック605におけるチェックが示したら、処理はブロック600に戻り、そこから継続する。
【0066】
しかし、もしブロック605におけるチェックがMDの認証が確立又は更新されることが必要であることを示したら、協動MDがMDMSに対して新規か否か、及びMDMSによる初期認証を要求するか否かを決定するためにチェックが実行されるブロック610に処理は進む。もしブロック610におけるチェックが新規MDに対する認証が要求されていることを示したら、MDMSが新規MDに対する認証情報を生成するブロック615に処理は進む。そこから、暗号化キーが生成されて認証中のMDと通信するブロック620に処理は進む。次に、認証情報及び暗号化情報を、認証中の協動MDにブロック625において伝達する。次に、MDMSは、MDに対するグループ帰属関係を、協動するファイル・システムで認証情報及び暗号化情報を使用して関連付ける。次に、チェックがブロック635において実行され、認証が正常であったか否かを決定する。もしチェックが正常でなかったとブロック635において判断されると、エラーが発生したブロック640に処理は進む。次に、認証誤りが、ブロック645において修正される。そこから、処理はブロック635の入力に戻り、そこから進む。
【0067】
しかし、もしブロック635において認証テストがパスしたことを識別したら、パーミッション変更が協動MDに対して要求されるか否かを決定するためにチェックが実行されるブロック650に処理は進む。もしパーミッション変更が要求されることをブロック650におけるチェックが示したら、認証情報及び/又は暗号化情報が更新されるブロック655に処理は進む。そこから、処理はブロック635の入力に戻り、そこから継続する。
【0068】
しかし、もしブロック650におけるチェックがパーミッション変更は必要ないことを示したら、MD認証構成が終わるブロック660に処理は進む。また、もしブロック610におけるチェックが、認証を要求するのは新規MDではないことを示したら、処理はブロック650の入力に進み、そこから継続する。
【0069】
図7は、ウェブ・サービスを処理する図示された実施例の典型的な可動性装置管理サーバ502によって実行される処理を示す。図7に示されるように、処理はブロック700で始まり、MDMSが協動する通信ネットワークとの通信に携わったか否かを決定するためにチェックが実行されるブロック705に進む。もしブロック700におけるチェックが、通信に携わっていなかったことを示したら、処理はブロック700に戻り、そこから継続する。しかし、もしブロック705において、協動する通信ネットワークを用いてMDMSが通信に携わってきたと決定されたら、1又は複数の協動MDが、MDMSから要求された1又は複数のウェブ・サービスを有するか否かを決定するためにチェックが実行されるブロック710に処理は進む。もしブロック710におけるチェックが、ウェブ・サービスに対するMD要求が存在しないことを示したら、処理はブロック710の入力に戻り、そこから継続する。
【0070】
しかし、もしブロック710におけるチェックが、1又は複数の協動MDによるウェブ・サービスに対する要求が存在することを示したら、MDがMDMSによってMDセキュリティ及び認証サービスを使用して認証されるブロック715に処理は進む。次に、チェックがブロック720において実行され、MDが認証されていたか否かを決定する。もしMDが認証されていたら、ウェブ・サービス要求が処理されるブロック735に処理は進む。次に、ウェブ・サービスが、MDMS及びMDによって、ブロック740及びブロック745において実行される。
【0071】
しかし、もしブロック720におけるチェックが、MDが認証されていなかったことを示したら、エラーが発生するブロック725に処理は進む。そこから、認証が再度試みられるか否かを決定するためにチェックが実行されるブロック727に処理は進む。もしブロック727におけるチェックが、MD認証は再度試みられることを示したら、処理はブロック720に戻り、そこから継続する。しかし、もしブロック727におけるチェックが、MD認証は再度試みられないことを示したら、処理はブロック730で終了する。
【0072】
図8は、ウェブ・サービス処理の他の実施例で典型的な可動性装置管理サーバ502によって実行される処理を示す。図8に示されるように、処理はブロック800で始まり、1又は複数の認証されたMDが要求された1又は複数のウェブ・サービスを有するか否かを決定するためにチェックが実行されるブロック805に進む。もし、ブロック805において、認証されたMDからウェブ・サービスに対する要求が存在しないことが決定されたら、処理はブロック800に戻り、そこから継続する。しかし、もしブロック805において、1又は複数の認証されたMDからのウェブ・サービスに対する要求が存在することが決定されたら、MDMSがデータ及び/又はコンピューティング・アプリケーションを協動するファイル記憶装置、協動するウェブ・サービス・プロバイダ、及び他の協動MDMSの何れかから検索するブロック810に処理は進む。そこから、ブロック815においてチェックが実行され、検索されたウェブ・サービスがMD固有のウェブ・サービス形式への変換を要求するか否かが決定される。もしブロック815が変換は必要でないことを示したら、要求されたデータ及び/又はコンピューティング・アプリケーションが(例えば、公開/秘密キーを使用する)選択された暗号化プロトコル毎に暗号化されるブロック825に処理は進む。そこから、暗号化されたデータ及び/又はコンピューティング・アプリケーションを、要求中の認証されたMDに伝達するブロック830に処理は進む。そこから、MDオペレーションが測定され、使用量、挙動、類似点、及び類似のメトリクスをMDMSによってブロック835において得る。次に、測定データは、ブロック840において後で使用するために記憶される。次に、ブロック845においてチェックが実行され、記憶された測定データがリポートされるか否かを決定する。もしブロック845におけるチェックが測定データがリポートされることを示したら、測定データが解析されて測定リポートを生成するブロック850に処理は進む。次に、処理はブロック855で終了する。
【0073】
しかし、もしブロック815におけるチェックが変換は必要であることを示したら、要求されたウェブ・サービスがMD固有のウェブ・サービスに変換されるブロック820に処理は進む。そこから、ブロック825に処理は進み、そこから継続する。
【0074】
図9は、ウェブ・サービス処理の他の実施例で典型的な可動性装置管理サーバ502によって実行される処理を示す。図9に示されるように、処理はブロック900で始まり、1又は複数の認証されたMDが要求された1又は複数のウェブ・サービスを有するか否かを決定するためにチェックが実行されるブロック905に進む。もし、ブロック905において、認証されたMDからウェブ・サービスに対する要求が存在しないことが決定されたら、処理はブロック900に戻り、そこから継続する。しかし、もしブロック905において、1又は複数の認証されたMDからのウェブ・サービスに対する要求が存在することが決定されたら、MDMSがデータ及び/又はコンピューティング・アプリケーションを協動するファイル記憶装置、協動するウェブ・サービス・プロバイダ、及び他の協動MDMSの何れかから検索するブロック910に処理は進む。そこから、ブロック915においてチェックが実行され、検索されたウェブ・サービスがMD固有のウェブ・サービス形式への変換を要求するか否かが決定される。もしブロック915が変換は必要でないことを示したら、要求されたデータ及び/又はコンピューティング・アプリケーションが(例えば、公開/秘密キーを使用する)選択された暗号化プロトコル毎に暗号化されるブロック925に処理は進む。そこから、暗号化されたデータ及び/又はコンピューティング・アプリケーションを、要求中の認証されたMDに伝達するブロック930に処理は進む。そこから、チェックがブロック935で実行され、MDMSと協動MDの間の通信リンクがアクティブか否かを決定する。
【0075】
もしブロック935におけるチェックがリンクはアクティブであることを示したら、キャッシュされたトランザクションが同期されるブロック945に処理は進む。そこから、MDオペレーションが測定され、使用量、挙動、類似点、及び類似のメトリクスをMDMSによってブロック950において得る。次に、測定データは、ブロック955において後で使用するために記憶される。次に、ブロック960においてチェックが実行され、記憶された測定データがリポートされるか否かを決定する。もしブロック960におけるチェックが測定データがリポートされることを示したら、測定データが解析されて測定リポートを生成するブロック965に処理は進む。次に、処理はブロック970で終了する。
【0076】
しかし、もしブロック935におけるチェックが通信リンクはアクティブでないことを示したら、要求されたウェブ・サービスがキャッシュされるブロック940に処理は進む。そこから処理はブロック935の入力に進み、そこから継続する。また、もしブロック915におけるチェックが変換は必要であることを示したら、要求されたウェブ・サービスがMD固有のウェブ・サービスに変換されるブロック920に処理は進む。そこから、処理はブロック925に進み、そこから継続する。
【0077】
要約すると、本発明のシステム及び方法は、可動性装置プラットフォームの一部として使用する可動性装置管理サーバを提供する。しかし、本発明は、種々の変更、及び代替構造を受け入れる余地があることが分かる。本発明を本明細書に記載された特定の構造に限定する意図はない。逆に、本発明は、本発明の範囲内の全ての変更、代替構造、及び同等物をカバーする。
【0078】
また、本発明が(有線、及び無線コンピュータ環境の両方を含む)多様なコンピュータ環境、部分的コンピューティング環境、及び現実の環境で利用されることを明記する。本明細書に記載された種々の技術は、ハードウェア、ソフトウェア、又は両方の組合せで利用される。本発明の技術は、プロセッサ、(揮発性、及び非揮発性メモリ、及び/又は記憶装置要素を含む)プロセッサによって読み取り可能な記憶媒体、少なくとも1つの入力装置、及び少なくとも1つの出力装置を含むプログラム可能なコンピュータを維持するコンピューティング環境で実施されることが好ましい。種々の命令セットと協動するコンピューティング・ハードウェア論理回路がデータに適用され、上記機能を実行し出力情報を生成する。出力情報は、1又は複数の出力装置に適用される。典型的なコンピューティング・ハードウェアによって使用されるプログラムは、コンピュータ・システムと対話するための高レベル手続き言語、又はオブジェクト指向プログラミング言語を含む種々のプログラミング言語で実施されることが好ましい。もし所望するなら、図示された本発明の装置及び方法は、アセンブリ言語、又は機械語で実施される。何れにしても、言語はコンパイラ型言語、又はインタープリタ型言語である。その種の各コンピュータ・プログラムは、記憶媒体(又は、記憶装置)が上記手続きを実行するためにコンピュータによって読み取られるときにコンピュータを設定して動作させるための一般の(又は、特定目的の)プログラム可能なコンピュータによって読み取り可能な記憶媒体(又は、記憶装置)(例えば、ROM、又は磁気ディスク)に記憶されることが好ましい。また、本発明の装置は、コンピュータ・プログラムで構成されたコンピュータ読み取り可能な記憶媒体として実施されるとも考えられ、記憶媒体は、コンピュータを特定の予め定められた方法で動作させるように構成される。
【0079】
以上、本発明の好ましい実施例について図示し記載したが、特許請求の範囲によって定められる本発明の範囲から逸脱することなく種々の変形及び変更がなし得ることは、当業者には明らかであろう。
【図面の簡単な説明】
【0080】
【図1】本発明のシステム及び方法の実施例による典型的なコンピューティング環境のブロック図である。
【図2】本発明のシステム及び方法による典型的なコンピューティング・ネットワーク環境のブロック図である。
【図3】本発明のシステム及び方法による典型的なコンピューティング構成要素の間の対話を示すブロック図である。
【図4】本発明のシステム及び方法による可動性装置プラットフォームの実施例のブロック図である。
【図5】本発明のシステム及び方法による可動性装置管理サーバの典型的なアーキテクチャのブロック図である。
【図6】本発明のシステム及び方法によるユーザ及び装置管理を処理する可動性装置管理サーバによって実行される処理の流れ図である。
【図7】本発明のシステム及び方法によるウェブ・サービス要求を処理するときに、可動性装置管理サーバによって実行される処理の流れ図である。
【図8】本発明のシステム及び方法によるウェブ・サービス処理の間にウェブ・サービスを変換するときに可動性装置管理サーバによって実行される処理の流れ図である。
【図9】本発明のシステム及び方法による測定及び断続的接続処理を実行するときに、可動性装置管理サーバによって実行される処理の流れ図である。
【符号の説明】
【0081】
100 コンピューティング・システム
105 バス
110 中央処理装置(CPU)
112 相互接続
115 コプロセッサ
120 メモリ制御装置
125 ランダム・アクセス・メモリ(RAM)
130 読出し専用メモリ(ROM)
135 周辺機器制御装置
140 プリンタ
145 キーボード
150 マウス
155 データ記憶ドライブ
160,435,519 通信ネットワーク
163 ディスプレイ制御装置
165 ディスプレイ
170 ネットワーク・アダプタ
180,504 オペレーティングシステム
180’ コンピューティング・アプリケーション
200,410,415 コンピューティング環境
205 サーバ
210 タブレット・パーソナル・コンピュータ
215 携帯電話
220 電話
225 携帯情報端末
300,400 可動性装置プラットフォーム
305 通信インターフェース
310,405 可動性装置(MD)
420,501,502,520,522,526,528,534,536 可動性装置管理サーバ(MDMS)
425 変換エンジン
430 ウェブ・サービス
440 サード・パーティ・ウェブ・サービス・プロバイダ
445 暗号化エンジン
506 Java仮想マシン(JVM)
508 MDMS・Javaコード
510 ユーザ・データベース
512 キー・データベース
514 ファイル記憶装置
516 記憶領域ネットワーク(SAN)/ネットワーク結合記憶装置(NAS)インターフェース
518,524,532 ファイル/データ記憶装置
550 常駐アプリケーション
552,554 Java仮想マシン(JVM)

【特許請求の範囲】
【請求項1】
ウェブ・サービスを提供するサーバ・コンピューティング環境であって、
オペレーティングシステムを実行するために動作するハードウェア・プラットフォーム、
前記サーバ・コンピューティング環境と協働する構成要素の間で、ウェブ・サービス及び関連するウェブ・サービス・トランザクション・データを通信するために動作する通信インターフェース、
ウェブ・サービスを前記協働する構成要素によって処理できる固有の形式に変換できる変換モジュール、及び
前記協働する構成要素の認証情報及び検証情報を使用して1又は複数のウェブ・サービスに含まれるデータ及びコンピューティング・アプリケーションを暗号化するために動作する暗号化モジュールを含むことを特徴とするサーバ・コンピューティング環境。
【請求項2】
可動性装置管理プログラム、暗号化管理プログラム、ファイル転送管理プログラム、ウェブ・サービス管理プログラム、ウェブ・サービス・アクセス、ウェブ・サービス測定、UDDIディレクトリ、UDDIリポジトリ、ファイル・システム、SOAPプロキシ、変換プログラム、及びサービスの質の何れかを含む常駐ウェブ・サービスを更に含むことを特徴とする、請求項1に記載のサーバ・コンピューティング環境。
【請求項3】
前記協働する構成要素を認証するためのセキュリティ・アプリケーション、通信ルータ、記憶領域ネットワーク(SAN)/ネットワーク結合記憶装置(NAS)制御装置アプリケーション、及び暗号化制御の何れかを含む常駐アプリケーションを更に含むことを特徴とする、請求項2に記載のサーバ・コンピューティング環境。
【請求項4】
前記サーバ・コンピューティング環境に、可動性装置ハードウェア・エミュレータ、暗号化制御、ユーザ認証、サービス制御、及びサーバ・コンピューティング環境制御の何れかを含むオペレーションを実行するように指示するための少なくとも1つの命令セットを提供するために動作可能なJava(登録商標)仮想マシンを更に含むことを特徴とする、請求項3に記載のサーバ・コンピューティング環境。
【請求項5】
前記協働する構成要素を動作させる参加ユーザを表すデータを有するユーザ・データベースを更に含むことを特徴とする、請求項4に記載のサーバ・コンピューティング環境。
【請求項6】
前記サーバ・コンピューティング環境による1又は複数の暗号化プロセスで使用される暗号化キーを表すデータを有するキー・データベースを更に含むことを特徴とする、請求項5に記載のサーバ・コンピューティング環境。
【請求項7】
ファイルを記憶するために動作するファイル/データ記憶装置を更に含むことを特徴とする、請求項6に記載のサーバ・コンピューティング環境。
【請求項8】
前記ファイル/データ記憶装置が、暗号化されたファイルを記憶して処理するために動作することを特徴とする、請求項7に記載のサーバ・コンピューティング環境。
【請求項9】
前記ファイル/データ記憶装置が、ファイル・アロケーション・テーブル(FAT)、又は新技術のファイル・システム(NTFS)の何れかを含むことを特徴とする、請求項8に記載のサーバ・コンピューティング環境。
【請求項10】
前記サーバ・コンピューティング環境を協働するデータ記憶装置に接続するために動作するSAN/NAS通信インターフェースを更に含むことを特徴とする、請求項9に記載のサーバ・コンピューティング環境。
【請求項11】
ウェブ・サービスを処理しているときに暗号化命令を処理するために動作する暗号化ドライバを更に含むことを特徴とする、請求項10に記載のサーバ・コンピューティング環境。
【請求項12】
協働する通信ハードウェア構成要素とインターフェースしてウェブ・サービスと通信するために動作する通信インターフェース・ドライバを更に含むことを特徴とする、請求項11に記載のサーバ・コンピューティング環境。
【請求項13】
前記サーバ・コンピューティング環境が1又は複数のサーバ・コンピューティング環境サブモジュールを起動して、ウェブ・サービスに対する要求を処理し、
前記サブモジュールが、常駐サービス、常駐アプリケーション、SOAP連鎖、及びJava(登録商標)仮想マシンの何れかを含むことを特徴とする、請求項12に記載のサーバ・コンピューティング環境。
【請求項14】
前記サーバ・コンピューティング環境が、ウェブ・サービスに対する要求を提供する少なくとも1つの可動性装置と協働することを特徴とする、請求項1に記載のサーバ・コンピューティング環境。
【請求項15】
前記可動性装置を認証することができる管理モジュールを更に含むことを特徴とする、請求項1に記載のサーバ・コンピューティング環境。
【請求項16】
協働するコンピューティング環境の間でデータ及びコンピューティング・アプリケーションを安全に通信するための方法であって、
ウェブ・サービスを処理できるサーバ・コンピューティング環境を提供し、
前記サーバ・コンピューティング環境とウェブ・サービスを要求する協働する構成要素の間の通信を確立し、
前記協働する構成要素を認証して、要求されたウェブ・サービスに対する権利及びパーミッションを有することを保証し、及び
ウェブ・サービスを認証された協働する構成要素に伝達する諸ステップを含むことを特徴とする方法。
【請求項17】
前記データ及びコンピューティング・アプリケーションを、ウェブ・サービスの一部として暗号化するステップを更に含むことを特徴とする、請求項16に記載の方法。
【請求項18】
前記要求されたウェブ・サービスを、前記ウェブ・サービスを要求中の前記協働する構成要素に固有の形式に変換するステップを更に含むことを特徴とする、請求項16に記載の方法。
【請求項19】
前記認証された協働する構成要素に伝達される前記ウェブ・サービスで、オペレーションの測定を実行するステップを更に含むことを特徴とする、請求項16に記載の方法。
【請求項20】
ウェブ・サービスを処理するための方法であって、
協働する構成要素からウェブ・サービスに対する要求を受信し、
前記協働する構成要素を認証して、前記協働する構成要素が前記要求されたウェブ・サービスに対する権利及び特権を有するか否かを識別し、
前記協働する構成要素を認証したら直ぐ、要求中の構成要素に対する通信のための前記ウェブ・サービスを暗号化し、及び
前記要求されたウェブ・サービスを、前記認証された協働する構成要素に伝達する諸ステップを含むことを特徴とする方法。
【請求項21】
前記要求されたウェブ・サービスを、要求中の構成要素に固有の形式に変換するステップを更に含むことを特徴とする、請求項20に記載の方法。
【請求項22】
前記認証された協働する構成要素に伝達される前記ウェブ・サービスで、オペレーションの測定を実行するステップを更に含むことを特徴とする、請求項21に記載の方法。
【請求項23】
以下の方法を実行するコンピュータに指示するためのコンピュータ読み取り可能な命令を有するコンピュータ読み取り可能な媒体であって、前記方法が、
協働する構成要素からウェブ・サービスに対する要求を受信し、
前記協働する構成要素を認証して、前記協働する構成要素が前記要求されたウェブ・サービスに対する権利及び特権を有するか否かを識別し、
前記協働する構成要素を認証したら直ぐ、要求中の構成要素に対する通信のための前記ウェブ・サービスを暗号化し、及び
前記要求されたウェブ・サービスを、前記認証された協働する構成要素に伝達する諸ステップを含むことを特徴とする媒体。
【請求項24】
ウェブ・サービスを安全に伝達するシステムであって、
ウェブ・サービスを処理するための第1の手段、
ウェブ・サービス、及び関連するウェブ・サービス・トランザクション・データを記憶するための第2の手段、
前記ウェブ・サービスを、協働する構成要素によって提供された認証情報及び検証情報を使用して暗号化するための第3の手段、
前記ウェブ・サービスを、前記協働する構成要素によって処理できる固有の形式に変換するための第4の手段、及び
前記ウェブ・サービスを、前記協働する構成要素に伝達するための第5の手段を含むことを特徴とするシステム。
【請求項25】
前記協働する構成要素による前記ウェブ・サービスの使用量を測定するための第6の手段を更に含むことを特徴とする、請求項24に記載のシステム。
【請求項26】
前記協働する構成要素を認証するための第7の手段を更に含むことを特徴とする、請求項25に記載のシステム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公表番号】特表2007−519066(P2007−519066A)
【公表日】平成19年7月12日(2007.7.12)
【国際特許分類】
【出願番号】特願2006−527962(P2006−527962)
【出願日】平成16年4月30日(2004.4.30)
【国際出願番号】PCT/US2004/013504
【国際公開番号】WO2005/036304
【国際公開日】平成17年4月21日(2005.4.21)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.Bluetooth
【出願人】(506103762)レルム システムズ インコーポレイテッド (3)
【Fターム(参考)】