(57)【要約】【課題】通信の接続先となる装置の所在情報が書き替えられたまま維持されるのを防止すること。【解決手段】記憶手段１３は、識別子と処理とを対応させる情報を記憶する。記憶手段１４は、ネットワーク４０に接続された装置との接続を確立する第１の処理を示す第１の識別子と、第１の処理において接続先となる装置の所在情報とを含む設定情報を記憶する。実行手段１５は、記憶手段１３に記憶されている情報を用いて、受信手段１２が受信したメッセージに対応する処理を、複数の処理の中から特定して実行する。取得手段１６は、記憶手段１４に記憶されている所在情報が書き替えられたときに書き替え前の情報に修正するための第１の命令群を含むプログラムを取得する。修正手段１７は、所在情報が書き替えられた場合、取得手段１６により取得されたプログラムの第１の命令群を実行することにより、所在情報を書き替え前の情報に修正する。【選択図】図２
2011035504.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークに接続された装置と通信する通信手段と、
識別子が記載された第１の部分およびデータが記載された第２の部分を含むメッセージを、前記通信手段を介して受信する受信手段と、
識別子と処理とを対応させる情報を記憶する第１の記憶手段と、
前記ネットワークに接続された装置との接続を確立する第１の処理を示す第１の識別子と、前記第１の処理において接続先となる装置の所在情報とを含む設定情報を記憶する第２の記憶手段と、
前記第１の記憶手段に記憶されている情報を用いて、前記受信手段が受信したメッセージの前記第１の部分に記載された識別子に対応する処理を、前記第１の処理を含む複数の処理の中から特定して実行する実行手段と、
前記第２の記憶手段に記憶されている前記所在情報が書き替えられたときに書き替え前の情報に修正するための第１の命令群を含むプログラムを取得する取得手段と、
前記所在情報が書き替えられた場合、前記取得手段により取得されたプログラムの前記第１の命令群を実行することにより、前記所在情報を書き替え前の情報に修正する修正手段と
を有する移動通信端末。
【請求項２】
前記複数の処理が、前記第２の記憶手段または前記第１の記憶手段に記憶されている情報を書き替える第２の処理を含み、
前記第１の記憶手段が、前記第２の処理と対応する第２の識別子として第１の文字列を記憶しており、
前記第１の部分に前記第２の識別子が記載され、前記第２の部分に前記データとして前記第２の処理を示す情報および第２の文字列が記載されたメッセージを前記受信手段が受信すると、前記実行手段は、前記第２の処理により、前記第１の記憶手段において前記第２の識別子の内容を前記第２の文字列に書き替える
ことを特徴とする請求項１に記載の移動通信端末。
【請求項３】
前記第１の記憶手段が、前記第１の処理と対応する識別子として第３の識別子を記憶しており、
前記第１の処理が、前記所在情報により示される装置に対し、接続を確立するための応答を前記通信手段を介して送信する処理を含み、
前記第１の部分に前記第３の識別子が記載されたメッセージを前記受信手段が受信すると、前記実行手段は、前記第１の処理により前記応答を送信する
ことを特徴とする請求項２に記載の移動通信端末。
【請求項４】
前記応答が送信された後で、前記実行手段が、前記応答に応じて前記所在情報により示される装置との間で前記通信手段を介した接続を確立し、
前記取得手段は、前記所在情報により示される装置から前記接続を介してダウンロードすることにより、前記プログラムを取得する
ことを特徴とする請求項３に記載の移動通信端末。
【請求項５】
前記第１の部分に前記第２の識別子が記載され、前記第２の部分に前記データとして前記第１の処理を示す情報および第３の文字列が記載されたメッセージを前記受信手段が受信すると、前記実行手段は、前記第２の処理により、前記第１の記憶手段において前記第３の識別子の内容を前記第３の文字列に書き替える
ことを特徴とする請求項３に記載の移動通信端末。
【請求項６】
前記プログラムが、前記所在情報の書き替えおよび修正の履歴を記憶するための第２の命令群を含み、
前記受信手段が、前記接続を介して、前記履歴の送信の要求を受信し、
前記受信手段が前記要求を受信すると、前記第２の命令群を実行することにより、前記第２の記憶手段に記憶されている所在情報により示される装置に、前記接続を介して、前記履歴を送信する送信手段を有する
ことを特徴とする請求項４に記載の移動通信端末。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、移動通信端末における設定情報を制御する技術に関する。
【背景技術】
【０００２】
移動通信端末をネットワークから遠隔制御する技術が知られている。特許文献１は、携帯電話等の端末において、メタデータに応じてサービスの追加、削除、変更を行うミドルウェアを開示している。特許文献２は、処理を依頼する装置と処理を実行する装置を有する分散システムにおいて、処理を依頼する装置からメッセージを送信するときに、システム上でユニークな識別子をメッセージに含めて送信する技術を開示している。特許文献３は、ある通信端末から別の通信端末にアプリケーションの起動を要求するメールを送り、このメールを受信した通信端末がアプリケーションを起動する技術を開示している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特表２００９−５１２０５８号公報
【特許文献２】特開平８−２４９２６１号公報
【特許文献３】特開２００５−１６６０１１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明は、ネットワークを介して受信したメッセージに応じた処理を実行する移動通信端末において、通信の接続先となる装置の所在情報が書き替えられたまま維持されるのを防止する技術を提供する。
【課題を解決するための手段】
【０００５】
本発明は、ネットワークに接続された装置と通信する通信手段と、識別子が記載された第１の部分およびデータが記載された第２の部分を含むメッセージを、前記通信手段を介して受信する受信手段と、識別子と処理とを対応させる情報を記憶する第１の記憶手段と、前記ネットワークに接続された装置との接続を確立する第１の処理を示す第１の識別子と、前記第１の処理において接続先となる装置の所在情報とを含む設定情報を記憶する第２の記憶手段と、前記第１の記憶手段に記憶されている情報を用いて、前記受信手段が受信したメッセージの前記第１の部分に記載された識別子に対応する処理を、前記第１の処理を含む複数の処理の中から特定して実行する実行手段と、前記第２の記憶手段に記憶されている前記所在情報が書き替えられたときに書き替え前の情報に修正するための第１の命令群を含むプログラムを取得する取得手段と、前記所在情報が書き替えられた場合、前記取得手段により取得されたプログラムの前記第１の命令群を実行することにより、前記所在情報を書き替え前の情報に修正する修正手段とを有する移動通信端末を提供する。
この移動通信端末によれば、所在情報を書き替えられた場合であっても、プログラムにより自律的に修正される。
【０００６】
好ましい態様において、前記複数の処理が、前記第２の記憶手段または前記第１の記憶手段に記憶されている情報を書き替える第２の処理を含み、前記第１の記憶手段が、前記第２の処理と対応する第２の識別子として第１の文字列を記憶しており、前記第１の部分に前記第２の識別子が記載され、前記第２の部分に前記データとして前記第２の処理を示す情報および第２の文字列が記載されたメッセージを前記受信手段が受信すると、前記実行手段は、前記第２の処理により、前記第１の記憶手段において前記第２の識別子の内容を前記第２の文字列に書き替えてもよい。
この移動通信端末によれば、第２の記憶手段または前記第１の記憶手段に記憶されている情報を書き替える処理を開始させるためのメッセージを制限することができる。
【０００７】
別の好ましい態様において、前記第１の記憶手段が、前記第１の処理と対応する識別子として第３の識別子を記憶しており、前記第１の処理が、前記所在情報により示される装置に対し、接続を確立するための応答を前記通信手段を介して送信する処理を含み、前記第１の部分に前記第３の識別子が記載されたメッセージを前記受信手段が受信すると、前記実行手段は、前記第１の処理により前記応答を送信してもよい。
この移動通信端末によれば、接続を要求しても応答が返ってこない場合には、所在情報が書き替えられたと判断できる。
【０００８】
さらに別の好ましい態様において、前記応答が送信された後で、前記実行手段が、前記応答に応じて前記所在情報により示される装置との間で前記通信手段を介した接続を確立し、前記取得手段は、前記所在情報により示される装置から前記接続を介してダウンロードすることにより、前記プログラムを取得してもよい。
この移動通信端末によれば、信頼された装置から取得されたプログラムにより、所在情報の書き替えが監視される。
【０００９】
さらに別の好ましい態様において、前記第１の部分に前記第２の識別子が記載され、前記第２の部分に前記データとして前記第１の処理を示す情報および第３の文字列が記載されたメッセージを前記受信手段が受信すると、前記実行手段は、前記第２の処理により、前記第１の記憶手段において前記第３の識別子の内容を前記第３の文字列に書き替えてもよい。
この移動通信端末によれば、接続を確立する処理を開始させるためのメッセージを制限することができる。
【００１０】
さらに別の好ましい態様において、前記プログラムが、前記所在情報の書き替えおよび修正の履歴を記憶するための第２の命令群を含み、前記受信手段が、前記接続を介して、前記履歴の送信の要求を受信し、前記受信手段が前記要求を受信すると、前記第２の命令群を実行することにより、前記第２の記憶手段に記憶されている所在情報により示される装置に、前記接続を介して、前記履歴を送信する送信手段を有してもよい。
この移動通信端末によれば、所在情報の確認の履歴を得ることができる。
【図面の簡単な説明】
【００１１】
【図１】一実施形態に係る通信システム１の構成を示す図である。
【図２】通信システム１の機能構成を示す図である。
【図３】携帯電話機１０のハードウェア構成を示す図である。
【図４】ＣＰサーバ２０のハードウェア構成を示す図である。
【図５】ＤＭサーバ３０のハードウェア構成を示す図である。
【図６】通信システム１の動作を示すシーケンスチャートである。
【図７】ＣＰメッセージのデータ構造を例示する図である。
【図８】ＳＭＳがＣＰメッセージとして処理される条件を示す情報を示す図である。
【図９】レジストリキーと処理とを対応させる情報を例示する図である。
【図１０】書き替え後のレジストリの内容を例示する図である。
【図１１】ＤＭセッションの設定情報を例示する図である。
【図１２】履歴を例示する図である。
【発明を実施するための形態】
【００１２】
１．構成
図１は、本発明の一実施形態に係る通信システム１の構成を示す図である。この例で、通信システム１は、ＯＭＡ（Open Mobile Alliance）の遠隔端末設定の仕様に準拠したシステムである。通信システム１は、携帯電話機１０と、ＣＰ（Client Provisioning）サーバ２０と、ＤＭ（Device Management）サーバ３０とを含む。ＣＰサーバ２０およびＤＭサーバ３０は、ネットワーク４０を介して携帯電話機１０に接続される。
【００１３】
図２は、通信システム１の機能構成を示す図である。携帯電話機１０において、通信手段１１は、ネットワーク４０に接続された装置と通信する。受信手段１２は、識別子が記載された第１の部分（以下の例ではヘッダ）およびデータが記載された第２の部分（以下の例ではボディ）を含むメッセージを、通信手段１１を介して受信する。この例で、メッセージは、ＣＰサーバ２０の送信手段２１により送信される。記憶手段１３は、識別子と処理とを対応させる情報を記憶する。記憶手段１４は、ネットワーク４０に接続された装置との接続を確立する第１の処理を示す第１の識別子と、第１の処理において接続先となる装置（この例ではＤＭサーバ３０）の所在情報とを含む設定情報を記憶する。実行手段１５は、記憶手段１３に記憶されている情報を用いて、受信手段１２が受信したメッセージのヘッダに記載された識別子に対応する処理を、第１の処理を含む複数の処理の中から特定して実行する。取得手段１６は、記憶手段１４に記憶されている所在情報が書き替えられたときに書き替え前の情報に修正するための第１の命令群を含むプログラムを取得する。修正手段１７は、所在情報が書き替えられた場合、取得手段１６により取得されたプログラムの第１の命令群を実行することにより、所在情報を書き替え前の情報に修正する。
【００１４】
この例で、前述の複数の処理は、記憶手段１３または記憶手段１４に記憶されている情報を書き替える第２の処理を含む。記憶手段１３が、第２の処理と対応する第２の識別子として第１の文字列を記憶している。ヘッダに第２の識別子が記載され、ボディにデータとして第２の処理を示す情報および第２の文字列が記載されたメッセージを受信手段１２が受信すると、実行手段１５は、第２の処理により、記憶手段１３において第２の識別子の内容を第２の文字列に書き替える。
【００１５】
この例で、記憶手段１３は、第１の処理と対応する識別子として第３の識別子を記憶している。第１の処理が、所在情報により示される装置に対し、接続を確立するための応答を通信手段１１を介して送信する処理を含む。ヘッダに第３の識別子が記載されたメッセージを受信手段１２が受信すると、実行手段１５は、第１の処理により応答を送信する。この例で、ＤＭサーバ３０において、通信手段３１が、ネットワーク４０を介した通信を行う。
【００１６】
この例で、応答が送信された後で、実行手段１５は、応答に応じて所在情報により示される装置との間で通信手段１１を介した接続を確立する。取得手段１６は、所在情報により示される装置から接続を介してダウンロードすることにより、プログラムを取得する。
【００１７】
この例で、プログラムは、所在情報の書き替えおよび修正の履歴を記憶するための第２の命令群を含む。受信手段１２は、接続を介して、履歴の送信の要求を受信する。送信手段１８は、受信手段１２が要求を受信すると、第２の命令群を実行することにより、記憶手段１４に記憶されている所在情報により示される装置に、接続を介して、履歴を送信する。
【００１８】
図３は、携帯電話機１０のハードウェア構成を示す図である。携帯電話機１０は、移動通信端末の一例である。ＣＰＵ（Central Processing Unit）１０１（受信手段１２、実行手段１５、取得手段１６、修正手段１７および送信手段１８の一例）は、携帯電話機１０の各構成要素を制御する制御装置である。ＲＯＭ（Read Only Memory）１０２は、携帯電話機１０の基本的な動作に必要なプログラムおよびデータを記憶する記憶装置である。ＲＯＭ１０２は、例えば、ＯＳ（Operating System）プラグラムを記憶している。ＯＳプログラムは、データの入出力、記憶装置へのアクセス、各種プログラムの実行、音声通信、データ通信、その他の携帯電話機１０の基本的な機能を実現させるためのプログラムである。
【００１９】
ＲＡＭ（Random Access Memory）１０３は、ＣＰＵ１０１がプログラムを実行する際のワークエリアとして機能する記憶装置である。記憶部１０４は、アプリケーションプログラムおよびデータを記憶する。記憶部１０４（記憶手段１３および記憶手段１４の一例）は、フラッシュメモリ等の不揮発性メモリを有する。操作部１０５は、ユーザの操作に応じた信号を出力する。操作部１０５は、テンキー、発呼キー、終話キー、クリアキー、カーソルキー、電源キー、その他の入力を行うためのキーを含むキーパッド等の入力装置を有する。ユーザは、キーパッドを操作することにより携帯電話機１０に対して指示を入力する。表示部１０６は、文字や画像を表示する。表示部１０６は、液晶ディスプレイなどの表示装置を有する。表示部１０６は、実行中のアプリケーションプログラムにより処理された情報を表示する。表示部１０６は、ＬＣＤ（liquid crystal display）などの表示体およびその表示体を駆動する駆動回路を有する。通信部１０７（通信手段１１の一例）は、アンテナを介して無線基地局を介して音声通信またはデータ通信を行う。バス１０９は、構成要素間でやりとりされる信号やデータを伝送する伝送路である。以上の構成要素はバス１０９を介して接続されている。
【００２０】
この例で、記憶部１０４は、携帯電話機１０をＣＰクライアントとして機能させるためのプログラムおよびＤＭクライアントとして機能させるためのプログラムを記憶している。ＣＰＵ１０１がこれらのプログラムを実行することにより、携帯電話機１０において、図２に示される機能が実装される。以下の説明において、ＣＰクライアントやＤＭクライアントといったソフトウェアを処理の対象として記載することがあるが、これは、ＣＰクライアントとして機能させるためのプログラムを実行しているＣＰＵ１０１が、ＲＡＭ１０３や記憶部１０４等のハードウェア要素と協働して処理を行うことを意味する。
【００２１】
図４は、ＣＰサーバ２０のハードウェア構成を示す図である。ＣＰサーバ２０は、ＯＭＡ  ＣＰの仕様に従ったＣＰメッセージを送信するサーバである。ＣＰＵ２０１は、ＣＰサーバ２０の各構成要素を制御する制御装置である。ＲＯＭ２０２は、ＣＰサーバ２０の基本的な動作に必要なプログラムおよびデータを記憶する記憶装置である。ＲＡＭ２０３は、ＣＰＵ２０１がプログラムを実行する際のワークエリアとして機能する記憶装置である。記憶部２０４は、ＯＳプログラムや、アプリケーションプログラム、データを記憶する。この例で、記憶部２０４は、ＣＰサーバとして機能させるためのプログラムを記憶している。記憶部２０４は、ＨＤＤ（Hard Disk Drive）等の記憶装置を有する。操作部２０５は、ユーザの操作に応じた信号を出力する。操作部２０５は、キーボードやマウス等の入力装置を有する。ユーザは、キーボードを操作することによりＣＰサーバ２０に対して指示を入力する。表示部２０６は、文字や画像を表示する。表示部２０６は、液晶ディスプレイなどの表示装置を有する。通信部２０７は、ネットワーク４０を介して通信を行う。バス２０９は、構成要素間でやりとりされる信号やデータを伝送する伝送路である。以上の構成要素はバス２０９を介して接続されている。ＣＰＵ２０１が記憶部２０４に記憶されているプログラムを実行することにより、ＣＰサーバ２０はＯＭＡ  ＣＰの仕様に従ったＣＰメッセージを送信するサーバとして機能する。
【００２２】
図５は、ＤＭサーバ３０のハードウェア構成を示す図である。ＤＭサーバ３０は、ＯＭＡ  ＤＭの仕様に従った通信を行うサーバである。ＣＰＵ３０１は、ＤＭサーバ３０の各構成要素を制御する制御装置である。ＲＯＭ３０２は、ＤＭサーバ３０の基本的な動作に必要なプログラムおよびデータを記憶する記憶装置である。ＲＡＭ３０３は、ＣＰＵ３０１がプログラムを実行する際のワークエリアとして機能する記憶装置である。記憶部３０４は、ＯＳプログラムや、アプリケーションプログラム、データを記憶する。この例で、記憶部２０４は、ＤＭサーバとして機能させるためのプログラムを記憶している。記憶部３０４は、ＨＤＤ等の記憶装置を有する。操作部３０５は、ユーザの操作に応じた信号を出力する。操作部３０５は、キーボードやマウス等の入力装置を有する。ユーザは、キーボードを操作することによりＤＭサーバ３０に対して指示を入力する。表示部３０６は、文字や画像を表示する。表示部３０６は、液晶ディスプレイなどの表示装置を有する。通信部３０７は、ネットワーク４０を介して通信を行う。バス３０９は、構成要素間でやりとりされる信号やデータを伝送する伝送路である。以上の構成要素はバス３０９を介して接続されている。ＣＰＵ３０１が記憶部３０４に記憶されているプログラムを実行することにより、ＤＭサーバ３０はＯＭＡ  ＤＭの仕様に従った通信を行うサーバとして機能する。
【００２３】
２．動作
図６は、通信システム１の動作を示すシーケンスチャートである。ここでは、会社が従業員に対して携帯電話機１０を配布し、配布した携帯電話機１０を従業員が使用する場合を例として説明する。この会社は、ＣＰサーバ２０およびＤＭサーバ３０を管理している。まず、従業員に携帯電話機１０を配布する前に、ＣＰサーバ２０は、携帯電話機１０にＣＰメッセージを送信する（ステップＳ１００）。ここで、ＣＰメッセージとは、携帯電話機１０における設定を書き替える処理を実行させるためのメッセージをいう。この例で、ＣＰメッセージは、ＳＭＳ（Short Message Service）規格によるメッセージ（以下簡単のため、ＳＭＳ規格により送受信されるメッセージを単に「ＳＭＳ」という）として送信される。
【００２４】
図７は、ＣＰメッセージのデータ構造を例示する図である。この例で、ＣＰメッセージは、ＳＭＳヘッダ、ＷＤＰ（Wireless Datagram Protocol）ヘッダ、ＷＳＰ（Wireless Session Protocol）ヘッダおよびボディ（データ）を含む。ＳＭＳヘッダ、ＷＤＰヘッダおよびＷＳＰヘッダは、それぞれ、ＳＭＳ、ＷＤＰおよびＷＳＰの各プロトコルに従った情報を記載するための領域である。この例で、ＷＳＰヘッダには、「Content Type="application/vnd.wap.connectivity-wbxml"」という文字列が記載されている。ここで、パラメータ「Content Type」の内容（この例では「application/vnd.wap.connectivity-wbxml」）は、携帯電話機１０がＣＰメッセージを受信したときに実行する処理を特定する識別子（第２の識別子の一例）として用いられる。
【００２５】
図８は、ＳＭＳがＣＰメッセージとして処理される条件を示す情報を例示する図である。この例で、この情報は、レジストリに記憶されている。レジストリとは、ＯＳ、デバイスドライバ、アプリケーション、その他のソフトウェアおよび携帯電話機１０のハードウェアの設定情報を記録したデータベースをいう。レジストリは、記憶部１０４に記憶されている。レジストリにおいて、「レジストリキー」および「値」といわれる識別子がツリー構造を有している。レジストリの値の内容を「データ」という。なお、レジストリにおける「値」および「データ」という用語は、他の場合とは異なる意味で用いられている。図８の例では、レジストリキー「ＣＰ」の下位に値「Content Type」が含まれ、「Content Type」の内容は「application/vnd.wap.connectivity-wbxml」であることが示される。これは、携帯電話機１０がＣＰメッセージを受信したとき、すなわち「Content Type」の内容として「application/vnd.wap.connectivity-wbxml」が記載されたＷＳＰヘッダを含むＳＭＳを受信したときに、レジストリキー「ＣＰ」に対応する処理が実行されることを示している。
【００２６】
図９は、レジストリキーと処理とを対応させる情報を例示する図である。レジストリキー「ＣＰ」に対応する処理は、ＣＰクライアントとしての処理、すなわち、ＣＰのボディに記載された情報に基づいてレジストリの内容を書き替える処理（第２の処理の一例）である。レジストリキー「ＤＭ」に対応する処理は、ＤＭクライアントとしての処理、すなわち、ＤＭサーバとセッションを確立する処理（第１の処理の一例）である。図９の情報も、レジストリに記憶されている。例えば、書き替えの対象となるレジストリキーおよび値として「ＣＰ」の「Content Type」を指定する情報、および書き替えの内容として「aaaa/bbbb.connectivity-wbxml」という文字列を示す情報がボディに記載されたＣＰメッセージを携帯電話機１０が受信すると、ＣＰクライアントは、レジストリキー「ＣＰ」の値「Content Type」の内容を「aaaa/bbbb.connectivity-wbxml」に書き替える。
【００２７】
このような書き替えが行われると、従前は「Content Type」の内容として「application/vnd.wap.connectivity-wbxml」が記載されたＷＳＰヘッダを含むＳＭＳを携帯電話機１０が受信したときにＣＰクライアントとしての処理が実行されていたものが、書き替え後は、「Content Type」の内容として「application/vnd.wap.connectivity-wbxml」が記載されたＷＳＰヘッダを含むＳＭＳはＣＰメッセージとして処理されない。書き替え後は「aaaa/bbbb.connectivity-wbxml」が記載されたＷＳＰヘッダを含むＳＭＳがＣＰメッセージとして処理される。
【００２８】
このように、ＣＰメッセージによるレジストリの書き替えは、遠隔操作による携帯電話機１０の設定の書き替えを可能にするものの、設定が書き替えられることによる不利益を招く可能性もある。例えば、ＣＰメッセージの仕様が公開されている場合には、悪意ある者により、携帯電話機１０の設定がユーザに不都合なものに書き替えられてしまう可能性もある。レジストリの書き替えは、ＣＰメッセージによるもののほか、悪意ある（またはバグのある）アプリケーションプログラムによるもの、ユーザが悪意で（または間違って）手動で行うものが想定される。本実施形態においては、悪意ある者からのＣＰメッセージによる攻撃など、レジストリが書き替えられること（または、書き替えられた状態のまま維持されること）を防ぐため、ＣＰクライアントとしての処理を実行させるためのレジストリの内容が、事前に非公開のものに書き替えられる。
【００２９】
再び図６を参照する。ステップＳ１００において送信されるＣＰメッセージは、ＣＰクライアントとしての処理を実行させるためのレジストリの内容を書き替えるためのＣＰメッセージである。すなわち、このＣＰメッセージは、「Content Type」の内容として「application/vnd.wap.connectivity-wbxml」が記載されたＷＳＰヘッダと、書き替えの内容が記載されたボディとを含むＳＭＳである。書き替えの内容は、書き替えの対象となるレジストリキーおよび値として「ＣＰ」の「Content Type」を指定する情報、および書き替えの内容として「xxx/yyy.connectivity-wbxml」という文字列を示す情報を含む。
【００３０】
ステップＳ１００のＣＰメッセージを受信すると、携帯電話機１０のＣＰクライアントは、レジストリにおいてレジストリキー「ＣＰ」の値「Content Type」の内容を「xxx/yyy.connectivity-wbxml」に書き替える（ステップＳ１０１）。
【００３１】
図１０は、書き替え後のレジストリの内容を例示する図である。ＣＰサーバ２０（の管理者）がこの書き替えの内容を非公開としていれば、ＣＰサーバ２０以外のサーバは携帯電話機１０に対してＣＰメッセージを送信できなくなる。悪意ある者がサーバ（図示略）を操作して、公開されている仕様どおりに「Content Type」の内容として「application/vnd.wap.connectivity-wbxml」が記載されたＷＳＰヘッダを含むＳＭＳを携帯電話機１０に送ったとしても、ＣＰクライアントはこのＳＭＳをＣＰメッセージとして処理しない。したがって、悪意ある者からの攻撃を防御することができる。こうしてＣＰクライアントの設定を変更した後で、従業員に携帯電話機１０が配布される。
【００３２】
再び図６を参照する。ステップＳ１０２において、ＣＰサーバ２０は、ＣＰメッセージを送信する。このＣＰメッセージは、ＤＭセッション（ＤＭ接続）の設定を書き替えるためのものである。この例で、ＤＭセッションの設定情報はレジストリに記憶されている。
【００３３】
図１１は、ＤＭセッションの設定情報を例示する図である。この例では、レジストリキー「ＤＭ」（第１の識別子の一例）のキー「設定」の値「サーバＵＲＬ」、「サーバ名」、「ＩＤ」および「ｐａｓｓｗｄ」の内容として、「www.aaa.co.jp/server」、「Ａ社サーバ」、「id99」および「pass01」が示されている。「サーバＵＲＬ」は、ＤＭサーバの、ネットワーク４０における所在を示す情報である。この例では、ＤＭサーバ３０のＵＲＬが記載されている。「サーバ名」は、ＤＭサーバの名前を示す。「ＩＤ」は、ＤＭサーバへのログインＩＤを示す。「ｐａｓｓｗｄ」は、ＤＭサーバへのログインパスワードを示す。携帯電話機１０において、ＤＭクライアントは、レジストリに記憶されている設定情報にしたがってサーバとの間でＤＭセッションを確立する。
【００３４】
再び図６を参照する。ステップＳ１０２において送信されるＣＰメッセージは、ＤＭセッションの設定情報を図１１に示されるものに書き替えるためのＣＰメッセージである。すなわち、このＣＰメッセージは、「Content Type」の内容として「xxx/yyy.connectivity-wbxml」が記載されたＷＳＰヘッダを含むＳＭＳである。さらに、このＣＰメッセージは、レジストリの内容を図１１に示されるものに書き替えるための情報が記載されたボディを有する。ＣＰクライアントは、受信したＣＰメッセージに従ってレジストリにおける設定情報を書き替える（ステップＳ１０３）。
【００３５】
ステップＳ１０４において、ＤＭサーバ３０は、ＤＭ通知（ＤＭ  Ｎｏｔｉｆｉｃａｔｉｏｎ）を携帯電話機１０に送信する。ＤＭ通知とは、ＤＭセッションの確立を開始させるためのメッセージである。この例で、ＤＭ通知はＳＭＳとして送信される。ＣＰメッセージと同様、そのＳＭＳがＤＭ通知であることは、ＷＳＰヘッダ内に記載されている「Content Type」の内容により特定される。ＤＭ通知と「Content Type」の内容との対応関係は、ＣＰメッセージと同様、レジストリに記憶されている。
【００３６】
携帯電話機１０がＤＭ通知を受信すると、ＤＭクライアントは、ＤＭセッションを確立するための応答を送信する（ステップＳ１０５）。この応答は、プロトコルとしてＨＴＴＰＳ（Hypertext Transfer Protocol over Secure Socket Layer）を用いて送信される。この応答の送信先は、レジストリを参照して特定される。すなわち、ＤＭクライアントは、図１１に例示されるレジストリからサーバのＵＲＬを読み出し、読み出したＵＲＬにより特定されるサーバ（この例ではＤＭサーバ３０）に対して応答を送信する。この応答を送信および受信すると、ＤＭクライアントとＤＭサーバ３０とは、所定のプロトコルに従ってＤＭセッションを確立する。ＤＭセッションとは、ＤＭの仕様に基づいてＤＭクライアントとＤＭサーバとの間で行われる一連の処理をいう。
【００３７】
ステップＳ１０７において、ＤＭクライアントは、ＤＭサーバ３０からの指示に応じて監視プログラムをダウンロードする。監視プログラムは、レジストリ、特にＤＭセッションの設定情報が書き替えられると、書き替えられた設定を正しい内容（すなわち書き替え前の内容）に修正するための命令群を含む。また、監視プログラムは、正しい設定情報を内部データとして含む。より詳細には、監視プログラムは、以下の処理を行うための命令群を含む。（Ａ−１）ある周期（例えば、毎日９：００と２１：００）でレジストリから設定情報を読み出す。（Ａ−２）読み出した設定情報を、内部データの設定情報と比較する。（Ａ−３）比較により両者に差があれば、レジストリの内容を正しい内容に修正する。
【００３８】
監視プログラムは、さらに、設定情報のログ（履歴）を記録するための命令群を含む。より詳細には、監視プログラムは、以下の処理を行うための命令群を含む。（Ｂ−１）（Ａ−２）の判断の結果を示す情報（例えば、「ＯＫ」、「ＵＲＬ不一致」、「ＵＲＬ削除」、「ＩＤ不一致」、「ｐａｓｓｗｄ不一致」など）を、判断が行われた時刻とともに履歴として記録する。（Ｂ−２）（Ａ−３）により修正が行われた場合、修正の内容を示す情報（例えば、「ＵＲＬ修正」、「ＩＤ修正」、「ｐａｓｓｗｄ修正」、「修復不能」など）を、修正が行われた時刻とともにログとして記録する。この例で、ログは、レジストリに記憶される。レジストリにはあらかじめログを記憶するため一定の領域（例えば、過去ｘ回分の判断結果および修正結果）が割り当てられている。
【００３９】
ステップＳ１０８において、ＤＭクライアントは、ＤＭサーバ３０からの指示に応じて監視プログラムをインストールする。記憶部１０４はアプリケーションプログラムをインストールするためのインストールプログラム（インストーラ）を記憶しており、ＣＰＵ１０１がインストーラを実行することにより、監視プログラムがインストールされる。ＤＭクライアントとインストーラとの間の連携（ソフトウェア間の連携）は、ＯＳまたはソフトウェア連携機能を実現するためのプログラムにより実現される。
【００４０】
監視プログラムがインストールされると、ＤＭクライアントは、監視プログラムを起動する。起動されると、監視プログラムは、レジストリの監視および修正、ならびにログの記録を開始する（ステップＳ１１０）。
【００４１】
図１２は、履歴を例示する図である。この例では、２００９年６月２６日の９：００にチェックしたときにサーバＵＲＬの内容が削除されており、９：０１に修復をしたことが履歴として記録されている。
【００４２】
再び図６を参照する。ＤＭサーバ３０は、決められたスケジュールに従って、または、管理者の操作に応じて、携帯電話機１０に対してログの要求を送信する（ステップＳ１１１）。ログの要求を受けると、ＤＭクライアントは、ＤＭサーバ３０にログを送信する（ステップＳ１１２）。ログを受けると、ＤＭサーバ３０は、ログの内容を確認する（ステップＳ１１３）。この例で、ログの確認は、ＤＭサーバプログラムにより自動的に行われる。ＤＭサーバプログラムには、ログの異常を検出するアルゴリズムが組み込まれている。ログに異常があることを発見した場合（例えば、ログに「修復不能」と記録されていた場合）、ＤＭサーバ３０は、ＣＰサーバ２０に対し、携帯電話機１０の遠隔リセットの要求を送信する（ステップＳ１１４）。この要求は、処理の内容（この例では遠隔リセット）および処理の対象（この例では携帯電話機１０）を特定する情報を含む。
【００４３】
ＤＭサーバ３０から要求を受信すると、ＣＰサーバ２０は、この要求に応じて携帯電話機１０にＣＰメッセージを送信する（ステップＳ１１５）。このＣＰメッセージは、携帯電話機１０の設定をリセットする処理を実行させるためのＣＰメッセージである。このＣＰメッセージを受信すると、ＣＰクライアントは、携帯電話機１０の設定をリセットする（ステップＳ１１６）。リセット処理は、レジストリの内容を初期化する処理、電話帳、メールおよび画像などのデータを消去する処理を含む。
【００４４】
以上で説明したように、本実施形態によれば、ＤＭサーバのＵＲＬを含む設定情報は、監視プログラムにより自律的に修正される。また、ＳＭＳをＣＰメッセージとして処理させる条件を非公開のものに書き替えることにより、ＣＰメッセージを送信できるサーバを（その非公開の条件を知っている者に）制限することができる。すなわち、非公開の条件を知らないサーバから送信されるＳＭＳにより携帯電話機１０のレジストリの内容が書き替えられることを防止することができる。
【００４５】
３．他の実施形態
本発明は上述の実施形態に限定されるものではなく、種々の変形実施が可能である。以下、変形例をいくつか説明する。以下の変形例のうち２つ以上のものが組み合わせて用いられてもよい。
【００４６】
３−１．変形例１
上述の実施形態において、ＳＭＳをＣＰメッセージとして処理するための条件（「Content Type」の内容）を非公開のものに変更することにより、ＣＰメッセージを送信できるサーバを限定する例を説明した。この技術を、ＤＭサーバに対して適用してもよい。すなわち、ＣＰサーバ２０は、ＳＭＳをＤＭ通知と判断する条件を書き替えるためのＣＰメッセージを送信する。このＣＰメッセージを受けると、ＣＰクライアントは、ＳＭＳをＤＭ通知と判断する条件（「Content Type」の内容、第３の識別子の一例）を書き替える。この書き替えがされた以後は、ＣＰメッセージにより書き替えられた条件を知っている者（すなわち、ＣＰサーバ２０と情報共有しているサーバ）しかＤＭ通知を送信できなくなる。換言すると、ＣＰメッセージにより書き替えられた条件を知らない者が不正なＤＭ通知を送信することはできなくなる。
【００４７】
３−２．変形例２
図６のステップＳ１０５における応答や、ステップＳ１１２におけるログは、ＤＭ通知や要求の送信元ではなく、携帯電話機１０のレジストリに記憶されているＤＭサーバのＵＲＬにより特定される装置に送信される。すなわち、例えばＤＭ通知を送信する装置において、ＤＭ通知を送信してから、あるしきい値時間内に応答が返ってこない場合には、携帯電話機１０のレジストリの内容が書き替えられている可能性がある。あるいは、ＤＭ通知を所定の回数送信しても応答が返ってこない場合、携帯電話機１０のレジストリの内容が書き替えられている可能性がある。このような場合、ＤＭサーバ３０は、ＣＰサーバ２０に対して携帯電話機１０の遠隔リセットを要求してもよい。
【００４８】
３−３．変形例３
携帯電話機１０における処理は、必ずしも毎回図６のフローに従って行われる必要はない。例えば、ＳＭＳをＣＰメッセージとして処理する条件が変更され、ＤＭサーバの設定情報が正しく設定された後は、ステップＳ１０４以降の処理だけが行われてもよい。また、監視プログラムが既にインストール済みである場合は、ステップＳ１０７、Ｓ１０８の処理は省略されてもよい。さらに、ログに異常があった場合の処理は、携帯電話機１０の設定をリセットするものに限定されない。ステップＳ１１４〜Ｓ１１６の処理を省略してＤＭサーバ３０からＣＰサーバ２０に要求を送ることはせず、ＤＭサーバ３０の管理者が手動で携帯電話機１０の設定を確認してもよい。また、ＤＭサーバ３０からＣＰサーバ２０に要求を送る場合であっても、処理の内容は携帯電話機１０の設定のリセットに限定されない。携帯電話機１０の音声通信機能やデータ通信機能を無効にする処理や、記憶部１０４に記憶されているデータへのアクセスを禁止する処理、ユーザの操作を受け付けないように携帯電話機１０をロックする処理がリセット処理に代わって実行されてもよい。
【００４９】
３−４．変形例４
携帯電話機１０、ＣＰサーバ２０およびＤＭサーバ３０のハードウェア構成は、実施形態で説明したものに限定されない。実施形態や変形例で説明した機能を実現できるのであれば、どのようなハードウェア構成の装置が用いられてもよい。また、実施形態ではＣＰサーバ２０とＤＭサーバ３０とが物理的に別の装置である例を説明したが、物理的に単一の装置がＣＰサーバ２０としての機能およびＤＭサーバ３０としての機能を有していてもよい。さらに、ソフトウェア間の機能の分担は、実施形態で説明したものに限定されない。実施形態では、ＯＳ、ＣＰクライアント、ＤＭクライアントがそれぞれ機能を分担して処理を実行する例を説明したが、単一のソフトウェアが実施形態で説明したすべての機能を有していてもよい。あるいは、実施形態ではある一つのソフトウェアが有する複数の機能として説明されたものを、複数のソフトウェアが分担して有してもよい。
【００５０】
また、実施形態においては、単一のデータベースであるレジストリが、記憶手段１３および記憶手段１４としての機能を有していたが、記憶手段１３および記憶手段１４の記憶内容は、それぞれ別のデータベースに記憶されてもよい。
【００５１】
３−５．変形例５
携帯電話機１０において使用されるＯＳ、メッセージやセッションのプロトコル等の詳細は、実施形態で説明したものに限定されない。例えば、ＳＭＳに代わり電子メールが用いられてもよい。実施形態においては、設定情報やログなどがレジストリに記憶されたが、レジストリ以外のデータベースに記憶されてもよい。また、データベースのデータ構造も、実施例で説明したツリー構造のものに限定されない。実施形態では、監視プログラムのダウンロード、インストールおよび起動はＤＭセッションを介して（ＤＭサーバおよびＤＭクライアントの機能により）行われたが、これらの処理は手動で行われてもよい。あるいは、監視プログラムは、携帯電話機１０の出荷前にプレインストールされていてもよい。
【符号の説明】
【００５２】
１…通信システム、１０…携帯電話機、１１…通信手段、１２…受信手段、１３…記憶手段、１４…記憶手段、１５…実行手段、１６…取得手段、１７…修正手段、２０…ＣＰサーバ、２１…送信手段、３０…ＤＭサーバ、３１…通信手段、４０…ネットワーク、１０１…ＣＰＵ、１０２…ＲＯＭ、１０３…ＲＡＭ、１０４…記憶部、１０５…操作部、１０６…表示部、１０７…通信部、１０９…バス、２０１…ＣＰＵ、２０２…ＲＯＭ、２０３…ＲＡＭ、２０４…記憶部、２０５…操作部、２０６…表示部、２０７…通信部、２０９…バス、３０１…ＣＰＵ、３０２…ＲＯＭ、３０３…ＲＡＭ、３０４…記憶部、３０５…操作部、３０６…表示部、３０７…通信部、３０９…バス
【図１】
2011035504.tif 000003
【図２】
2011035504.tif 000004
【図３】
2011035504.tif 000005
【図４】
2011035504.tif 000006
【図５】
2011035504.tif 000007
【図６】
2011035504.tif 000008
【図７】
2011035504.tif 000009
【図８】
2011035504.tif 000010
【図９】
2011035504.tif 000011
【図１０】
2011035504.tif 000012
【図１１】
2011035504.tif 000013
【図１２】
2011035504.tif 000014