JP4519426B2 - モバイルデバイスの構成管理のためのプログラム及び方法 - Google Patents

モバイルデバイスの構成管理のためのプログラム及び方法 Download PDF

Info

Publication number
JP4519426B2
JP4519426B2 JP2003188930A JP2003188930A JP4519426B2 JP 4519426 B2 JP4519426 B2 JP 4519426B2 JP 2003188930 A JP2003188930 A JP 2003188930A JP 2003188930 A JP2003188930 A JP 2003188930A JP 4519426 B2 JP4519426 B2 JP 4519426B2
Authority
JP
Japan
Prior art keywords
download
management server
list
computing device
offer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2003188930A
Other languages
English (en)
Other versions
JP2004062892A5 (ja
JP2004062892A (ja
Inventor
ウィッケンス ラム メリル ジョン
ローレンス アルバート ランツ エリック
イー.エスパラゴザ ルイス
トリュファット マルセロ
クレイグ マール デニス
トッド ウィルソン ラッセル
イランジェラン パドマナブハン ウディヤン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2004062892A publication Critical patent/JP2004062892A/ja
Publication of JP2004062892A5 publication Critical patent/JP2004062892A5/ja
Application granted granted Critical
Publication of JP4519426B2 publication Critical patent/JP4519426B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/22Processing or transfer of terminal data, e.g. status or physical capabilities
    • H04W8/24Transfer of terminal data
    • H04W8/245Transfer of terminal data from a network towards a terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0893Assignment of logical groups to network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/166Implementing security features at a particular protocol layer at the transport layer

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、モバイルデバイスのアプリケーション配信及び構成管理のための、システム管理フレームワーク及び構成管理を行う方法に関し、詳細には、モバイルデバイスのリモート構成のためにアプリケーションを配信するためのシステムで使用する、システム管理フレームワーク、記録媒体、構成管理サーバ、構成管理を行う方法、モバイルデバイス、ユーザインタフェース(UI)、及びコンピューティングデバイスに関する。
【0002】
【従来の技術】
コンピュータは、職場の一部として不可欠なものになっている。多くの組織では、ほぼすべての従業員が少なくとも1台のコンピュータを使用している。この結果、大規模なビジネスでは通例非常に多数のコンピュータを操作し、維持している。そのようなビジネスでは、メンテナンス作業を可能な程度まで自動化することが重要になる。
【0003】
幸いなことに、ローカルエリアネットワーク(LAN)及びワイドエリアネットワーク(WAN)も普及しており、組織の各種コンピュータが、ユーザ認証、ファイル共有、電子メール、及び各種のその他の種のサービスといった中央で提供されるコンピュータサービスを利用することができる。
【0004】
構成管理システムは、組織内の各種の異なるコンピュータのメンテナンスと管理を自動化するためにネットワーク環境で効果的に使用できるサービスの1タイプを表す。このサービスは、デスクトップコンピュータ、サーバ、及びサーバアプリケーションに関する、集中化されたソフトウェア配布、資産管理、及びリモートのトラブルシューティング用のツールを提供する。マイクロソフト社の「Systems Management Server」は、その目的で設計されたシステムの一例である。
【0005】
図1に、自動化された構成管理を実装するコンピュータシステム10の簡略化した一例を示す。このようなシステムは、管理サーバ12及び複数のクライアントコンピュータ14を含む。クライアントコンピュータ14は、ローカルエリアネットワークまたはワイドエリアネットワーク16を通じて、クライアント間及び管理サーバ12と通信することができる。
【0006】
図1には単一のデバイスとして表しているが、管理サーバ12は、複数の個々のコンピュータまたはサーバからなってもよく、それらは互いに近接させて配置しても、あるいは各種の異なる場所に配置してもよい。
【0007】
現在のオペレーティングシステム及びアプリケーションソフトウェアは、しばしば、そのオペレーティングシステム及びアプリケーションソフトウェアが常駐するコンピュータの自動化された構成管理のクライアント側サポートを提供する。例えば、Microsoft Windows(登録商標) XP(登録商標)ファミリーのオペレーティングシステムは、ハードウェアコンポーネント及びソフトウェアコンポーネント両方の詳細なインベントリをデータベースに保持し、このデータベースは、そのコンピュータ自体と他のコンピュータ両方のコンポーネントからプログラムによるクエリとデータ照合を行うことができる。Windows(登録商標)環境では、この機能はWindows(登録商標)Management InstrumentationあるいはWMIとして知られる。変更及び構成管理ソフトウェアは、WMI情報を利用して個々のコンピュータのインベントリを入手し、コンピュータの構成を更新または変更すべきかどうかを評価することができる。
【0008】
オペレーティングシステムによるサポートに加えて、個々のクライアントコンピュータ14は通例、自動化された構成管理をサポートする特殊目的のソフトウェアを用いて構成される。このようなソフトウェアは通常、特定ベンダによる自動化構成管理システムの実装の一部として設計され、例えばMicrosoft(登録商標)のSystems Management Server製品の一部として設計される。この特殊目的ソフトウェアは、クライアントコンピュータのオペレーティングシステムと協働して、管理サーバ12とともに各種の機能を行う。したがって、自動化構成管理システムのフレームワーク全体には、サーバコンポーネントとクライアントコンポーネントの両方が含まれる。
【0009】
図2に、Microsoft(登録商標)のSystems Management Server製品によって実装される構成管理フレームワークの簡略化した論理コンポーネントを示しており、これにはサーバ12のコンポーネントと、クライアントコンピュータ14内に実装されたコンポーネントが含まれる。図のコンポーネントは、フレームワークのインベントリ及びソフトウェア配布機能に関連する。
【0010】
管理サーバ12は、クライアントコンピュータ14に常駐するクライアントインベントリ及び発見コンポーネント22と協働して動作するサーバインベントリ及び発見コンポーネント20を有する。クライアントインベントリ及び発見コンポーネント22は、クライアントコンピュータ14の識別情報と、ハードウェア及びソフトウェアのインベントリを収集し、その情報をデータベース構造にまとめ、その情報をサーバ12のサーバインベントリ及び発見コンポーネント20に提供する。識別情報は、発見データレコードまたはDDRと称されるデータ構造としてパッケージされ、報告される。管理サーバは、この情報をデータベース中に保持して資産管理機能を容易にする。クライアントコンピュータ14内では、情報の多くは、Windows XP(登録商標)オペレーティングシステムのWMI機能を使用して収集する。サーバ12とクライアントコンピュータ14間の通信には、自動化構成管理システムの特定の実装に特有の所定プロトコルを利用する。
【0011】
クライアントコンピュータは可能性としては200を超えるプロパティを収集し、報告するが、これには次のような詳細が含まれる。
・ディスクドライブの数
・プロセッサのタイプ
・メモリ量
・オペレーティングシステム
・モニタ及びディスプレイの設定
・コンピュータ名及びIP(Internet Protocol)アドレス
・接続された周辺機器についての情報
・ネットワークタイプ
・BIOS(Basic Input/Output System)情報
【0012】
これに加えて、各クライアントコンピュータは、製造者及びバージョン情報を含む、そのクライアントにインストールされたすべてのソフトウェアアプリケーションのリストを報告する。
【0013】
管理サーバ12は、クライアントコンピュータ14など管理されるコンピュータに、アドバタイズメントとも称するポリシーをプッシュするか、自動的に配布するポリシープッシャ24を含む。ポリシーは、ダウンロード及びインストールが可能なソフトウェアパッケージを示し、また、示されるソフトウェアパッケージをどのタイプのクライアントがダウンロードし、インストールすべきかを指示する情報も含む。ソフトウェアパッケージは、ファイルの集合であり、それらのファイルをダウンロードし、インストールするための命令を伴う。
【0014】
クライアントコンピュータ14は、サーバ12からポリシーを受け取り、そのポリシーを評価してどのポリシーをクライアントコンピュータ14に適用(target)するかを決定するポリシーエバリュエータ26を備える。ポリシーエバリュエータ26は、あるポリシーをクライアントコンピュータ14に適用すると決定すると、その情報をクライアントコンピュータ14のアプリケーションインストールコンポーネント28に渡す。インストールコンポーネント28はそのポリシー情報を調べ、関連付けられたソフトウェアパッケージをどのようにダウンロードするかを決定する。そして、インストールコンポーネント28は、サーバ12に関連付けられた配布ポイント29に接続し、ソフトウェアパッケージをダウンロードする。パッケージをダウンロードすると、アプリケーションインストールコンポーネント28は、ダウンロードしたソフトウェアパッケージに含まれる情報に従って、パッケージされたソフトウェアをインストールする。
【0015】
Microsoft(登録商標)のSystem Management Serverなど既存の自動化構成管理システムは、管理されるコンピュータが、高帯域幅ネットワーク接続を通じて実質的に恒久的に管理サーバに接続されたデスクトップまたはその他のコンピュータである、図1に示す従来のネットワーク環境では良好に動作する。しかし、組織内の個々の従業員が、管理サーバとの永続的な高帯域幅接続に加わらない携帯型のコンピューティングデバイスを利用する傾向が高まっており、そうしたデバイスは通例、一般には低速度でしばしば信頼性のない通信経路を通じて不定期あるいは断続的に管理サーバに接続される。
【0016】
さらに、そのような携帯型またはモバイル型のコンピューティングデバイスは、通例は、従来のデスクトップコンピュータに比べて機能性が限られる。具体的には、携帯情報端末(PDA)及びポケットパーソナルコンピュータ(PPC)として知られるハンドヘルドデバイスが非常に広く使用されるようになっており、そのユーザはしばしば、電子メールの閲覧や連絡先リストの同期といったタスクを行うためにそのようなデバイスを企業ネットワークに接続する。ネットワーク接続は、関連付けられたデスクトップコンピュータを通じても、または無線及び/またはリモートのアクセス手段を含む独立したネットワーク接続を通じたものでもよい。
【0017】
多くの組織では、PDAなどのハンドヘルドデバイスに対する技術サポートを公式には提供していないが、企業のヘルプデスクで受け取るそのようなデバイスに関するサポート呼出しの数は増加している。そのような呼出しは、ハンドヘルドデバイスの構成と、それらのデバイスにインストールされたアプリケーションの新規の更新の入手に関連することが多い。
【0018】
コンピュータ、または完全なデスクトップ機能よりも機能が少ない(すなわちメモリ及び/または処理リソースが限られた)コンピュータ様のデバイスを多数使用する環境は数多くある。工場の自動化制御装置、電子POS(point of sale)端末、ガソリンスタンドのポンプなどは、頻繁にネットワーク化されるが、従来のデスクトップコンピュータが持つ完全な機能及びリソースは持たない、一般に使用されるデバイスの例である。Microsoft(登録商標)社は、Windows CE(登録商標)オペレーティングシステムと称する、そのようなリソースが限られたデバイス向けの特殊なバージョンのWindows(登録商標)オペレーティングシステムを設計した。
【0019】
従来は、上述のPDAやその他の例など、断続的に接続されリソースが制限されたモバイルデバイスは、自動化された構成管理に参加することができなかった。企業がモバイルデバイスとそれに対応する技術を採用するにあたっての大きな障害の1つは、そのようなデバイスを構成するための管理オプションの不足である。既存のモバイルデバイスの構成オプションは、サポート費用、そのような構成オプションを実装するために通例必要となる多量のユーザ仲介、及び望ましくないセキュリティの露出(例えば、MITM(man−in−the−middle)攻撃)の点から実質的に制限される。
【0020】
例えば、既存の解決策の1つでは、ドッキングされたデバイスにファイルと設定を配置する構成アプリケーションを実行するデスクトップコンピュータにモバイルデバイスを「ドッキング」する必要がある。ドッキングするデバイスは通例、クレードル(cradle)に置くか、あるいはその他の形でそのホストコンピュータに接続する。別の知られる技術では、ユーザが、モバイルデバイスを介して企業ネットワークまたはインターネットをナビゲートしてダウンロードサイトを見つけ、ファイルダウンロードのハイパーリンクをタップする必要がある。ユーザは、デバイス上の所望の格納場所を指定するように促され、続いてアプリケーションをインストールすることができる。モバイルデバイスを構成するさらに別の既存の構成技術は、デバイスに差し込めるコンパクトフラッシュ(登録商標)(CF)メモリカードでアプリケーション及び/またはデータを配布するものである。CFカードは、自動的にインストールスクリプトを開始することさえできる。
【0021】
これらの方法にはそれぞれ独自の利点があるが、どの方法も多量のユーザ対話を必要とし、また(例えば企業ネットワークに)断続的に接続されるデバイスを、時間の経過に伴って更新された状態に保つ単純な方式は提供しない。これらの方法は、1度限りの構成の機会を提供するに過ぎない。この状況をさらに困難にするのは、多くの場合モバイルデバイスはかなり低速度の通信チャネル(例えば<9600ボー)を通じて接続され、アプリケーション及びデータの更新が完了するのに相当長い時間がかかることである。
【0022】
望ましくないセキュリティの露出(例えばMITM攻撃)に関しては、通例従来のモバイルデバイスの構成技術では、悪意をもったユーザがネットワークを通じて移動するデータを傍受し、あるいは変更するセキュリティ侵害からモバイルデバイスまたはリモートデバイス(すなわち企業のファイアウォールで保護されないデバイス)が保護されないことを考えられたい。これは、実際には攻撃者が2エンティティ間のすべてのネットワークトラフィックを傍受しているのに、別のコンピューティングデバイスがクライアントとサーバの両方をだましてそれらが直接互いと通信していると思わせる場合に、クライアントと特定のホストサーバ間のデータ交換が危険にさらされる恐れがあることを意味する。
【0023】
【発明が解決しようとする課題】
上述した従来技術には、既存のモバイルデバイス構成管理システムの上記及びその他の制限に対処する機構(arrangement)及び手順が必要とされているという点において、未だ改善の余地が残っている。
【0024】
本発明は、このような状況に鑑みてなされたもので、その目的とするところは、モバイルデバイスのリモート構成のためにアプリケーションを配信し、モバイルデバイスが自動化された構成管理に参加することができる、システム管理フレームワーク及び構成管理を行う方法を提供することにある。
【0025】
【課題を解決するための手段】
モバイルデバイスのアプリケーション配信及び構成管理のためのシステム管理フレームワークを記載する。このフレームワークは、管理サーバ及びモバイルコンピューティングデバイスを含む。管理サーバは、モバイルコンピューティングデバイスの構成管理の目的でダウンロード命令を通信するように構成される。モバイルコンピューティングデバイスは、非永続的な接続を通じて管理サーバに接続するように構成される。モバイルコンピューティングデバイスは、管理サーバにダウンロード命令を要求して、モバイルコンピューティングデバイスによるダウンロード及びインストールが可能な提供物を判断する。管理サーバによって提示される提供物はいずれも、モバイルコンピューティングデバイスによって行われた前回の成功したダウンロード動作以降に利用可能となった1つまたは複数のファイルを表す。モバイルコンピューティングデバイスは、ユーザが、任意の1つまたは複数の提供物のダウンロードとインストールを承認または拒絶することを可能にする。
【0026】
一実装では、特定の管理サーバソースにダウンロード命令を要求するようにモバイルデバイスを予め構成する。その特定ソースに対応する認証情報(例えば1つまたは複数のデジタル署名)は、信頼されるソースリストにモバイルデバイスによって保持される。特定ソースにダウンロード命令を要求し、受信するのに続いて、モバイルデバイスは、信頼されるソースリストを介して、受け取った命令を認証する。検証が成功すると、その命令を使用して、検証されたその命令によって指定される少なくとも1つの場所に1つまたは複数の提供物を要求し、受信する。受け取った提供物は、例えば1つまたは複数のセキュリティ機能を介してさらに信頼性を確認する。このようにして、システム管理フレームワークは、モバイルデバイスが企業ファイアウォールによる保護が及ばない範囲で動作する際に、望ましくないセキュリティ露出を実質的に排除する複数署名システムを提供する。
【0027】
【発明の実施の形態】
以下、図面を参照して本発明の実施形態を詳細に説明する。なお、各図面において同様の機能を有する箇所には同一の符号を付している。
【0028】
図3に、システム管理フレームワーク300のトップレベル表現を示す。フレームワーク300は、構成管理システムまたは管理サーバ302、及びモバイルクライアントデバイス304を備える。管理サーバ302とモバイルクライアントデバイス304は、配線または無線のネットワーク接続306を通じて直接互いと通信する。構成管理システムまたは管理サーバ302は、上述のように互換性のある複数のクライアントコンピュータと通信し、それらを管理するように構成される。そのようなクライアントコンピュータが、従来のデスクトップコンピュータなど完全な機能を持つコンピュータである場合、クライアントコンピュータは、上記のように特殊目的のソフトウェアを実行して、構成管理システムによって提供される機能との互換性を提供する。
【0029】
ただし図3の例では、モバイルクライアントデバイス304は、実質的に恒久的なネットワーク接続を管理サーバ302と共有しないモバイルクライアントである。モバイルクライアントは、代わりに、ネットワーク接続306として表す、しばしば相当に低速度の通信経路を通じて不定期または断続的に管理サーバに接続される。そのようなリモートクライアントデバイスの例には、ラップトップ、ハンドヘルドコンピュータ、PDA、工場のオートメーション制御装置、電子POS端末、ガソリンスタンドのポンプ、移動電話などが含まれる。こうしたデバイスの一部は、完全な機能を持つコンピュータに比べて処理及びストレージリソースが限られる可能性がある。モバイルクライアントデバイス304のこうした諸面から、モバイルクライアントデバイス304のアプリケーション配信及びリモート構成管理に、上述の従来の自動化構成管理またはその他の構成管理の技術を使用することが不可能となるか、あるいは非実際的、不適当となる。
【0030】
モバイルクライアントデバイス304のセキュアなアプリケーション配信と構成管理を容易にするために、モバイルクライアントデバイス304と管理サーバ302間の通信は、ワールドワイドウェブを通じてセキュアにデータを伝送するSecure HTTP(HyperText Transport Protocol)(HTTPS;hypertext transfer protocol, secure)などのセキュアソケットレイヤプロトコルを使用して行う。モバイルデバイスは、新たな提供物がないか、1つまたは複数の管理サーバ302を周期的にポーリングする。提供物は、1つまたは複数のアプリケーション、データファイル、モバイルクライアントデバイス304にロードするインストールスクリプト、またはデバイス304にインストールする設定などである。
【0031】
モバイルクライアントデバイス304のスケジューリングコンポーネント308は、そのような提供物を求めるポーリングを行う頻度と条件を制御する。新しい提供物が利用可能になるとモバイルクライアントデバイス304のユーザに通知され、ユーザがある提供物を承認する場合はアプリケーションが自動的にダウンロードされ、モバイルクライアントデバイス304にインストールされる。この説明では、構成管理とは、デバイスに関するインベントリ情報を保持することによりモバイルクライアントデバイス304を管理する、モバイルクライアントデバイス304にアプリケーションを追加及び削除する、ポーリングイベントをスケジュールする、信頼されるソースを作成するなどの能力である。スケジューリングコンポーネント308は、スケジューラアプリケーションプログラミングインタフェース(API)430を公開して、モバイルデバイスにおける構成管理をスケジュール、更新、及びその他の形で管理する。デバイス上のソフトウェアの多くの異なるコンポーネントがこれらの動作をサポートすることができ、一実装では、デバイスの主要なUIコンポーネント内に埋め込まれたソフトウェアによってこれらの動作を制御する。別の実装では、プロテクトモードで実行される特殊なセキュアサーバによってこれらの動作がサポートされる。例示的なスケジューラAPI430を下記の付録Aに示す。
【0032】
ここに記載する実施形態では、管理サーバ302による要求時にモバイルクライアントデバイス304に提供されるアプリケーションダウンロード及び構成命令は、拡張マークアップ言語(XML)のデータスキーマに従ってXMLデータとしてフォーマットされる。この一例をこの説明の下記の部分に示す。アプリケーションダウンロード及び構成命令は、クライアントが後にダウンロードすることが可能なアプリケーションを識別するソフトウェアインベントリを含む。より具体的には、ファイルは、モバイルクライアントデバイスでインストールすることが可能なパッケージに対応するパッケージID(identification)のリストを含む。構成情報は、ハードウェアインベントリも指定することができる。下記で図4〜11との関連でより詳細に説明するように、管理サーバ302など、以下の説明に従ってダウンロード命令を生成し、通信することができるコンピューティングデバイスであれば、いずれも任意数のモバイルクライアントデバイスにセキュアなアプリケーション配信及び構成を提供することができる。
【0033】
図4に、システム管理フレームワーク300の論理コンポーネントをより詳細に示す。管理サーバシステム又は管理サーバ302は、インベントリ及び発見コンポーネント402及び配布コンポーネント404を含む。インベントリ及び発見コンポーネント402は、資産管理の目的で、複数のモバイルクライアントデバイス304から1つまたは複数の電子ファイル406として発見データレコードを受け取る。インベントリ及び発見コンポーネント402は、対応するクライアントによる前回の成功したポーリング以降の新しい提供物408を識別する役割を担う。データ発見レコードは、仮に前回の成功したターゲットリソース(例えば埋め込まれたURL(ユニフォームリソースロケータ)によって示される)のプル(pull)が行われている場合には、少なくともそれがいつ行われたかの表示を含む。
【0034】
一実装では、対応するURLのポーリングがモバイルクライアントデバイス304で成功したことがない場合は、最後の成功したポーリングの日付はヌル(null)と表示される。別の実装では、モバイルクライアントはさらに、後にカスタマイズされたダウンロード命令を受け取るために、データ発見レコード406とともに、実質的に一意のID(例えばクッキー)を管理サーバ302に通信する。データ発見メッセージとともに含まれる他の情報には、例えば、モバイルクライアントに関連付けられたハードウェア及び/またはソフトウェア属性の指示、モバイルクライアントのユーザの識別などが含まれる。この情報は通例、システム管理者がアクセスできるデータベース(図示せず)に格納される。
【0035】
図4では提供物408が管理サーバ302に結合されているが、このような提供物は、モバイルクライアントデバイス304に接続することができる任意のサーバデバイスによって配置することができる。
【0036】
モバイルクライアントデバイス304からデータ発見レコード406を受け取るのに応答して、インベントリ及び発見コンポーネント402は、それに対応するダウンロード命令ファイルを生成する。この命令は、アプリケーションをダウンロードする条件と、そのアプリケーションをダウンロードできるURL(ユニフォームリソースロケータ)を示すことができる。ダウンロード命令ファイルは、1つまたは複数の提供物408に関する情報を含み、各提供物は、1つまたは複数のファイルのダウンロードを含むことができる。配布コンポーネント404は、ダウンロード命令を1つまたは複数の電子ファイル410としてモバイルクライアントに通信する。
【0037】
配布コンポーネント404は、モバイルクライアントデバイス304が接続して、ダウンロード命令によって識別されるアプリケーションまたはパッケージ(すなわち提供物408)をダウンロードすることができる接続ポイントでもある。パッケージは、ファイルの集合であり、そのファイルをダウンロードし、インストールする命令を伴う。
【0038】
モバイルクライアントデバイス304の論理コンポーネントには、ポーリング及び通知コンポーネント412、スケジューリングコンポーネント308、ダウンロードコンポーネント414、インストール命令インタープリタ416、及びプログラムまたはパッケージインストールコンポーネント418が含まれる。ポーリング及び通知コンポーネントは、管理サーバ302にメッセージを個々に通信し、管理サーバ302からメッセージを個々に受け取る。通信されるメッセージには、例えば、ダウンロードが可能な1つまたは複数の提供物を識別するデータ発見要求、ダウンロード要求、提供物の配信及びインストールのステータス(例えば成功、失敗、不完了など)などが含まれる。管理サーバからポーリング及び通知コンポーネントによって受け取られるメッセージには、例えばダウンロード命令、及びダウンロードされるパッケージが含まれる。
【0039】
一実装では、モバイルデバイスに304によって通信されるメッセージにはダウンロード命令要求も含まれ、受信されるメッセージには利用可能な提供物を指定するパッケージIDリストも含まれる。パッケージIDリストは、詳細なダウンロード命令とは別のものである。このような移植については、下記でアプリケーション配信及び構成管理フレームワーク300の代替の実装を参照してより詳細に説明する。
【0040】
スケジューリングコンポーネント308は、データ発見イベント及びダウンロードイベントをスケジュールし、実行する。一実装では、イベントのスケジュールに使用する所定の基準を予め管理エンティティによって設定して、モバイルクライアントデバイス304の構成に積極的なコントロールを提供する。このような予め設定されたイベントは、自動化モードまたは必須モードの動作に対応し、データ発見及び/またはダウンロードイベントを自動的に生成して、ユーザの介在なしに1つまたは複数のパッケージをダウンロードし、インストールする。別の実装では、ポーリング及び通知コンポーネント412は、ユーザが動作を指定するためのユーザインタフェース(UI)コンポーネントを提示し、動作はスケジュールされたイベントに変換されてアプリケーション配信、ダウンロード、及びインストールに対するユーザ制御を提供する。このようなUIの一例を、図7〜10を参照してこの説明の後の部分で説明する。
【0041】
ポーリング通知コンポーネント412は、対応するメッセージを管理サーバ302に通信することによりそのようなイベントに応答する。データ発見イベントにより、データ発見レコード406が(例えばHTTPSで)管理サーバに通信されて提供物ダウンロード命令410を入手する。ダウンロードイベントは、ダウンロード要求420を管理サーバに通信させる。この説明では、データ発見イベントは一般に周期的な性質なのでしばしばポーリングイベントと呼ぶ。ただし、任意の特定のデータ発見イベントを1回だけ行うようにスケジュールすることもできる。
【0042】
ポーリング及びダウンロードイベントは、1つまたは複数の所定の基準に基づいてスケジュールされ、この基準には例えば、時間と接続の基準の任意の組合せが含まれる(例えば、高帯域幅接続がある場合には毎月曜の午後3時。あるいは無作為の時間として、複数のモバイルクライアントデバイス304からのすべてのデータ配信メッセージが、サーバの処理リソースに負荷をかけないと思われる形で管理サーバ302に送信されることを実質的に保証する、など)。この実装では、各イベントを、名前/説明、イベント基準、及び提供物を識別またはダウンロードするためにアクセスするURLに関連付ける。スケジューリングコンポーネント308は、ポーリング及びダウンロードイベントを指定するためにイベント情報のイベントテーブル422を保持する。
【0043】
ポーリング及び通知コンポーネント412は、ダウンロード命令ファイル410を受信し、構文解析して、開始時間、デルタ時間、及び/または命令に関連付けられたフラグに従って実行するために、スケジューリングコンポーネント308とともにダウンロード命令をスケジューリングする。その適切な時に、スケジューラは、ダウンロードコンポーネント414に、ダウンロード命令ファイルに記述されたファイルをダウンロードするように命令する。命令/スクリプトインタープリタ416は、ダウンロード命令ファイルの「コマンド」パラメータによって示されるコマンドを実行するが、大半の場合はこれによりインストールコンポーネント418によるダウンロード済みファイルのインストールが開始される(例えば、ファイルをモバイルクライアントデバイスの適切なディレクトリにコピーし、レジストリ値をロードし、一時ファイルを削除するなど)。
【0044】
モバイルクライアントデバイス304は、ダウンロードしたアプリケーションをインストールするプログラムメモリ424と、モバイルクライアントデバイス304が、管理サーバ302との以前の対話を介してすでにモバイルクライアントデバイスに利用可能となっているアプリケーションまたはパッケージを示す提供物リストを保持またはキャッシュするデータベースまたは他のデータ構造426と、管理サーバ302から受信したダウンロード命令410を認証するための信頼されるソースリスト(「TSL」)428も備える。提供物リストは、管理サーバへの接続に関係なくリモートクライアントのユーザに提示することができる。リモートクライアントは、リモートクライアントへの提供物のダウンロード及びインストールに応答して、提供物リストから自動的にその提供物を削除するように構成される。
【0045】
モバイルクライアントデバイス304のこれらのコンポーネントは、モバイルクライアントデバイスにインストールされた特殊目的のソフトウェアによって実装し、URLまたは他の指定と、認証情報及びクリデンシャルなどの情報を用いて予め構成することができる。これらのコンポーネント間及び管理サーバ302との対話については、下記で図5を参照してより詳細に説明する。
【0046】
図5に、図4に示すフレームワークの方法論的な諸面を示す。図の左側の動作は、モバイルクライアントデバイス304のコンポーネントによって行われる。図の右側の動作は、管理サーバ302のコンポーネントによって行われる。真中の動作は、管理サーバ302の管理者やモバイルクライアントのユーザなどの人間によって行われ、具体的な例は動作に対応する下記の説明で明記する。これらの動作については、要求元のモバイルクライアントにアプリケーションを配布し、インストールすることが求められるシナリオを参照して説明する。例とするアプリケーションは、golf.cabとgolf.datの2つのコンポーネントを有する。モバイルデバイスへのインストールには、両コンポーネントを「\Program Files\Foo」というディレクトリにコピーすることが必要となる。
【0047】
最初の動作502では、2つのプログラムコンポーネント「golf.cab」と「golf.dat」を含む配布パッケージを作成する。「CAB」ファイルは、プログラムコンポーネントの配布に用いられる一般的なフォーマットであり、要求元のモバイルクライアントデバイスに自動的にインストールするためにそのモバイルクライアントデバイスで開くことができる。あるいはCABでないパッケージをアセンブルしてもよく、これは、アプリケーションコンポーネントと、インストールタスクを行うためにモバイルクライアントデバイスによって実行できるインストールスクリプトを含むファイル(通例はシステム管理者を務める者によって作成される)とを含む。この例では、ダウンロード命令410(下記で表1を参照してより詳細に説明する)は、インストール命令を含む。
【0048】
ユーザは、1つまたは複数の配線及び無線ネットワークの任意の組合せを通じて、モバイルクライアントデバイス304を管理サーバ302に接続する。動作504で、ユーザは、ポーリングイベントを生成して、管理サーバに利用可能な提供物408のリストを要求する。あるいは、ポーリングイベントは、特定の事態の発生(例えばモバイルクライアントのコールドブート、ログオンイベントなど)に応答して自動的に生成しても、かつ/またはスケジューリングコンポーネント308によって決定される1つまたは複数の予め設定された間隔で生成してもよい。一実装では、例えば、コールドブート時に特定の管理サーバ302に利用可能な提供物408のリストを要求するように、予めスケジューラコンポーネントを構成する。
【0049】
動作508で、図4のインベントリ及び発見コンポーネント420は、データ発見レコード406を受け取る。この情報を受け取るのに応答して、インベントリ及び発見コンポーネントは、受け取ったデータ発見レコードで提供される情報に基づいてダウンロード命令ファイル410を生成する動作510を行う。生成されるダウンロード命令ファイルには、対象となる提供物408またはパッケージをモバイルクライアントデバイス304によってダウンロードする方式、時間、ダウンロード元、及び条件に関する各種のパラメータが含まれる。
【0050】
一実装では、このパラメータには次の要素が含まれる。
・ヘッダ
・内容ブロック
○ID(GUID)
○ステータスリポート用の応答URL(任意選択)
・ダウンロード命令
○ソース名
○提供物名
○提供物のサイズ(例えばバイト単位)
○提供物の価格
○短い説明及び/または長い説明
○モバイルクライアントのユーザに提示するダウンロード命令
○ネットワーク−そのダウンロードを送信するのに好ましいトランスポート
○再発生の間隔
○エラー回復のための再試行間隔(例えばデフォルト=60秒)
○再試行の制限(例えばデフォルト=5回)
○開始時間またはデルタ時間(GMT)
○フラグ(接続タイプまたは接続クラス)
○ダウンロードタイプ(例えばROM更新、CABファイルなど)
○必須であるか(YESまたはNO。デフォルトはNO)
○ファイルの記述
★ソースURL
★デバイス上の行先(完全に限定されたパスとしてのファイルの場所)
★署名(ファイルの署名付きハッシュ)
○ダウンロード後にデバイスで実行するコマンド(任意選択)
【0051】
「内容」ブロックは、命令ファイル410の内容に関連する情報を含み、この情報には、モバイルクライアントデバイス304が下記で挙げる諸動作の成功または失敗を報告すべきURLが含まれる。「ダウンロード命令」は、モバイルクライアントが、データ発見イベントなどのポーリングイベントを周期的に管理サーバ302に送信する間隔を識別する「再発生間隔」を指定する。この他の「ダウンロード命令」には、「開始時間」または「デルタ時間」(動作を開始するまでの時間間隔)のどちらかと、ダウンロードの進行を許可すべき条件を示す「フラグ」が含まれる。フラグは、例えば、高速ネットワークを通じてネットワークに接続されているなど、特定の通信機能がある場合のみダウンロードを開始することを指示することができる。別の例として、フラグは、モバイルクライアントが(電池電源ではなく)AC電源に接続されている場合にのみダウンロードを開始することを示すことができる。この例では「フラグ」を使用して各種の情報を指示するが、このような情報は、XMLタグによるなど異なる方式で表すこともできる。
【0052】
「必須」パラメータは、そのパッケージをモバイルクライアントデバイス304にインストールすることが必須であるかどうかを示す。「ファイル記述」は、モバイルクライアントにコピーするファイルのソース及び宛先の場所と、そのファイルの署名を示す。「コマンド」パラメータは、先に命令ファイルで指定されたファイルのコピーが成功した後にモバイルクライアントデバイスによって実行すべきコマンドを識別する。
【0053】
動作512で、配布モジュール404は、生成したダウンロード命令を1つまたは複数の電子ファイル410としてモバイルクライアントデバイス304に通信する。ダウンロード命令ファイルは、データベース408によって施行されるXMLスキーマに従ってモバイルクライアントに報告することが好ましい。そのようなXMLスキーマの一例を下記の付録Aに示す。(図4では提供物データを格納する提供物データベース408の一部として示しているが、XMLスキーマは提供物データと別に格納してもよい。)
表1に、付録AのXMLスキーマに従ってフォーマットした実際のデータの例を示す。このXMLデータは、通例はHTTPSポストとしてモバイルクライアントデバイス304に通信される例示的なダウンロード命令ファイルを表す。説明のために、ダウンロード命令ファイル中の太字体の文字は、可変のデータ値の例を表している。
【0054】
Figure 0004519426
Figure 0004519426
【0055】
上記表1の例示的なダウンロード命令は、Golfの「値ISV」からの提供物を例示している。この命令は、「\Program Files\foo」ディレクトリに2つのファイルをダウンロードすることを示している。ダウンロードの開始時間は、<Download StartTime>タグのデータによって識別される。ダウンロードは、<Reoccur Time>タグのデータによって示されるように、周期的に繰り返し行うように指定される。時間は、Intelシステム時間フォーマットで表される。プログラム「golf.cab」は、ダウンロードの完了後に実行される。
【0056】
動作514で、モバイルクライアントデバイス304のサーバポーリング及び通知コンポーネント412は、管理サーバ302からダウンロード命令410を受け取る。一実装では、ダウンロード命令は、スケジューリングコンポーネント308が、モバイルクライアントに格納される提供物リスト426から期限切れの項目を削除するための情報を含む。これは、任意選択のダウンロード命令タグ「Supercedes」を介し、このタグは、置き換えられる提供物のセットをその「Offering Name」によって示す。置き換えられた提供物は、提供物リストから削除される。
【0057】
動作516で、モバイルクライアントアプリケーションのダウンロードがセキュアな状態を保つように、ファイル検証及びユーザ許可コンポーネント434は、そこからのダウンロード命令はセキュアかつ信頼できるものとみなす1つまたは複数の信頼されるソースに照らして、受け取ったダウンロード命令のデジタル署名(すなわち主張される識別)を確認する。そのような信頼されるソースは、TSL428に格納される。TSLは、例えば、信頼されるアプリケーション配信サーバとそれらの公開鍵の一覧である。スケジューリングコンポーネント308は、スケジューラAPI430を介して1つまたは複数のインタフェースを公開して、TSLの内容を更新し、その他の形で管理する。例示的なスケジューラAPI430を下記の付録Aに示す。
【0058】
一実装では、TSL428は、RDN(名前)、公開鍵などを含む管理サーバ302のX.600証明書を含む。TSL中の証明書は、意図的または偶然にTSLから削除することができるが、そのような削除された証明書を単に別の鍵に置き換えることはできない。これにより、モバイルクライアントデバイス304のアプリケーション配信がセキュアに保たれることが保証される。さらに、特定の信頼されるソースの証明書が意図的または偶然にTSLから削除された場合でも、モバイルクライアントの不揮発性メモリの一部が予めそのように構成されていれば、モバイルクライアントデバイス304のコールドブートにより、削除された証明書を回復することができる。
【0059】
動作518で、ファイル検証及びユーザ許可コンポーネント434は、受け取ったダウンロード命令410が信頼できるものであるかどうかを判定する。信頼できない場合、手順は、動作504に示すようにデータ発見イベントなど別のスケジュールされるイベント(またはその他のイベント)を待つ。これに対し、信頼できると認められるダウンロード命令セットを受け取るのに応答して、動作520で、スケジューリングコンポーネント308は、利用可能な提供物があればそれをモバイルクライアントデバイス304のユーザに通知する。新しいダウンロードが可能になると、スケジューリングコンポーネント308は、受け取ったダウンロード情報410をメモリに格納する(例えば提供物データストア426に)。
【0060】
動作522で、ユーザはユーザインタフェース(UI)を介して、新しい提供物を見るか、あるいは無視するかを指定する。このUIの一例を下記で図7〜10を参照して説明する。動作524でその提供物を無視すると決定すると、手順500は、次ページの指示「A」で示すように進行する。動作526ではユーザがその提供物を見ることを選択しており、UIを介して閲覧し、対話するために、指示される各ダウンロード提供物が対応するステータスとともにユーザに提示される。対応するステータスは、例えば、特定の提供物の新しさまたは公示の表示(例えば「新しい」、公示された日付など)、ダウンロード進行の表示(例えばダウンロードが承認済み、進行中、インストール済みなど)などを示すことができる。次ページ指示「B」で示すように、手順は図6の動作602に続く。
【0061】
図6に、図4のフレームワークを介したアプリケーション配信及びリモート構成管理を行う例示的手順500のさらなる側面を示す。図6の左側の動作は、モバイルクライアントデバイス304のコンポーネントによって行われる。図の右側の動作は、管理サーバ302のコンポーネントによって行われる。真中の動作は、モバイルクライアントのユーザによって行われる。これらの動作は、図5のシナリオを参照して説明する。
【0062】
動作602で、ユーザは1つまたは複数の特定の提供物を承認または拒絶する。ユーザがこれを行う例示的UI700については、下記で図7〜10を参照してより詳細に説明する。動作604で、モバイルデバイスは、モバイルクライアントデバイス304のユーザが提供物408を許可しているかどうかを判定する。いずれにせよ、提示される各個々の提供物のダウンロード命令410は、サーバでその提供物の有効期限が切れるまで、またはユーザがリストにある提供物を確認するか、拒絶するまで、スケジューリングコンポーネント308によって格納される。ユーザが提示される1つまたは複数の各提供物を拒絶した場合は、手順500は、(次ページ指示「A」で示すように)図5の動作504に示すデータ発見イベントなど、スケジュールされるイベントまたはスケジュールされないイベントがプロセスするのを待つ。
【0063】
ユーザが提供物を確認すると、動作606で、スケジューリングコンポーネント308は、ダウンロード命令で指定される場所から確認された提供物を取り出すダウンロードイベントをスケジュールする。ダウンロードイベントは、ユーザ指定の基準に従ってスケジュールしても、開始時間、デルタ時間、及び/またはダウンロード命令に関連付けられたフラグに従ってスケジュールしてもよい。ダウンロードイベントは、直ちに起動しても、特定の接続条件(例えばモバイルクライアントがドッキングされたとき)など1つまたは複数の所定の基準に基づいてスケジュールしてもよい。
【0064】
イベント608で、スケジューリングコンポーネント308は、動作606のスケジュールに従って、スケジュールされるダウンロードイベントを生成する。動作610で、生成されたダウンロードイベントを検出すると、ダウンロードコンポーネント414は、ダウンロード要求を1つまたは複数の電子ファイル420として(例えばHTTPS/IPにより)管理サーバ302に通信する。動作612で、管理サーバの配布コンポーネント404は、通信されたダウンロード要求を受け取る。ダウンロード要求の受け取りに応答して、配布コンポーネントは動作614で、要求される提供物408をフェッチし、1つまたは複数の電子ファイル432としてモバイルクライアントデバイス304に通信する。
【0065】
動作616で、ダウンロードコンポーネント414は、通信された提供物408を管理サーバ302から受け取る。ダウンロードコンポーネントは動作618でダウンロードの署名(例えばハッシュ)を検証し、ダウンロードしたファイルを命令インタープリタ416に渡す。動作620で、命令インタープリタは、ダウンロード命令ファイル410の任意選択の「コマンド」パラメータによって示されるコマンドを実行し、大半の場合はこれによりインストールコンポーネント418によるダウンロード済みファイルのインストールが開始される。アプリケーション及び/または構成設定のインストールが成功すると、動作622で、通知エンジン412を介してインストールの完了をユーザに通知する。一実装では、モバイルクライアントのアプリケーション配信及びリモート構成動作の成功/失敗のステータスメッセージ(図示せず)により、サーバにも通知する。
【0066】
アプリケーション配信及びモバイルデバイス構成のための例示的UI
図7〜10に、コンピューティングデバイスのアプリケーション配信及び構成を行うために、モバイルクライアントデバイス304などのクライアントコンピューティングデバイスによって提示される例示的なユーザインタフェース(UI)700の諸面を示す。詳細には、図7には、ユーザが管理サーバ302に新しい提供物408を要求するUIの一部を示す。ダウンロードアイコン702は、ユーザによって選択されると、上述のようにスケジューリングコンポーネントから管理サーバにデータ発見レコード406を送信させる。新しい提供物のリストを入手するためのクエリの提出に続いて、「Download request(ダウンロード要求)」と記されたバブルメニュー704により、データ発見要求が管理サーバに送信されたことをユーザに知らせ、さらにサーバからの応答を待っている最中であることを知らせる。
【0067】
図8には、新しい提供物408がクライアントにダウンロード可能であることをモバイルクライアントデバイス304のユーザに知らせるモバイルクライアントUI700の例示的側面を示す。具体的には、バブルメニュー704により、管理サーバ302からダウンロードする新しい提供物があることをユーザに知らせ、この例のバブルテキストは「New downloads are available(新しいダウンロードが可能)」となっている。それ以外の場合は、バブルテキストは、(ある場合には)前回のダウンロード要求をモバイルクライアントから受信して以降新たな提供物が管理サーバに公示されてないことを知らせる。
【0068】
さらに、管理サーバ302から新しい提供物がユーザによってダウンロードできる状態となると、バブルメニュー704は、その提供物を見るか、またはその提供物の通知を却下するための少なくとも2つのユーザによる選択が可能なボタンを提示する。この例では、このボタンはそれぞれ、「View Offerings(提供物を見る)」及び「Ignore(無視する)」と記されている。ユーザは、これらのボタンを介して、可能なさらなるユーザ対話(例えばダウンロードやさらなる情報の要求など)を行うために利用可能な提供物の提示を要求するか否かを指定することができる。ユーザ動作は、ペンやマウスなどのポインティングデバイス、または音声コマンドによるなど他の技術を介して指定することができる。
【0069】
図9に、モバイルクライアントデバイス304へのダウンロードが可能な利用可能な提供物のリストを提示し、対話を行うための例示的な提供物ダイアログボックス902を示す。このダイアログボックスは、図8の「View offerings」ボタンをユーザが選択するのに応答して提示されるUIの一例である。この例では、「Pocket Web Browser SecurityPatch」と、上述の表1の例示的ダウンロード命令で指定されるような「Golf」アプリケーションの2つの提供物がユーザに提示されている。ダイアログ902で提示される提供物リストは、ユーザがそれをスタンドアロンアプリケーションとして開くか、または提供物データ426によって表される、格納された提供物リストが空である場合には、「no offeringu(提供物はない)」と表示する。
【0070】
この例では、ユーザは、ダイアログ902で提示される提供物リスト中の提供物の上で行うタップとホールドのユーザ動作により、「Accept...」のポップアップメニュー904からダウンロードのオプションを選択することができる。例えば、ユーザは、提供物「Pocket Web Browser Security Patch」の上でタップ及びホールド動作を行うと、メニュー項目「Accept」を通じてその提供物を直ちに(例えばデフォルト)ダウンロードするか、例えばメニュー項目「Accept When Docked(ドッキング時に受け入れ)」を介してその提供物を後にダウンロードすることができる。一実装では、ダイアログ902はさらに、ユーザがリストにある提供物を迅速かつ簡単に処分できる「reject all(すべて拒否)」ボタンなどのボタンを含む。
【0071】
図10に、例示的なアプリケーション配信及びリモート構成UI700のさらなる側面を示す。詳細には、図10にはダイアログ1002を示しており、これは、詳細(例えば提供物の短い説明または長い説明)、及び/またはダウンロードオプションをユーザに示すために提示される。一実装では、このダイアログボックスは、特定の提供物の上で行うユーザの(タップとホールドではなく)タップ動作に応答して提示される。
【0072】
例示的動作環境
図11に、アプリケーション配信及びリモート構成管理のシステム及び手順を実施することができる例示的な動作環境1100を示す。上述の管理サーバ302及びモバイルクライアント304のコンポーネント及び機能は、1つまたは複数の個々のコンピュータによって個々に実装される。図11に、参照符号1106で示すそのようなコンピュータの典型的な例の構成要素を示す。図11に示す構成要素は例に過ぎず、本発明の範囲及び機能に関して何らの限定を示唆するものではない。本発明は、必ずしも図11に示す諸機能に依存しない。
【0073】
一般には、各種の異なる汎用または特殊目的のコンピューティングシステム構成を使用することができる。本発明に使用するのに適している可能性があるよく知られるコンピューティングシステム、環境、及び/または構成の例には、これらに限定しないが、モバイルクライアントデバイス、パーソナルコンピュータ、サーバコンピュータ、ラップトップデバイス、マルチプロセッサシステム、マイクロプロセッサベースのシステム、ネットワークPC(personal computer)、ミニコンピュータ、メインフレームコンピュータ、分散コンピューティング環境、上記のシステムまたはデバイスのいずれを含む完全なデスクトップデバイスに比べて機能が少ないコンピューティングデバイスなどが含まれる。
【0074】
コンピュータの機能は、多くの場合は、コンピュータによって実行されるプログラムモジュールなどのコンピュータ実行可能命令によって実現される。一般に、プログラムモジュールには、特定タスクを行うか、特定の抽象データ型を実施するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などが含まれる。タスクは、通信ネットワークを通じてリンクされたリモートの処理装置によって行うこともできる。分散コンピューティング環境では、プログラムモジュールはローカル及びリモート両方のコンピュータ記憶媒体に配置することができる。
【0075】
命令及び/またはプログラムモジュールは、様々なときに、コンピュータの一部であるか、コンピュータによって読み取ることが可能な各種のコンピュータ可読媒体に格納される。プログラムは通例、例えばフロッピー(登録商標)ディスク、CD(compact disc [disk])−ROM(read only member)、DVD(digital versatile disc [disk])、あるいは変調信号などの何らかの形態の通信媒体で配布される。プログラムはそこからコンピュータの2次メモリにインストールまたはロードされる。実行時に、プログラムは少なくとも部分的に、コンピュータの主要な電子メモリにロードされる。ここに記載する本発明は、そうした媒体が、マイクロプロセッサまたは他のデータプロセッサと協働して上述のステップ及び動作を実施する命令、プログラム、及び/またはモジュールを含む場合に、上記及びその他の各種タイプのコンピュータ可読媒体を含む。本発明はまた、上述の方法及び技術に従ってプログラムされた場合にはコンピュータ自体も含む。
【0076】
例証のために、この図ではオペレーティングシステムなどのプログラム及び他の実行可能プログラムコンポーネントは個別のブロックとして示しているが、こうしたプログラム及びコンポーネントは、様々なときに、コンピュータの様々なストレージコンポーネントに常駐し、コンピュータのデータプロセッサによって実行されることが認識される。
【0077】
図11を参照すると、コンピュータ1106の構成要素には、これらに限定しないが、プロセッサ1114、システムメモリ1116、及びシステムメモリを含む各種のシステムコンポーネントをプロセッサ1114に結合するシステムバス1121が含まれる。システムバス1121は、各種のバスアーキテクチャの任意のものを使用したメモリバスまたはメモリコントローラ、ペリフェラルバス、及びローカルバスを含む数タイプのバス構造のいずれでもよい。これらに限定しないが、例として、このようなアーキテクチャには、ISA(Industry Standard Architecture)バス、MCA(MicroChannel Architecture)バス、EISA(Enhanced ISA)バス、VESA(Video Electronics Standards Association)ローカルバス、及びメザニンバスとも称されるPCI(Peripheral Component Interconnect)バスが含まれる。
【0078】
コンピュータ1106は通例各種のコンピュータ可読媒体を含む。コンピュータ可読媒体は、コンピュータ1106がアクセスできる任意の利用可能媒体でよく、揮発性及び不揮発性の媒体、リムーバブル及びノンリムーバブル媒体が含まれる。これに限定しないが、例としてコンピュータ可読媒体は、コンピュータ記憶媒体及び通信媒体を含むことができる。コンピュータ記憶媒体には、コンピュータ可読命令、データ構造、プログラムモジュール、またはその他のデータなどの情報を記憶するための任意の方法または技術に実装された揮発性及び不揮発性の媒体、リムーバブル及びノンリムーバブルの媒体が含まれる。コンピュータ記憶媒体には、これらに限定しないが、RAM(random access memory)、ROM、EEPROM(electrically erasable programmable read-only memory)、フラッシュメモリまたは他のメモリ技術、CD−ROM、デジタル多用途ディスク(DVD)または他の光ディスクストレージ、磁気カセット、磁気テープ、磁気ディスクストレージまたは他の磁気記憶装置、あるいは、所望の情報の記憶に用いることができ、コンピュータ1106によるアクセスが可能な任意の他の媒体が含まれる。通信媒体は、通例、搬送波または他の搬送機構などの変調データ信号にコンピュータ可読命令、データ構造、プログラムモジュール、または他のデータを実施し、任意の情報伝達媒体を含む。用語「変調データ信号」とは、信号中に情報を符号化するような方式でその特性の1つまたは複数を設定または変化させた信号を意味する。例として、通信媒体には、配線ネットワークまたは直接配線接続などの配線媒体と、音響、RF(radio frequencies)、赤外線、及び他の無線媒体などの無線媒体が含まれるが、これらに限定しない。上記の媒体のいずれの組合せもコンピュータ可読媒体の範囲に含めるべきである。
【0079】
システムメモリ1116には、読み取り専用メモリ(ROM)1118及びランダムアクセスメモリ(RAM)1120など、揮発性及び/または不揮発性メモリの形態のコンピュータ記憶媒体が含まれる。起動時などにコンピュータ1106内の要素間の情報転送を助ける基本ルーチンを含む基本入出力システム1122(BIOS)は、通例ROM1118に記憶される。RAM1120は通例、プロセッサ1114から即座にアクセス可能な、かつ/または現在のプロセッサ1114によって操作中のデータ及び/またはプログラムモジュールを含む。これらに限定しないが、例として、図11にはオペレーティングシステム1136、アプリケーションプログラム1138、他のプログラムモジュール1142、及びプログラムデータ1144を示している。
【0080】
コンピュータ1106を図4の管理サーバ302として実装する場合、アプリケーションプログラム1138は例えば、インベントリ及び発見コンポーネント402と配布コンポーネント404を含む。同様の実装で、プログラムデータ1144は、例えば、モバイルクライアントコンピュータ304から受信したデータ発見メッセージ406、モバイルクライアントで利用可能な1つまたは複数の提供物を知らせるダウンロード命令410、ダウンロード命令の意味及び構文を強制させるスキーマ408、及び1つまたは複数の電子ファイルまたはパッケージとしてモバイルクライアントに配布する提供物408を含む。
【0081】
コンピュータ1106を図4のモバイルクライアントコンピュータ304として実装する場合、アプリケーションプログラム1138は、例えば、ポーリング及び通知コンポーネント412、スケジューリングコンポーネント308、ダウンロードコンポーネント414、命令/スクリプトインタープリタ416、インストーラコンポーネント418、及びスケジューラのファイル検証及びユーザ許可コンポーネント434を含む。同様の実装で、プログラムデータ1144は、例えば、(a)管理サーバ302に通信するデータ発見メッセージ406、(b)管理サーバから受信し、提供物データ426として保存されるダウンロード命令410、(c)管理サーバから受信したデータを認証するための信頼されるソースリスト428、(d)元は1つまたは複数のファイルまたはパッケージ432として管理サーバから受信したダウンロード済みアプリケーション424、及び(e)管理サーバに通信するデータ発見メッセージ及びダウンロード要求をスケジュールするための情報を格納するポーリング及びダウンロードイベント記述テーブルであるイベントテーブル422、を含む。
【0082】
コンピュータ1106は、他のリムーバブル/ノンリムーバブル、揮発性/不揮発性のコンピュータ記憶媒体も含むことができる。単なる例として、図11には、ノンリムーバブル、不揮発性の磁気媒体の読み取りまたは書き込みを行うハードディスクドライブ1124、リムーバブル、不揮発性の磁気ディスク1128の読み取りまたは書き込みを行う磁気ディスクドライブ1126、及びCD−ROMや他の光媒体などのリムーバブル、不揮発性の光ディスク1132の読み取りまたは書き込みを行う光ディスクドライブ1130を示す。例示的動作環境で使用できるこの他のリムーバブル/ノンリムーバブル、揮発性/不揮発性のコンピュータ記憶媒体には、これらに限定しないが、磁気テープカセット、フラッシュメモリカード、デジタル多用途ディスク、デジタルビデオテープ、ソリッドステートRAM、ソリッドステートROMなどが含まれる。ハードディスクドライブ1124、磁気ディスクドライブ1126、及び光ディスクドライブ1130は通例、インタフェース1134などの1つまたは複数の固定またはリムーバブルなメモリインタフェースによってシステムバス1121に接続される。
【0083】
上記で説明し、図11に示すドライブとそれに関連付けられたコンピュータ記憶媒体は、コンピュータ1106のコンピュータ可読命令、データ構造、プログラムモジュール、及びその他のデータの記憶を提供する。例えば図11では、ハードディスクドライブ1124にオペレーティングシステム1137、アプリケーションプログラム1139、他のプログラムモジュール1143、及びプログラムデータ1145を格納している。これらのコンポーネントは、オペレーティングシステム1136、アプリケーションプログラム1138、他のプログラムモジュール1142、及びプログラムデータ1144と同じものでも、異なるものでもよいことに留意されたい。この図では、それらが少なくとも異なるコピーであることを示すために異なる符号をつけている。ユーザは、キーボード1146や、一般的にはマウス、トラックボール、あるいはタッチパッドと称するポインティングデバイス1148などの入力装置を通じてコンピュータ1106にコマンド及び情報を入力することができる。他の入力装置(図示せず)には、マイクロフォン、ジョイスティック、ゲームパッド、衛星放送受信アンテナ、スキャナなどがある。これら及び他の入力装置は、システムバスに結合されたユーザ入力インタフェース1150を通じてプロセッサ1114に接続することが多いが、パラレルポート、ゲームポート、あるいはユニバーサルシリアルバス(USB)など他のインタフェース及びバス構造によって接続することも可能である。モニタ1152または他タイプの表示装置も、ビデオインタフェース11308などのインタフェースを介してシステムバス1121に結合される。コンピュータは、モニタに加えて、スピーカやプリンタなど他の周辺出力装置(図示せず)も含むことができ、それらは出力周辺インタフェース1155を通じて接続することができる。
【0084】
コンピュータは、リモートコンピュータ1102など1つまたは複数のリモートコンピュータへの論理接続を使用するネットワーク環境で動作するように設計される。リモートコンピュータ1102は、モバイルクライアントデバイス、パーソナルコンピュータ、管理サーバ、ルータ、ネットワークPC、ピアデバイス、またはその他の一般的なネットワークノードでよく、図11にはメモリ記憶装置1169しか示していないが、通例は、上記でコンピュータ1106との関連で挙げた要素の多くまたはすべてを含む。図11に示す論理接続には、ローカルエリアネットワーク(LAN)1157とワイドエリアネットワーク(WAN)1159が含まれるが、ホームネットワーク、組織内のイントラネットなど他のネットワークを含むことも可能である。このようなネットワーキング環境は、オフィス、企業内のコンピュータネットワーク、イントラネット、及びインターネットに一般的に見られる。
【0085】
LANネットワーキング環境で使用する場合、コンピュータ1106はネットワークインタフェースまたはアダプタ1166を通じてLAN1157に接続される。WANネットワーキング環境で使用する場合、コンピュータ1106は通例、インターネットなどのWAN1159を通じて通信を確立するためのモデム1158またはその他の手段を含む。モデム1158は内蔵型でも外付け型でもよく、ユーザ入力インタフェース1150または他の適切な機構を介してシステムバス1121に接続することができる。ネットワーク環境では、コンピュータ1106との関連で図示したプログラムモジュール、またはその一部はリモートのメモリ記憶装置に格納することができる。これに限定しないが、例として図11では、リモートアプリケーションプログラム1169が、コンピュータ1102に結合されたメモリ装置に常駐している。図のネットワーク接続は例示的なものであり、コンピュータ間に通信リンクを確立する他の手段を使用できることは理解されよう。
【0086】
リソースが限られたモバイルクライアントデバイス304は、より制限された規模ではあるが、図11に示す技術と同様の技術を使用して実装する。さらに、PDA、携帯電話、ポケットPCなどのリソースが限られたモバイルクライアントデバイスは、通例、図11に示す機能をすべて備えることはない。例えば、リソースが限られたクライアントは、しばしば、フロッピー(登録商標)ディスクやCD−ROMなどのリムーバブルの磁気媒体用のハードドライブを備えない。そのようなクライアントは通例、メモリ容量がはるかに少なく、表示装置及びキーボードがより小さく、プロセッサは速度が遅いか、能力が低い。さらに、そのようなデバイスの多くは、ハードディスクの代わりに電子的なフラッシュメモリを備える。また、リソースが制限されたデバイスは通例、デスクトップオペレーティングシステムでサポートされる完全な機能のセットを備えないオペレーティングシステムを実行する。例えば、リソースが限られたデバイスは、Windows XP(登録商標)オペレーティングシステムではなく、Windows CE(登録商標)オペレーティングシステムを実行する。
【0087】
代替実施形態
図3及び図4のアプリケーション配信及び構成のフレームワーク300は、代替の方式で実装することができる。例えば、一実装では、管理サーバ302にデータ発見要求を通信するのに応答して詳細なダウンロード命令を直ちに受け取るのではなく、モバイルクライアントデバイス304は、インベントリ及び発見コンポーネント402からパッケージ識別(ID)リストを受信する。パッケージIDリストは、モバイルデバイスによる前回の成功したURLへのポーリング以降モバイルデバイスに利用可能となった任意数の(ゼロの可能性もある)パッケージ(すなわち提供物408)を識別する。識別される各パッケージは、モバイルクライアントがダウンロードし、インストールすることができる。配布コンポーネント404は、生成したパッケージIDリストを1つまたは複数の電子ファイル410としてモバイルクライアントに通信する。
【0088】
一般に、パッケージIDリストは、すべての利用可能なパッケージについてのすべてのダウンロード命令を含むファイルのバイトサイズに比べるとかなり小さい。これは、パッケージIDリストは、詳細なダウンロード情報(例えばダウンロードの条件、ダウンロードの場所、好ましいネットワークトランスポートなど)を含まないためである。代わりに、パッケージIDリストは、モバイルクライアントデバイス304またはモバイルデバイスのユーザがそれぞれ、そのパッケージを後にダウンロードし、配信することが望ましいことを自動的に、または手動で(例えば必須の管理上のダウンロードと、ユーザが希望するダウンロード)判定するのに必要な情報だけを含む。
【0089】
例えば、パッケージIDリストは、表されるパッケージごとに、;ソース名、提供物名、提供物のサイズ(例えばバイト単位)、価格、短い説明及び/または長い説明、及び/またはそのパッケージが必須かどうかの表示、を指定することができ、すなわち、そのパッケージをモバイルデバイスによって自動的にダウンロードするか、または手動のダウンロード選択を行うためにユーザに提供するかを判定するのに足りるだけの情報を指定する。特定のパッケージをダウンロードするユーザ固有の許可を行うための例示的なユーザインタフェース(UI)については上記で述べた。
【0090】
一実装では、特定のパッケージが必須または強制である場合、パッケージIDリストは、パッケージIDの指示と必要とされる指示だけを含む。ポーリング及び通知コンポーネント412は、「必須」ステータスにタグをつけて、対応する詳細なダウンロード命令を自動的に管理サーバ302に要求する。
【0091】
あるパッケージが強制(すなわち必須)であるか、ユーザによって要求されると判断するのに応答して、ポーリング及び通知コンポーネント412は、対応するダウンロード命令を管理サーバ302から受け取る要求を通信する。上述のように、ダウンロード命令は、1つまたは複数のパッケージ408すなわち提供物に関する詳細なダウンロード情報を含み、各提供物は、1つまたは複数のファイルのダウンロードを含むことができる。ダウンロード命令は、提供物をダウンロードする条件と、提供物をダウンロードできるURL(ユニフォームリソースロケータ)も示すことができる。
【0092】
モバイルクライアントデバイス304からダウンロード命令要求を受け取るのに応答して、配布コンポーネント404は、上述のように、指定されたパッケージ408のダウンロード命令を1つまたは複数の電子ファイル410としてモバイルクライアントに通信する。このダウンロード命令は、上記で図3〜11を参照して説明した動作に従って、スケジューリングコンポーネント304によって実行をスケジュールされる。
【0093】
この例では、データ発見メッセージ及びダウンロード命令要求と、パッケージIDリスト及びダウンロード命令をそれぞれ1つまたは複数の電子ファイル406及び410として示しているが、これは説明のために行っているに過ぎず、各メッセージは個別の独立したメッセージである。
【0094】
結論
本発明について、構造的特徴及び/または方法論的な操作または動作に固有の術語で説明したが、特許請求の範囲に定義する本発明は、必ずしもここに記載する特定の機能または動作に限定されないことを理解されたい。これらの特定の特徴及び動作は、特許権を請求する本発明を実施する好適形態として開示する。
【0095】
付録A
ダウンロード命令の例示的スキーマ
説明のために、以下のXMLスキーマ中の太字体の文字は、識別子、データタイプ、制約などの例を表す。
【0096】
【数1】
Figure 0004519426
【0097】
付録A(続き)
ダウンロード命令の例示的スキーマ
【0098】
【数2】
Figure 0004519426
【0099】
付録B
例示的スケジューラAPI
次に示すのは、図4の例示的スケジューラAPI430である。
【0100】
【数3】
Figure 0004519426
【0101】
付録B(続き)
例示的スケジューラAPI
【0102】
【数4】
Figure 0004519426
【0103】
付録B(続き)
例示的スケジューラAPI
【0104】
【数5】
Figure 0004519426
【0105】
付録B(続き)
例示的スケジューラAPI
【0106】
【数6】
Figure 0004519426
【0107】
付録B(続き)
例示的スケジューラAPI
【0108】
【数7】
Figure 0004519426
【0109】
付録B(続き)
例示的スケジューラAPI
【0110】
【数8】
Figure 0004519426
【0111】
【発明の効果】
以上説明したように本発明によれば、モバイルデバイスのリモート構成のためにアプリケーションを配信し、モバイルデバイスが自動化された構成管理に参加することができる。
【図面の簡単な説明】
【図1】従来技術によるシステム管理フレームワークの図である。
【図2】図1に示すものなど従来技術のシステム管理フレームワークで使用される構成管理サーバ及びクライアントコンピュータの論理コンポーネントを示すブロック図である。
【図3】本発明の実施形態のシステム管理フレームワークのブロック図である。
【図4】本発明の実施形態の図3に示すようなシステムで使用される、構成管理サーバ及びモバイルクライアントコンピュータの論理コンポーネントを示すブロック図である。
【図5】本発明の実施形態の図3及び図4のシステム管理フレームワークのモバイルデバイスのアプリケーション配信及びリモート構成の方法論的側面を示すブロック図である。
【図6】本発明の実施形態の図3及び図4のシステム管理フレームワークのモバイルデバイスのアプリケーション配信及びリモート構成の方法論的側面を示すブロック図である。
【図7】本発明の実施形態の図3及び図4のシステム管理フレームワークでコンピューティングデバイスのアプリケーション配信及び構成を行うために、モバイルクライアントなどのクライアントコンピューティングデバイスによって提示される例示的ユーザインタフェースの諸面の図であり、ユーザが管理サーバに新しい提供物を要求するUIの一部の図である。
【図8】本発明の実施形態の図3及び図4のシステム管理フレームワークでアプリケーション配信及びコンピューティングデバイスの構成を行うために、モバイルクライアントなどのクライアントコンピューティングデバイスによって提示される例示的ユーザインタフェースの諸面の図であり、新しい提供物がクライアントダウンロード可能であることをモバイルクライアントデバイスのユーザに知らせ、さらにユーザが新しい提供物を見るか、無視することを可能にする、モバイルクライアントUIの例示的側面の図である。
【図9】本発明の実施形態の図3及び図4のシステム管理フレームワークでアプリケーション配信及びコンピューティングデバイスの構成を行うために、モバイルクライアントなどのクライアントコンピューティングデバイスによって提示される例示的ユーザインタフェースの諸面の図であり、モバイルクライアントデバイスにダウンロードできる利用可能な提供物のリストを提示し、対話を行うための例示的な提供物ダイアログボックスの図である。
【図10】本発明の実施形態の図3及び図4のシステム管理フレームワークでアプリケーション配信及びコンピューティングデバイスの構成を行うために、モバイルクライアントなどのクライアントコンピューティングデバイスによって提示される例示的ユーザインタフェースの諸面の図であり、詳細(例えば提供物の短い説明または長い説明)及び/またはダウンロードオプションをユーザに示す例示的ダイアログの諸面の図である。
【図11】本発明の実施形態のアプリケーション配信及びリモート構成管理のシステム及び手順を実装することが可能な例示的動作環境の図である。
【符号の説明】
10 コンピュータシステム
12、302 管理サーバ
14 クライアントコンピュータ
16 ネットワーク
20、22、402 インベントリ及び発見コンポーネント
24 ポリシープッシャ
26 ポリシーエバリュエータ
28 インストールコンポーネント
29 配布ポイント
300 システム管理フレームワーク
304 モバイルクライアントデバイス
306 ネットワーク接続
308 スケジューリングコンポーネント
404 配布コンポーネント
406、410、420、432 電子ファイル
408 提供物(スキーマ)
412 ポーリング及び通知コンポーネント
414 ダウンロードコンポーネント
416 インストール命令インタープリタ
418 プログラムまたはパッケージインストールコンポーネント
422 イベントテーブル
424 プログラムメモリ
426 データベース
428 TSL
430 スケジューラAPI
434 ファイル検証及びユーザ許可コンポーネント
700 UI
702 アイコン
704 メニュー
902、1002 ダイアログボックス
1100 動作環境
1106 コンピュータ
1114 プロセッサ
1116 システムメモリ
1118 ROM
1120 RAM
1121 システムバス
1122 BIOS
1124 ハードディスクドライブ
1126 磁気ディスクドライブ
1128 磁気ディスク
1130 光ディスクドライブ
1132 光ディスク
1134、1150、1155、1166 インタフェース
1136、1137 オペレーティングシステム
1138、1139、1169 アプリケーションプログラム
1142、1143 プログラムモジュール
1144、1145 プログラムデータ
1146 キーボード
1148 ポインティングデバイス
1152 モニタ
1157 LAN
1158 モデム
1159 WAN
1169 メモリ記憶装置

Claims (13)

  1. モバイルコンピューティングデバイスにおける構成管理のためのプログラムであって、前記モバイルコンピューティングデバイスは、前記モバイルコンピューティングデバイスにおける構成管理のために提供物としてファイルをダウンロードし、該ファイルをインストールできるようにする管理サーバに、非永続的な接続を通じて接続し、該プログラムは、前記モバイルコンピューティングデバイスのメモリにロードされて実行され、前記モバイルコンピューティングデバイスに、
    前回の成功したダウンロードの時間を示す指示を含み、かつ該時間以降に利用可能となった提供物のリストを要求するデータ発見要求を前記管理サーバに対して通信する動作であって、前記提供物は、前記時間以降に利用可能となった1つまたは複数のファイルを表す、該通信する動作と、
    前記管理サーバから、ダウンロード命令を受信する動作であって、前記ダウンロード命令は、前記管理サーバが前記データ発見要求を受信したことに応答して、前記管理サーバによって前記データ発見要求に基づいて生成されて、デジタル署名され、前記ダウンロード命令は、前記時間以降に利用可能となった提供物について、ダウンロードする場所、ダウンロードの開始時間もしくは開始までの時間間隔、ダウンロードを実行するための接続条件、インストールに関する指示、およびインストールを実行するためのコマンドを含む、該受信する動作と、
    前記ダウンロード命令を受信したことに応答して、該モバイルコンピューティングデバイスが保持する信頼されるソースリスト中に証明書として含まれる信頼されるソースの識別情報と公開鍵とに基づいて前記ダウンロード命令の前記デジタル署名を検証することにより、前記ダウンロード命令のソースである前記管理サーバが、前記信頼されるソースリスト内のいずれかの信頼されるソースに該当するかどうかを判断し、前記管理サーバが前記信頼されるソースに該当するときは、前記ダウンロード命令は信頼できると判定し、前記管理サーバが前記信頼されるソースに該当しないときは、前記ダウンロード命令は信頼できないと判定することにより、前記ダウンロード命令が信頼できるかどうかを判定する動作と、
    前記ダウンロード命令が信頼できるとの判定に応答して、前記ダウンロード命令によって示される前記時間以降に利用可能となった提供物を、前記提供物のリストとして該モバイルコンピューティングデバイスのユーザに提示する動作と、
    前記ユーザが前記提供物のリストから特定の提供物を選択したことを判定する動作と、
    前記ダウンロード命令によって示される前記開始時間もしくは開始までの時間間隔、および前記接続条件従って、選択された前記特定の提供物のダウンロードをスケジュールする動作と、
    前記特定の提供物のダウンロードのスケジュールに従って、前記ダウンロード命令によって示される前記場所から前記特定の提供物をダウンロードするためのダウンロード要求メッセージを前記管理サーバに通信する動作と、
    前記ダウンロード要求メッセージの通信に応答して、前記管理サーバによって前記場所からフェッチされた前記特定の提供物を前記管理サーバから受信することによって、前記特定の提供物をダウンロードする動作と、
    1つまたは複数のセキュリティハッシュ機能を介して、前記特定の提供物の信頼性を判定する動作と、
    前記特定の提供物が信頼できるとの判定に応答して、前記ダウンロード命令の前記インストールに関する指示に基づいて前記コマンドを実行し、前記特定の提供物を1つまたは複数のファイルとして該モバイルコンピューティングデバイスのメモリにインストールする動作と
    を実行させることを特徴とするプログラム。
  2. 前記ダウンロード命令は、個別のメッセージすなわち第1のメッセージ及び第2のメッセージとして前記モバイルコンピューティングデバイスに通信され、第1のメッセージはパッケージ識別リストを含み、第2のメッセージは、前記パッケージ識別リスト中で指定される1つまたは複数のパッケージの詳細なダウンロード命令を含むことを特徴とする請求項1に記載のプログラム。
  3. 前記提供物のリストは、ユーザインタフェースを介して前記ユーザに提示されることを特徴とする請求項1に記載のプログラム。
  4. 前記モバイルコンピューティングデバイスに、
    前記管理サーバへの接続に関係なくユーザに提示するために前記提供物のリストをローカルキャッシュに保持する動作と、
    前記提供物のうちのある提供物のダウンロード及びインストールが成功したのに応答して、該提供物に対応する情報を前記ローカルキャッシュ内の前記提供物のリストから削除する動作と
    をさらに実行させることを特徴とする請求項1に記載のプログラム。
  5. 前記データ発見要求は、前記モバイルコンピューティングデバイスにおいてあらかじめ設定されたイベントが発生したことに応答して、前記モバイルコンピューティングデバイスによって前記管理サーバに通信されることを特徴とする請求項1に記載のプログラム。
  6. 前記あらかじめ設定されたイベントは、前記リモートコンピューティングデバイスのコールドブートであることを特徴とする請求項5に記載のプログラム。
  7. 前記あらかじめ設定されたイベントは、前記モバイルコンピューティングデバイスにおいて、無作為に選択される時間と接続との組み合わせによる所定の基準に従って発生するように設定され、前記データ発見要求は、該時間と接続の組み合わせによる所定の基準に合致したことに応答して、前記モバイルコンピューティングデバイスによって前記管理サーバに通信されることを特徴とする請求項5に記載のプログラム。
  8. 前記特定の提供物は、前記モバイルコンピューティングデバイスに関連付けられたハードウェア及び/またはソフトウェアの属性、または前記デバイスのユーザの識別に関連付けられることを特徴とする請求項1に記載のプログラム。
  9. モバイルデバイスで構成管理を行うための方法であって、前記モバイルデバイスは、該モバイルデバイスの構成管理のために提供物としてファイルをダウンロードし、該ファイルをインストールできるようにするサーバに、非永続的な接続を通じて接続し、該方法は、前記モバイルデバイスが、
    前記サーバによってホストされるURLからの前回の成功したダウンロードの時間を示す表示を含み、かつ該時間以降に利用可能となった提供物のリストを求める要求を前記サーバに通信するステップであって、前記提供物は、前記時間以降に利用可能となった1つまたは複数のファイルを表す、当該通信するステップと、
    前記サーバからダウンロード命令を受信するステップであって、前記ダウンロード命令は、前記サーバが前記要求を受信したことに応答して、前記サーバによって前記要求に基づいて生成されて、デジタル署名され、前記ダウンロード命令は、前記時間以降に利用可能となった1つまたは複数の提供物について、ダウンロードする場所、ダウンロードの開始時間もしくは開始までの時間間隔、ダウンロードを実行するための接続条件、インストールに関する指示、およびインストールを実行するためのコマンドを含む、当該受信するステップと、
    該モバイルデバイスが保持する信頼されるソースリストに証明書として含まれる信頼されるソースの識別情報と公開鍵とに基づいて前記ダウンロード命令の前記デジタル署名を検証することにより、前記ダウンロード命令のソースである前記管理サーバが、前記信頼されるソースリスト内のいずれかの信頼されるソースに該当するかどうかを判断し、前記管理サーバが前記信頼されるソースに該当するときは、前記ダウンロード命令は信頼できると判定し、前記管理サーバが前記信頼されるソースに該当しないときは、前記ダウンロード命令は信頼できないと判定することにより、前記ダウンロード命令が信頼できるかどうかを判定するステップと、
    前記ダウンロード命令が信頼できるとの判定に応答して、前記ダウンロード命令によって示される前記時間以降に利用可能となった提供物を、該モバイルデバイスのユーザに前記提供物のリストとして提示するステップ、
    前記提供物のリストのうちの少なくとも1つの提供物の選択を前記ユーザから受信するステップと、
    前記ダウンロード命令によって示される前記開始時間もしくは開始までの時間間隔、および前記接続条件従って、選択された前記少なくとも1つの提供物を前記ダウンロード命令によって示される前記場所からダウンロードするためのダウンロード要求メッセージを通信するイベントを、スケジュールするステップと、
    前記イベントが発生したことに応答して、前記ダウンロード要求メッセージを前記サーバに通信するステップと、
    前記サーバが前記ダウンロード要求メッセージを受信したことに応答して、前記場所から前記サーバによってフェッチされた前記少なくとも1つの提供物を、前記サーバから受信することによって、該少なくとも1つの提供物をダウンロードするステップと、
    セキュリティハッシュ機能を介して、前記少なくとも1つの提供物の信頼性を判定するステップと、
    前記少なくとも1つの提供物が信頼できるとの判定に応答して、前記ダウンロード命令の前記インストールに関する指示に基づいて前記コマンドを実行し、前記少なくとも1つの提供物を1つまたは複数のファイルとして該モバイルデバイスのメモリにインストールするステップと
    を備えたことを特徴とする方法。
  10. 前記モバイルデバイスが、前記信頼されるソースリストに情報を追加し、または前記信頼されるソースリストから情報を削除するためのアプリケーションプログラミングインタフェースを公開するステップ
    をさらに備えたことを特徴とする請求項9に記載の方法。
  11. 前記モバイルデバイスが、ファイルのダウンロードをスケジュールするために使用できる1つまたは複数のイベントを定義するためのアプリケーションプログラミングインタフェースを公開するステップをさらに備え、前記ファイルは、受信するダウンロード命令によって識別されることを特徴とする請求項9に記載の方法。
  12. 前記モバイルデバイスが、
    前記提供物のリストをローカルにキャッシュするステップと、
    前記提供物のリストのうちある提供物のダウンロード及びインストールが成功したことに応答して、前記提供物のリストから該提供物を削除するステップと
    をさらに備えたことを特徴とする請求項9に記載の方法。
  13. 前記特定の基準は、前記ダウンロード命令によって提供されるスケジューリング情報と、ハードウェアイベントと、ソフトウェアイベントとのうちの1つまたは複数の任意の組合せに基づくことを特徴とする請求項9に記載の方法。
JP2003188930A 2002-06-28 2003-06-30 モバイルデバイスの構成管理のためのプログラム及び方法 Expired - Fee Related JP4519426B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/187,312 US20040002943A1 (en) 2002-06-28 2002-06-28 Systems and methods for application delivery and configuration management of mobile devices

Publications (3)

Publication Number Publication Date
JP2004062892A JP2004062892A (ja) 2004-02-26
JP2004062892A5 JP2004062892A5 (ja) 2006-08-03
JP4519426B2 true JP4519426B2 (ja) 2010-08-04

Family

ID=29718038

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003188930A Expired - Fee Related JP4519426B2 (ja) 2002-06-28 2003-06-30 モバイルデバイスの構成管理のためのプログラム及び方法

Country Status (7)

Country Link
US (1) US20040002943A1 (ja)
EP (1) EP1376930B1 (ja)
JP (1) JP4519426B2 (ja)
CN (1) CN100363921C (ja)
AT (1) ATE393509T1 (ja)
DE (1) DE60320486T2 (ja)
TW (1) TWI327841B (ja)

Families Citing this family (180)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070169073A1 (en) * 2002-04-12 2007-07-19 O'neill Patrick Update package generation and distribution network
US9813514B2 (en) 2002-06-12 2017-11-07 Good Technology Holdings Limited Information repository system including a wireless device and related method
US7653401B2 (en) * 2002-07-25 2010-01-26 Hai Qu Filtering of broadcast SMS messages
US7149826B2 (en) * 2002-08-05 2006-12-12 Hewlett-Packard Development Company, L.P. Peripheral device output job routing
US20040021906A1 (en) * 2002-08-05 2004-02-05 Howard Dennis W. Peripheral device output job routing
US7086051B2 (en) * 2002-08-21 2006-08-01 Defywire, Inc. Method and apparatus for just-in-time provisioning application-related information at a communication device
US7113776B2 (en) * 2002-08-30 2006-09-26 Qualcomm Inc. System and method for application and application metadata filtering based on wireless device capabilities
US20080313282A1 (en) * 2002-09-10 2008-12-18 Warila Bruce W User interface, operating system and architecture
TW589572B (en) * 2002-11-12 2004-06-01 Tatung Co Method for updating operating system
US9092286B2 (en) * 2002-12-20 2015-07-28 Qualcomm Incorporated System to automatically process components on a device
WO2004061615A2 (en) * 2002-12-31 2004-07-22 Bitfone Corporation Management of service components installed in an electronic device in a mobile services network
JP2004227080A (ja) * 2003-01-20 2004-08-12 Nec Corp 情報処理システム、携帯端末、及び、情報処理サーバ
US6944859B2 (en) * 2003-01-30 2005-09-13 Epocrates, Inc. System and method for automatically installing data on a handheld computer
US7337330B2 (en) * 2003-03-10 2008-02-26 Cyberview Technology, Inc. Universal game download system for legacy gaming machines
SE524499C2 (sv) * 2003-03-10 2004-08-17 Smarttrust Ab Förfarande för säker nedladdning av applikationer
US6728729B1 (en) * 2003-04-25 2004-04-27 Apple Computer, Inc. Accessing media across networks
US20040221022A1 (en) * 2003-04-30 2004-11-04 Gracyk Donna Jean Method and system for configuring a network node
US20050004954A1 (en) * 2003-07-01 2005-01-06 Hand Held Products, Inc. Systems and methods for expedited data transfer in a communication system using hash segmentation
US7367514B2 (en) 2003-07-03 2008-05-06 Hand Held Products, Inc. Reprogramming system including reprogramming symbol
US20050050174A1 (en) * 2003-09-03 2005-03-03 Shao-Tsu Kung Network system having automatic client configuration and method thereof
US7526771B2 (en) * 2003-11-12 2009-04-28 Ntt Docomo, Inc. Method and apparatus for configuring an application while the application is running
US8166422B2 (en) * 2003-11-21 2012-04-24 Kyocera Corporation System and method for arranging and playing a media presentation
US7574706B2 (en) 2003-12-15 2009-08-11 Microsoft Corporation System and method for managing and communicating software updates
US20050198221A1 (en) * 2004-01-07 2005-09-08 Microsoft Corporation Configuring an ad hoc wireless network using a portable media device
US20050198233A1 (en) * 2004-01-07 2005-09-08 Microsoft Corporation Configuring network settings of thin client devices using portable storage media
US7657612B2 (en) * 2004-01-07 2010-02-02 Microsoft Corporation XML schema for network device configuration
US20050149732A1 (en) * 2004-01-07 2005-07-07 Microsoft Corporation Use of static Diffie-Hellman key with IPSec for authentication
US7769995B2 (en) * 2004-01-07 2010-08-03 Microsoft Corporation System and method for providing secure network access
JPWO2005073843A1 (ja) * 2004-01-28 2007-09-13 松下電器産業株式会社 セキュアデバイス、端末装置、ゲート機器、機器
GB2411801B (en) * 2004-03-05 2006-12-20 Toshiba Res Europ Ltd Wireless network
US7904895B1 (en) * 2004-04-21 2011-03-08 Hewlett-Packard Develpment Company, L.P. Firmware update in electronic devices employing update agent in a flash memory card
JP2005316610A (ja) * 2004-04-27 2005-11-10 Ntt Docomo Inc データ配信装置およびデータ配信方法
US7546299B2 (en) * 2004-05-12 2009-06-09 Alcatel-Lucent Usa Inc. Network supported network file sharing among mobile subscribers
US7600015B2 (en) * 2004-06-28 2009-10-06 Nokia Corporation User confirmation in data downloading
US8526940B1 (en) 2004-08-17 2013-09-03 Palm, Inc. Centralized rules repository for smart phone customer care
US8180860B2 (en) * 2004-08-24 2012-05-15 International Business Machines Corporation Wireless device configuration management
DE102004047368A1 (de) * 2004-09-29 2006-03-30 Siemens Ag Funkgestützte Kommunikationseinrichtung und Verfahren zum Updaten einer funkgestützten Kommunikationseinrichtung
US20060080659A1 (en) * 2004-10-13 2006-04-13 Jp Mobile Operating, L.P. System and method of provisioning software to mobile devices
US7710587B2 (en) * 2004-10-18 2010-05-04 Microsoft Corporation Method and system for configuring an electronic device
US9275052B2 (en) 2005-01-19 2016-03-01 Amazon Technologies, Inc. Providing annotations of a digital work
US8131647B2 (en) * 2005-01-19 2012-03-06 Amazon Technologies, Inc. Method and system for providing annotations of a digital work
JP4734941B2 (ja) * 2005-01-31 2011-07-27 富士ゼロックス株式会社 カプセル化サーバ
US7826833B2 (en) * 2005-02-17 2010-11-02 Madhavan P G Channel assay for thin client device wireless provisioning
US7616588B2 (en) * 2005-03-31 2009-11-10 Microsoft Corporation Simplified creation and termination of an ad hoc wireless network with internet connection sharing
CA2604312C (en) * 2005-04-15 2014-12-09 Esprida Corporation Apparatus and method for managing a network of intelligent devices
CN100403690C (zh) * 2005-04-30 2008-07-16 华为技术有限公司 用户驻地设备配置管理方法及其系统
US8533097B2 (en) * 2005-05-16 2013-09-10 Jorge Arturo Maass Transaction arbiter system and method
JP4455403B2 (ja) * 2005-05-17 2010-04-21 キヤノン株式会社 管理方法及び管理装置
WO2006128949A1 (en) * 2005-06-03 2006-12-07 Elektrobit Wireless Communications Oy Operating a mobile device
US9946585B1 (en) * 2005-06-30 2018-04-17 Oracle America, Inc. System and method for asset module isolation
US10733666B1 (en) 2005-06-30 2020-08-04 Sun Microsystems Inc. System and method for defining a privacy zone within a network
US8655757B1 (en) * 2005-06-30 2014-02-18 Oracle International Corporation System and method for assigning a unique asset identity
US10346149B1 (en) * 2005-06-30 2019-07-09 Oracle America, Inc. System and method for managing asset-side offering modules
US9824361B1 (en) * 2005-06-30 2017-11-21 Oracle America, Inc. System and method for discovering and managing remote assets related to distributed offerings
US10235678B1 (en) * 2005-06-30 2019-03-19 Oracle America, Inc. System and method for managing distributed offerings
US8577761B1 (en) * 2005-06-30 2013-11-05 Oracle America, Inc. System and method for dynamic offering topologies
US8725610B1 (en) * 2005-06-30 2014-05-13 Oracle America, Inc. System and method for managing privacy for offerings
US10657586B1 (en) * 2005-06-30 2020-05-19 Oracle America, Inc. System and method for dynamic offering deployment
TWI273815B (en) * 2005-10-27 2007-02-11 Via Tech Inc File download system and method
US8346223B1 (en) * 2005-11-07 2013-01-01 Flurry, Inc. Delivering a customized service to a mobile device using a link
US20070109983A1 (en) * 2005-11-11 2007-05-17 Computer Associates Think, Inc. Method and System for Managing Access to a Wireless Network
EP1786140A1 (en) * 2005-11-15 2007-05-16 Siemens Aktiengesellschaft Server aided launching of applications, authenticating users and connecting secure networks
US20070143255A1 (en) * 2005-11-28 2007-06-21 Webaroo, Inc. Method and system for delivering internet content to mobile devices
US7934660B2 (en) 2006-01-05 2011-05-03 Hand Held Products, Inc. Data collection system having reconfigurable data collection terminal
US7676565B2 (en) * 2006-01-27 2010-03-09 Microsoft Corporation Light weight software and hardware inventory
US20070207800A1 (en) * 2006-02-17 2007-09-06 Daley Robert C Diagnostics And Monitoring Services In A Mobile Network For A Mobile Device
US7620392B1 (en) 2006-02-27 2009-11-17 Good Technology, Inc. Method and system for distributing and updating software in wireless devices
US8352449B1 (en) 2006-03-29 2013-01-08 Amazon Technologies, Inc. Reader device content indexing
WO2007146710A2 (en) 2006-06-08 2007-12-21 Hewlett-Packard Development Company, L.P. Device management in a network
US8849913B2 (en) * 2006-06-23 2014-09-30 Sony Corporation Method and system for triggering activation of IMS applications on a mobile radio terminal
US20080005168A1 (en) * 2006-06-30 2008-01-03 Microsoft Corporation Managing family information
WO2008014454A2 (en) 2006-07-27 2008-01-31 Hewlett-Packard Development Company, L.P. User experience and dependency management in a mobile device
CN100459602C (zh) * 2006-08-10 2009-02-04 华为技术有限公司 用于应用终端加载升级的控制方法和装置
WO2008022291A2 (en) * 2006-08-16 2008-02-21 Snapin Software Inc. Local triggering methods, such as applications for device-initiated diagnostic or configuration management
US8725565B1 (en) 2006-09-29 2014-05-13 Amazon Technologies, Inc. Expedited acquisition of a digital item following a sample presentation of the item
US9672533B1 (en) 2006-09-29 2017-06-06 Amazon Technologies, Inc. Acquisition of an item based on a catalog presentation of items
FR2911023B1 (fr) * 2006-12-29 2009-04-17 Radiotelephone Sfr Procede de securisation d'un flux de donnees.
US7865817B2 (en) 2006-12-29 2011-01-04 Amazon Technologies, Inc. Invariant referencing in digital works
WO2008086504A2 (en) * 2007-01-10 2008-07-17 Snapin Software Inc. Method and system for configuring e-mail for mobile devices
TW200830181A (en) * 2007-01-12 2008-07-16 An Chen Comp Co Ltd Mobile service device
US8024400B2 (en) 2007-09-26 2011-09-20 Oomble, Inc. Method and system for transferring content from the web to mobile devices
US7751807B2 (en) 2007-02-12 2010-07-06 Oomble, Inc. Method and system for a hosted mobile management service architecture
US20080195962A1 (en) * 2007-02-12 2008-08-14 Lin Daniel J Method and System for Remotely Controlling The Display of Photos in a Digital Picture Frame
US10089210B2 (en) * 2007-03-29 2018-10-02 Microsoft Technology Licensing, Llc Auto-generation of provider functionality
US7716224B2 (en) 2007-03-29 2010-05-11 Amazon Technologies, Inc. Search and indexing on a user device
US9665529B1 (en) 2007-03-29 2017-05-30 Amazon Technologies, Inc. Relative progress and event indicators
US20080243788A1 (en) * 2007-03-29 2008-10-02 Reztlaff James R Search of Multiple Content Sources on a User Device
US8341513B1 (en) 2007-05-21 2012-12-25 Amazon.Com Inc. Incremental updates of items
US8635309B2 (en) 2007-08-09 2014-01-21 Hand Held Products, Inc. Methods and apparatus to change a feature set on data collection devices
US7857222B2 (en) 2007-08-16 2010-12-28 Hand Held Products, Inc. Data collection system having EIR terminal interface node
US8190475B1 (en) * 2007-09-05 2012-05-29 Google Inc. Visitor profile modeling
US8964560B2 (en) * 2007-10-11 2015-02-24 Nokia Solutions And Networks Oy Apparatus, method, computer program product and system for requesting acknowledgment of transmitted data packets
US8839088B1 (en) 2007-11-02 2014-09-16 Google Inc. Determining an aspect value, such as for estimating a characteristic of online entity
US8230436B2 (en) * 2008-01-10 2012-07-24 Microsoft Corporation Aggregating recurrent schedules to optimize resource consumption
US8166145B2 (en) * 2008-01-10 2012-04-24 Microsoft Corporation Managing event-based conditional recurrent schedules
US20090182802A1 (en) * 2008-01-10 2009-07-16 Microsoft Corporation Mobile device management scheduling
US9185554B2 (en) 2008-02-15 2015-11-10 Appcentral, Inc. System and methods to store, retrieve, manage, augment and monitor applications on appliances
US9544398B2 (en) 2008-02-15 2017-01-10 Good Technology Holdings Limited System and methods to store, retrieve, manage, augment and monitor applications on appliances
US8225292B2 (en) * 2008-04-18 2012-07-17 Oracle America, Inc. Method and system for validating a knowledge package
US20090265586A1 (en) * 2008-04-18 2009-10-22 Sun Microsystems, Inc. Method and system for installing software deliverables
US7877461B1 (en) 2008-06-30 2011-01-25 Google Inc. System and method for adding dynamic information to digitally signed mobile applications
US20100057910A1 (en) * 2008-09-02 2010-03-04 International Business Machines Corporation Concept for trusting client-side storage and distribution of asynchronous includes in an application server environment
US20100087184A1 (en) * 2008-10-08 2010-04-08 Research In Motion Limited System and methods for configuring an updating frequency for mobile wireless communications device application updates and related methods
CA2675351C (en) 2008-10-08 2015-05-19 Research In Motion Limited Server for sending new application portions to mobile wireless communications devices and related methods
US20100088367A1 (en) * 2008-10-08 2010-04-08 Research In Motion Limited Mobile wireless communications device and system providing dynamic management of carrier applications and related methods
WO2010074535A2 (en) * 2008-12-24 2010-07-01 Lg Electronics Inc. An iptv receiver and method for controlling an application in the iptv receiver
US9087032B1 (en) 2009-01-26 2015-07-21 Amazon Technologies, Inc. Aggregation of highlights
US8378979B2 (en) * 2009-01-27 2013-02-19 Amazon Technologies, Inc. Electronic device with haptic feedback
US8832584B1 (en) 2009-03-31 2014-09-09 Amazon Technologies, Inc. Questions on highlighted passages
US9412137B2 (en) * 2009-04-01 2016-08-09 Honeywell International Inc. Cloud computing for a manufacturing execution system
US8204717B2 (en) * 2009-04-01 2012-06-19 Honeywell International Inc. Cloud computing as a basis for equipment health monitoring service
US7970830B2 (en) * 2009-04-01 2011-06-28 Honeywell International Inc. Cloud computing for an industrial automation and manufacturing system
US8555381B2 (en) * 2009-04-01 2013-10-08 Honeywell International Inc. Cloud computing as a security layer
US9218000B2 (en) 2009-04-01 2015-12-22 Honeywell International Inc. System and method for cloud computing
CN101959179B (zh) * 2009-07-17 2014-08-20 华为技术有限公司 一种提供移动终端应用程序的方法、服务器和移动终端
TWI488114B (zh) * 2009-07-22 2015-06-11 Mitake Information Corp 提供一行動裝置下載一相容軟體之裝置與方法
US8464243B2 (en) * 2009-08-21 2013-06-11 International Business Machines Corporation Updating client node of computing system
US8984657B2 (en) 2009-09-08 2015-03-17 Appcentral, Inc. System and method for remote management of applications downloaded to a personal portable wireless appliance
US8692763B1 (en) 2009-09-28 2014-04-08 John T. Kim Last screen rendering for electronic book reader
US9497092B2 (en) 2009-12-08 2016-11-15 Hand Held Products, Inc. Remote device management interface
US8701104B2 (en) * 2009-12-14 2014-04-15 Opera Software Asa System and method for user agent code patch management
US8997092B2 (en) * 2010-02-03 2015-03-31 Symantec Corporation Method, system, and computer readable medium for provisioning and remote distribution
US8346796B2 (en) * 2010-04-23 2013-01-01 MobileRealtyApps.com, LLC System for searching property listings based on location
JP5449044B2 (ja) * 2010-06-10 2014-03-19 シャープ株式会社 サーバ装置、端末装置およびアプリケーション制御システム
US9672022B2 (en) * 2010-06-23 2017-06-06 Microsoft Technology Licensing, Llc Applications including multiple experience modules
CN102348004B (zh) * 2010-08-04 2014-03-19 中国移动通信有限公司 一种业务组件的配置方法、系统及设备
US9495322B1 (en) 2010-09-21 2016-11-15 Amazon Technologies, Inc. Cover display
US8517269B2 (en) 2010-11-09 2013-08-27 Hand Held Products, Inc. Using a user'S application to configure user scanner
US9342381B2 (en) 2011-02-03 2016-05-17 Symantec Corporation Method and system for establishing a DLP-compliant environment
KR101847073B1 (ko) * 2011-02-11 2018-05-29 삼성전자주식회사 프로세싱 디바이스에서의 컨텐트 관리 방법 및 그 장치
US9301315B1 (en) * 2011-03-09 2016-03-29 Amdocs Software Systems Limited System, method, and computer program for transmitting network communications at a point in time automatically determined based on communication rates
US20130097226A1 (en) * 2011-04-07 2013-04-18 Chun-Ta YU Software Component Information Retrieving Method For SCOMO And Related Service System
ES2429219B1 (es) * 2011-05-06 2014-09-03 Telefónica, S.A. Método de composición de cambios de configuración en un elemento de red
JP5847457B2 (ja) * 2011-06-27 2016-01-20 キヤノン株式会社 画像形成装置及びその処理方法
TWI683593B (zh) * 2011-06-29 2020-01-21 澳大利亞商自由科技有限公司 用以致能使用不同通訊協定之裝置間之通訊的系統、方法及/或設備
US8707289B2 (en) 2011-07-20 2014-04-22 Google Inc. Multiple application versions
US8701125B2 (en) * 2011-09-06 2014-04-15 The Nielsen Company (Us), Llc Methods and apparatus to detect uninstallation of an on-device meter
US8621123B2 (en) 2011-10-06 2013-12-31 Honeywell International Inc. Device management using virtual interfaces
US8539123B2 (en) 2011-10-06 2013-09-17 Honeywell International, Inc. Device management using a dedicated management interface
EP2584754A1 (en) * 2011-10-17 2013-04-24 Alcatel Lucent Method of managing a network of clients
US9110750B2 (en) 2011-10-19 2015-08-18 Good Technology Corporation Application installation system
CN103907104B (zh) * 2011-10-27 2017-07-18 惠普发展公司,有限责任合伙企业 用于客户端设备远程管理的应用商店界面
US9158741B1 (en) 2011-10-28 2015-10-13 Amazon Technologies, Inc. Indicators for navigating digital works
US9413893B2 (en) * 2012-04-05 2016-08-09 Assurant, Inc. System, method, apparatus, and computer program product for providing mobile device support services
US8608053B2 (en) 2012-04-30 2013-12-17 Honeywell International Inc. Mobile communication terminal configured to display multi-symbol decodable indicia
US10044522B1 (en) 2012-08-21 2018-08-07 Amazon Technologies Inc. Tree-oriented configuration management service
WO2014052112A1 (en) * 2012-09-27 2014-04-03 Apperian, Inc. Control of applications installed on a remote device
JP6361099B2 (ja) * 2012-12-11 2018-07-25 セイコーエプソン株式会社 システム
US9645834B2 (en) 2013-01-18 2017-05-09 Good Technology Holdings Limited Methods for remote configuration of software applications
US9906398B1 (en) * 2013-03-11 2018-02-27 Amazon Technologies, Inc. Remote management of device settings
US9558508B2 (en) * 2013-03-15 2017-01-31 Microsoft Technology Licensing, Llc Energy-efficient mobile advertising
CN103560901B (zh) * 2013-09-30 2018-09-14 北京宝利明威软件股份有限公司 一种移动终端管理系统和管理方法
CN103747426B (zh) * 2013-09-30 2019-03-15 北京宝利明威软件股份有限公司 一种移动终端管理系统和管理方法
CN103561053B (zh) * 2013-09-30 2018-10-23 北京宝利明威软件股份有限公司 一种移动终端管理系统和管理方法
US9763081B2 (en) 2013-11-21 2017-09-12 Apple Inc. System and method for policy control functions management mechanism
CN103763428B (zh) * 2013-12-12 2017-11-07 北京宝利明威软件股份有限公司 一种移动终端上的应用管理系统和方法
US20150178477A1 (en) * 2013-12-25 2015-06-25 Carrier Iq, Inc. Data Collection Privacy Agent to Ensure, Absent an Agreement, that Only Public Standards are Collected, and to Package Private Data Exclusively for Intended Recipients
CN104753893A (zh) * 2013-12-31 2015-07-01 北龙中网(北京)科技有限责任公司 移动app可信验证方法及装置
US10175851B2 (en) * 2014-02-19 2019-01-08 Telefonaktiebolaget Lm Ericsson (Publ) Methods, management servers, and computer program products for managing network devices
US9817646B1 (en) 2014-03-17 2017-11-14 Google Llc Multiplatform and multichannel distribution of web applications across devices
EP3152650B1 (en) * 2014-06-03 2019-09-11 Samsung Electronics Co., Ltd. High-speed application for installation on mobile devices for permitting remote configuration of such mobile devices
CN104035797A (zh) * 2014-06-13 2014-09-10 四川长虹电器股份有限公司 应用程序的分发方法和应用程序的接收方法
TW201604778A (zh) * 2014-07-29 2016-02-01 Acaia Corp 藍牙電子秤之韌體更新方法
EP3265345B1 (de) * 2015-03-05 2019-10-02 Volkswagen Aktiengesellschaft Intelligenter elektronischer schlüssel mit mobilfunk-fähigkeit
US10503145B2 (en) 2015-03-25 2019-12-10 Honeywell International Inc. System and method for asset fleet monitoring and predictive diagnostics using analytics for large and varied data sources
CN105022832B (zh) * 2015-08-07 2018-11-13 广东欧珀移动通信有限公司 App应用程序安全下载的方法、移动终端及下载服务器
US10491590B2 (en) * 2015-10-12 2019-11-26 AssetWorks LLC System and method for verifying and redirecting mobile applications
US10776706B2 (en) 2016-02-25 2020-09-15 Honeywell International Inc. Cost-driven system and method for predictive equipment failure detection
US10657199B2 (en) 2016-02-25 2020-05-19 Honeywell International Inc. Calibration technique for rules used with asset monitoring in industrial process control and automation systems
US10853482B2 (en) 2016-06-03 2020-12-01 Honeywell International Inc. Secure approach for providing combined environment for owners/operators and multiple third parties to cooperatively engineer, operate, and maintain an industrial process control and automation system
US10310467B2 (en) 2016-08-30 2019-06-04 Honeywell International Inc. Cloud-based control platform with connectivity to remote embedded devices in distributed control system
TWI607912B (zh) * 2016-10-14 2017-12-11 光陽工業股份有限公司 Program updating method and system of vehicle
EP3346672B1 (en) * 2017-01-04 2019-08-21 Samsung Electronics Co., Ltd. Electronic device and application sharing method thereof
US11301574B1 (en) * 2017-12-21 2022-04-12 Securus Technologies, Llc Convert community device to personal device
TWI693565B (zh) * 2018-02-08 2020-05-11 鼎新電腦股份有限公司 資料部署方法及資料部署系統
US11237550B2 (en) 2018-03-28 2022-02-01 Honeywell International Inc. Ultrasonic flow meter prognostics with near real-time condition based uncertainty analysis
CN113056759A (zh) * 2018-11-19 2021-06-29 瑞典爱立信有限公司 供网络设备用来获得分布式账本技术网络的状态的可信状态表示的方法和系统
TWI813962B (zh) * 2021-03-05 2023-09-01 中華電信股份有限公司 企業雲網整合監控之建置與演進系統、方法及電腦可讀媒介
CN114661397B (zh) * 2022-03-22 2024-01-23 北京字跳网络技术有限公司 一种下载管理方法、装置、电子设备以及存储介质
US20240097992A1 (en) * 2022-09-20 2024-03-21 Servicenow, Inc. Smart Detection for Determination of Database Accuracy

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10207710A (ja) * 1997-01-16 1998-08-07 Casio Comput Co Ltd ソフトウエアダウンロードシステム及びメニュー作成システム
JP2000132401A (ja) * 1998-10-27 2000-05-12 Matsushita Electric Ind Co Ltd 車載用制御装置
JP2001273147A (ja) * 2000-03-27 2001-10-05 Toshiba Corp 情報配布方法、情報配布システム、情報配布サーバ、端末機器および記録媒体
JP2002175237A (ja) * 2000-12-05 2002-06-21 Mitsubishi Electric Corp 中継方式及びプログラム中継システム及び中継方法及び中継プログラムを記録したコンピュータで読み取り可能な記録媒体

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US637869A (en) * 1897-05-19 1899-11-28 Frederick A Hetherington Portable paving repair plant.
FI955188A (fi) * 1995-10-30 1997-06-24 Nokia Telecommunications Oy Matkaviestimen ohjelmiston ylläpito
US6049671A (en) * 1996-04-18 2000-04-11 Microsoft Corporation Method for identifying and obtaining computer software from a network computer
US6308061B1 (en) * 1996-08-07 2001-10-23 Telxon Corporation Wireless software upgrades with version control
US6643506B1 (en) * 1996-08-07 2003-11-04 Telxon Corporation Wireless software upgrades with version control
US6347398B1 (en) * 1996-12-12 2002-02-12 Microsoft Corporation Automatic software downloading from a computer network
US6219698B1 (en) * 1997-12-19 2001-04-17 Compaq Computer Corporation Configuring client software using remote notification
US6397259B1 (en) * 1998-05-29 2002-05-28 Palm, Inc. Method, system and apparatus for packet minimized communications
US6272333B1 (en) * 1998-06-12 2001-08-07 Motorola, Inc. Method and apparatus in a wireless communication system for controlling a delivery of data
US6378069B1 (en) * 1998-11-04 2002-04-23 Nortel Networks Limited Apparatus and methods for providing software updates to devices in a communication network
FI108390B (fi) * 1999-04-15 2002-01-15 Nokia Corp Põõtelaitteen palvelukomponenttien hallinta
US6775536B1 (en) * 1999-11-03 2004-08-10 Motorola, Inc Method for validating an application for use in a mobile communication device
WO2001033867A2 (en) * 1999-11-03 2001-05-10 Motorola Inc. A method for validating an application for use in a mobile communication device
CN1297206A (zh) * 1999-11-23 2001-05-30 倚天资讯股份有限公司 利用移动电话更新软件的个人数字助理系统与方法
US6226739B1 (en) * 1999-12-14 2001-05-01 International Business Machines Corporation Method and computer program for distributing software to a personal palm-type device through a global software distribution package transmittable over the world wide web
JP2001223799A (ja) * 2000-02-10 2001-08-17 Nec Corp 移動体通信システムおよびプログラム伝送方法
US6789077B1 (en) * 2000-05-09 2004-09-07 Sun Microsystems, Inc. Mechanism and apparatus for web-based searching of URI-addressable repositories in a distributed computing environment
AU2001276827A1 (en) * 2000-06-20 2002-01-02 Invertix Corporation Method and system for interconnecting remote intelligent devices with a network
WO2002013464A1 (en) * 2000-08-05 2002-02-14 Idesta Group Limited Mobile computing system architecture
US6782253B1 (en) * 2000-08-10 2004-08-24 Koninklijke Philips Electronics N.V. Mobile micro portal
WO2002044892A2 (en) * 2000-11-28 2002-06-06 4Thpass Inc. Method and system for maintaining and distributing wireless applications
US6907530B2 (en) * 2001-01-19 2005-06-14 V-One Corporation Secure internet applications with mobile code
US7246351B2 (en) * 2001-02-20 2007-07-17 Jargon Software System and method for deploying and implementing software applications over a distributed network
GB2373677B (en) * 2001-03-19 2005-08-10 Nokia Mobile Phones Ltd Client server system
US7155425B2 (en) * 2001-05-15 2006-12-26 Nokia Corporation Mobile web services
US20030014436A1 (en) * 2001-06-27 2003-01-16 Spencer Donald J. Closed-loop delivery to integrated download manager
US7092734B2 (en) * 2001-08-06 2006-08-15 Samsung Electronics Co., Ltd. IOTA software download via auxiliary device
US20030041125A1 (en) * 2001-08-16 2003-02-27 Salomon Kirk C. Internet-deployed wireless system
US20030145316A1 (en) * 2002-01-25 2003-07-31 Mckinlay Eric System, method and computer program product for initiating a software download
KR100421624B1 (ko) * 2001-11-02 2004-03-11 (주) 한정문 플랫폼 독립적인 소프트웨어 자동 검색/배포/설치 장치 및그 방법
US7219140B2 (en) * 2001-12-05 2007-05-15 Dennis Craig Marl Configuration and management systems for mobile and embedded devices
US20030199282A1 (en) * 2002-01-15 2003-10-23 Cezary Marcjan Mobile telephone active messaging system
AU2003220423A1 (en) * 2002-03-22 2003-10-13 Sun Microsystems, Inc. Mobile download system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10207710A (ja) * 1997-01-16 1998-08-07 Casio Comput Co Ltd ソフトウエアダウンロードシステム及びメニュー作成システム
JP2000132401A (ja) * 1998-10-27 2000-05-12 Matsushita Electric Ind Co Ltd 車載用制御装置
JP2001273147A (ja) * 2000-03-27 2001-10-05 Toshiba Corp 情報配布方法、情報配布システム、情報配布サーバ、端末機器および記録媒体
JP2002175237A (ja) * 2000-12-05 2002-06-21 Mitsubishi Electric Corp 中継方式及びプログラム中継システム及び中継方法及び中継プログラムを記録したコンピュータで読み取り可能な記録媒体

Also Published As

Publication number Publication date
EP1376930A2 (en) 2004-01-02
CN1471008A (zh) 2004-01-28
DE60320486D1 (de) 2008-06-05
US20040002943A1 (en) 2004-01-01
ATE393509T1 (de) 2008-05-15
CN100363921C (zh) 2008-01-23
EP1376930B1 (en) 2008-04-23
DE60320486T2 (de) 2009-05-07
EP1376930A3 (en) 2004-09-01
TW200402965A (en) 2004-02-16
TWI327841B (en) 2010-07-21
JP2004062892A (ja) 2004-02-26

Similar Documents

Publication Publication Date Title
JP4519426B2 (ja) モバイルデバイスの構成管理のためのプログラム及び方法
JP4313030B2 (ja) モバイルおよび組込み装置のための構成および管理システム
US10057415B2 (en) Method and apparatus for remote control and updating of wireless mobile devices
JP4734592B2 (ja) クライアントリダイレクトによるプライベートネットワークへの安全なアクセス提供方法およびシステム
US7532882B2 (en) Method and system for automatically configuring access control
US20050120106A1 (en) System and method for distributing software updates to a network appliance
US20060085852A1 (en) Enterprise assessment management
US9727352B2 (en) Utilizing history of changes associated with software packages to manage computing systems
US20030233483A1 (en) Executing software in a network environment
JP2004534973A (ja) ネットワークデバイスのアップグレードシステム及び方法
JP2008546318A (ja) 無線デバイスを監視及び維持するためのシステム及び方法
JP2010503918A (ja) 機器管理エージェント及び動的リンクライブラリによる無線データ端末装置上でのアプリケーション管理を行うシステム及び方法
JP2012084081A (ja) 情報処理装置、その制御方法、及びプログラム
JP2006520975A (ja) 非侵入な自動オフサイト・パッチ・フィンガプリンティングおよびアップデーティングシステム、および方法
JP2009533722A (ja) ナビゲーション装置の挙動をエミュレートする通信装置
JP2008521094A (ja) プロビジョニングパケットを配信するためのシステムおよび方法
US20100005461A1 (en) Method and apparatus for centrally managing appliance landscape
JP2008077524A (ja) 通信端末装置、並びに通信端末装置とサーバとの間の通信方法及び通信システム
CN100363895C (zh) 移动式和嵌入式设备的配置和管理系统
JP2003263325A (ja) 情報環境設定システム、プログラム及び方法
KR101279443B1 (ko) 어플리케이션 기반 업무 관리 시스템 및 방법
EP1569410A1 (en) Method and system for automatically configuring access control
WO2023045442A1 (zh) 应用组的传输方法及装置、存储介质及电子装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060615

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060615

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090529

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090828

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090918

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091218

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100119

RD13 Notification of appointment of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7433

Effective date: 20100305

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20100305

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100419

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100514

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100519

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130528

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130528

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees