(57)【要約】【課題】ユーザ情報と位置情報とからアクセスを制御し、アプリケーションの配布、バージョンアップ、バージョンダウン、或いは起動を行なうシステムの提供。【解決手段】クライアント・サーバ型ネットワークシステムであって、前記クライアントは、ユーザ認証手段４０と、クライアントの位置情報を検出する検出手段６０とを備え、前記サーバは、前記クライアントを介してユーザ認証を行なう認証手段４１と、ユーザ情報と前記クライアントの位置情報とを取得する取得手段５０と、前記取得した各情報によりユーザのアクセスを制御する制御手段７０と、前記認証されたユーザにアプリケーションを実行可能な状態で配布する配布手段９０とを備える。【選択図】      図１
2005174124.tif 000002
【特許請求の範囲】
【請求項１】
クライアント・サーバ型ネットワークシステムであって、
前記クライアントは、
ユーザ認証手段と、
クライアントの位置情報を検出する検出手段とを備え、
前記サーバは、
前記クライアントを介してユーザ認証を行なう認証手段と、
ユーザ情報と前記クライアントの位置情報とを取得する取得手段と、
前記取得した各情報によりユーザのアクセスを制御する制御手段と、
前記認証されたユーザにアプリケーションを実行可能な状態で配布する配布手段とを備えることを特徴とするシステム。
【請求項２】
前記アプリケーションの実行形態は、ダウンロード、バージョンアップ、若しくはバージョンダウンを含むことを特徴とする請求項１に記載のシステム。
【請求項３】
前記サーバとクライアントがインターネットを介して代理サーバ経由で通信することを特徴とする請求項１又は２に記載のシステム。
【請求項４】
前記検出手段は、前記クライアントの位置情報をＩＰアドレス又はＧＰＳを用いた現在位置情報を用いて検出することを特徴とする請求項１乃至３のいずれか１項に記載のシステム。
【請求項５】
前記取得手段は、ログアウト処理が実行されるまで前記クライアントに対して位置情報を要求することを特徴とする請求項１乃至４のいずれか１項に記載のシステム。
【請求項６】
前記クライアントは、端末機器の移動を検知する移動検知手段を更に備えることを特徴とする請求項１乃至５のいずれか１項に記載のシステム。
【請求項７】
前記取得手段と制御手段をサーバに代えてクライアントに設けたことを特徴とする請求項１乃至４のいずれか１項に記載のシステム。
【請求項８】
クライアント・サーバ型ネットワークに接続され、
前記クライアントを介してユーザ認証を行なう認証手段と、
ユーザ情報と前記クライアントの位置情報とを前記クライアントに要求して取得する取得手段と、
前記取得した各情報によりユーザのアクセスを制御する制御手段と、
前記認証されたユーザにアプリケーションを実行可能な状態で配布する配布手段とを備えることを特徴とするサーバ。
【請求項９】
クライアント・サーバ型ネットワークに接続され、
ユーザ認証手段と、
前記サーバからの要求に応じて前記クライアントの位置情報を検出し、当該サーバに送信する検出手段とを備えることを特徴とするクライアント。
【請求項１０】
クライアント・サーバ型ネットワークシステムにおける通信方法であって、
前記クライアント側では、
ユーザ認証を行ない、
クライアントの位置情報を検出し、
前記サーバ側では、
前記クライアントを介してユーザ認証を行ない、
ユーザ情報と前記クライアントの位置情報とを取得し、
前記取得した各情報によりユーザのアクセスを制御し、
前記認証されたユーザにアプリケーションを実行可能な状態で配布することを特徴とする通信方法。
【請求項１１】
クライアント・サーバ型ネットワークシステムにおいて、
クライアントとしてのコンピュータに、
ユーザ認証を行なう機能、
クライアントの位置情報を検出する機能を実現させ、
サーバとしてのコンピュータに、
前記クライアントを介してユーザ認証を行なう機能、
ユーザ情報と前記クライアントの位置情報とを取得する機能、
前記取得した各情報によりユーザのアクセスを制御する機能、
前記認証されたユーザにアプリケーションを実行可能な状態で配布する機能を実現させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザ情報と位置情報によってアクセス制御されたアプリケーションのネットワークを介したダウンロード、バージョンアップ、バージョンダウンを可能とするネットワーク技術に関する。
【背景技術】
【０００２】
近年、ウェブサーバやファイルサーバなどから、インターネットやイントラネットを利用してユーザにアプリケーションを提供するシステムが広く普及してきており、ユーザはネットワーク上のサーバからアプリケーションをパーソナルコンピュータ（ＰＣ）にダウンロードし、インストールすることで、ＰＣ上でアプリケーションを実行することが可能になっている。
【０００３】
また、ユーザがＰＣ上にダウンロードし、インストールしたアプリケーションが更新された場合、ユーザは再度ダウンロードし、インストールする必要があるが、その更新情報を監視してアプリケーションが更新されたら、ＰＣ上のアプリケーションを更新する機能を持つアプリケーションも存在する。
【０００４】
そして、ユーザの位置情報を取得する方法として、ＩＰアドレスやドメイン情報によりネットワーク上における接続場所を特定する方法や、Global Positioning System（ＧＰＳ）により取得した地球上での現在位置情報と地図情報との組み合わせから、ユーザのシステム利用場所を特定する方法が広く普及している（例えば、特許文献１参照）。
【特許文献１】特開平１０−５６４４９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来のアプリケーション配布システムにおけるアクセス制御では、１ユーザは１アプリケーションに対して同一権限で制御されていた。しかしながら、同一ユーザ、同一アプリケーションであっても、例えばアプリケーション自体に機密性の高い要素が含まれる場合には社外での利用を制限する必要があるなど、システムの利用場所に応じてアクセス権を変更しなければならない場合がある。
【０００６】
本発明は、このような課題を解決するためになされたものであって、ユーザ情報と位置情報とからアクセスを制御し、アプリケーションの配布、バージョンアップ、バージョンダウン、或いは起動を行なうシステムの提供を目的としている。
【課題を解決するための手段】
【０００７】
上述の課題を解決し、目的を達成するために、本発明に係るネットワークシステムは、クライアント・サーバ型ネットワークシステムであって、前記クライアントは、ユーザ認証手段と、クライアントの位置情報を検出する検出手段とを備え、前記サーバは、前記クライアントを介してユーザ認証を行なう認証手段と、ユーザ情報と前記クライアントの位置情報とを取得する取得手段と、前記取得した各情報によりユーザのアクセスを制御する制御手段と、前記認証されたユーザにアプリケーションを実行可能な状態で配布する配布手段とを備える。
【０００８】
また、上記システムにおいて、前記アプリケーションの実行形態は、ダウンロード、バージョンアップ、若しくはバージョンダウンを含む。
【０００９】
また、上記システムにおいて、前記サーバとクライアントがインターネットを介して代理サーバ経由で通信する。
【００１０】
また、上記システムにおいて、前記検出手段は、前記クライアントの位置情報をＩＰアドレス又はＧＰＳを用いた現在位置情報を用いて検出する。
【００１１】
また、上記システムにおいて、前記取得手段は、ログアウト処理が実行されるまで前記クライアントに対して位置情報を要求する。
【００１２】
また、上記システムにおいて、前記クライアントは、端末機器の移動を検知する移動検知手段を更に備える。
【００１３】
また、上記システムにおいて、前記取得手段と制御手段をサーバに代えてクライアントに設けた。
【００１４】
また、本発明のサーバは、クライアント・サーバ型ネットワークに接続され、前記クライアントを介してユーザ認証を行なう認証手段と、ユーザ情報と前記クライアントの位置情報とを前記クライアントに要求して取得する取得手段と、前記取得した各情報によりユーザのアクセスを制御する制御手段と、前記認証されたユーザにアプリケーションを実行可能な状態で配布する配布手段とを備える。
【００１５】
また、本発明のクライアントは、クライアント・サーバ型ネットワークに接続され、
ユーザ認証手段と、前記サーバからの要求に応じて前記クライアントの位置情報を検出し、当該サーバに送信する検出手段とを備える。
【００１６】
また、本発明の通信方法は、クライアント・サーバ型ネットワークシステムにおける通信方法であって、前記クライアント側では、ユーザ認証を行ない、クライアントの位置情報を検出し、前記サーバ側では、前記クライアントを介してユーザ認証を行ない、ユーザ情報と前記クライアントの位置情報とを取得し、前記取得した各情報によりユーザのアクセスを制御し、前記認証されたユーザにアプリケーションを実行可能な状態で配布する。  なお、本発明は、上記通信方法を記録装置のコンピュータに実行させるためのプログラムや当該プログラムを格納するコンピュータ読み取り可能な記録媒体としても適用可能である。
【発明の効果】
【００１７】
以上説明したように、本発明によれば、ネットワークを介したアプリケーションのダウンロード、バージョンアップ（更新）、バージョンダウンなどを実行する際に、ユーザ情報と位置情報とを用いてアクセス権を設定することによりアクセス制御を実行することで、同一ユーザの同一アプリケーションに対するアクセス権であっても、利用している端末の位置に応じてアクセスを制御することができる。
【００１８】
また、アプリケーション実行中の端末位置を検出することで、携帯端末機器で利用する場合などにおいて、ユーザが移動した場合でもアクセスを制御することができる。
【発明を実施するための最良の形態】
【００１９】
以下に、本発明に係る実施の形態について添付図面を参照して詳細に説明する。
【００２０】
尚、以下に説明する実施の形態は、本発明の実現手段としての一例であり、本発明は、その趣旨を逸脱しない範囲で下記実施形態を修正又は変形したものに適用可能である。
【００２１】
図１は本発明の代表的な実施形態としてのネットワークシステム構成図である。
【００２２】
図１において、１０はネットワーク２０を介してアプリケーション管理クライアント３０にアプリケーションを配布するアプリケーション管理サーバである。
【００２３】
図１中の認証手段４０は、ユーザがアプリケーション管理クライアント３０を起動したときに認証情報２００が存在しているかを確認し、存在していない場合はアプリケーション管理サーバ１０にアクセスしてユーザ認証を行なう機能を有する。認証手段４１は、アプリケーション管理サーバ１０が認証サーバ１１にアクセスすると起動し、アプリケーション管理クライアント３０にログインフォーム２１０を送信する。ログインフォーム２１０が表示デバイス１２０上に表示されると、ユーザは入力デバイス１３０を用いてUser IDとPasswordを入力し、認証サーバ１１に送信する。認証手段４１は、送信されたUser IDとPasswordの整合性をユーザリスト２２０の情報を元に確認する機能を有する。
【００２４】
図１中の位置情報取得手段５０は、アプリケーション管理クライアント３０に位置情報を要求すると、アプリケーション管理クライアント３０の位置情報検出手段６０が位置情報２３０を検出し、アプリケーション管理クライアント３０から送信された位置情報２３０を取得する機能を有する。
【００２５】
図１中のアクセス権制御手段７０は、認証サーバ１１から送信されたUser IDのアプリケーションに対するアクセス権をアクセス制御リスト２４０から抽出し、アプリケーションへのアクセスを制御する機能を有する。
【００２６】
図１中のアプリケーションリスト生成手段８０は、アプリケーション管理サーバ１０にアクセスしているユーザが利用可能なアプリケーションをアプリケーション情報ファイル２５０から抽出し、リスト作成する機能を持つ。
【００２７】
図１中の配布手段９０は、アプリケーション情報管理手段１００を起動し、アプリケーション情報ファイル２５０から起動に必要な実行ファイルセット２６０の情報を抽出し、抽出された実行ファイルセット２６０をアプリケーション管理クライアント３０に送信する機能を有する。
【００２８】
図１中の起動手段１１０は、ダウンロードされた実行ファイルセット２６０を実行する手段である。
［ダウンロード］
ここで、ユーザはアプリケーションのダウンロードを行なうために、アプリケーション管理クライアント３０を起動する。アプリケーション管理クライアント３０は認証手段４０を起動し、認証情報２００が存在するかを確認する。存在しない場合は、アプリケーション管理サーバ１０にアクセスし、認証を要求する。認証を要求されたアプリケーション管理サーバ１０は認証サーバ１１にアクセスする。認証サーバ１１は認証手段４１を起動し、認証処理を実行する。認証が終了したら、ユーザのUser IDをアプリケーション管理サーバ１０に送信する。アプリケーション管理サーバ１０は位置情報取得手段５０を起動し、アプリケーション管理クライアント３０に位置情報を要求する。アプリケーション管理クライアント３０は、位置情報検出手段６０を起動して位置情報２３０を検出し、検出された位置情報２３０をアプリケーション管理サーバ１０に送信する。アプリケーション管理サーバ１０はアクセス権制御手段７０を起動し、認証情報２００と位置情報２３０とからユーザが利用可能なアプリケーションを抽出する。アプリケーションリスト生成手段８０は、抽出されたアプリケーションのリストを生成し、アプリケーション管理クライアント３０に送信する。アプリケーション管理クライアント３０は表示デバイス１２０上にアプリケーションリストを表示し、ユーザはダウンロードするアプリケーションを選択する。アプリケーション管理サーバ１０は配布手段９０を起動する。配布手段９０はアプリケーション情報管理手段１００を起動し、アプリケーション情報ファイル２５０から実行に必要な実行ファイルの情報を抽出し、抽出された情報から実行ファイル２６０を特定してアプリケーション管理クライアント３０に実行ファイル２６０を送信する。アプリケーション管理クライアント３０は送信された実行ファイルセット２６０をユーザのローカルディスク上に保存する。
【００２９】
以上の処理により、ユーザは現在の利用場所で利用可能なアプリケーションをダウンロードすることができる。
［バージョンアップ（更新）］
次に、ユーザがアプリケーションの更新要求を行なった場合の処理を説明する。
【００３０】
ユーザはアプリケーション管理クライアント３０が表示するアプリケーションリストから更新したいアプリケーションを選択し、更新を要求する。アプリケーション管理クライアント３０がアプリケーション管理サーバ１０に選択されたアプリケーションのIDと保存されているアプリケーションのバージョン番号等の情報を送信すると、アプリケーション管理サーバ１０は位置情報取得手段５０を起動し、アプリケーション管理クライアント３０に位置情報を要求する。アプリケーション管理クライアント３０は位置情報検出手段６０を起動し、位置情報２３０をアプリケーション管理サーバ１０に送信する。アプリケーション管理サーバ１０はアプリケーション情報管理手段１００を起動し、認証情報２００と取得した位置情報２３０から利用可能でかつ最新バージョン番号を抽出し、アプリケーション管理クライアント３０から送信されたバージョン番号と比較する。ここで更新されている場合は、最新バージョン番号をアプリケーション管理クライアント３０に送信し、アプリケーション管理クライアント３０はダウンロードを要求する。
【００３１】
以上の処理により、現在位置で利用可能であればアプリケーションの更新を行なうことができる。また、ユーザがアプリケーションの起動を要求したときも同様に現在位置を確認し、アプリケーションの更新を行なってからアプリケーションを起動する。
［バージョンダウン］
次に、アプリケーションのバージョンを戻すバージョンダウン処理を説明する。
【００３２】
ユーザはアプリケーション管理クライアント３０が表示するアプリケーションリストからバージョンダウンしたいアプリケーションを選択し、バージョンダウンメニューからバージョンダウンを要求すると、戻したいバージョン番号を入力するためのウインドウを表示し、バージョン番号の入力を促す。入力されたバージョン番号をアプリケーション管理サーバ１０に送信してダウンロードを要求する。その後の処理はアプリケーションのダウンロードと同様である。これにより、ユーザが要求したアプリケーションのバージョンが現在位置で利用可能であれば、要求されたバージョンに戻すことができる。
【実施例１】
【００３３】
以下、本発明の実施例について添付図面を参照して詳細に説明する。
【００３４】
図１において、ネットワーク２０は、TCP/IPを通信プロトコルとするイントラネットであると仮定する。また、アプリケーション管理サーバ１０は、TCP/IP上でアプリケーション管理クライアント３０及び認証サーバ１１との通信機能を持つと仮定する。
【００３５】
アプリケーション情報ファイル２５０、アクセス制御リスト２４０は、図２，３に例示するように、XML形式で記述されているものとする。また、各アプリケーションのバージョン情報は図２のようにツリー（木）構造で表現された親子兄弟関係で管理されているものとする。
【００３６】
ユーザリスト２２０には、図４のようにユーザ名とパスワードが登録されているものとする。
【００３７】
ここで、ユーザがアプリケーションをダウンロードするまでの処理の流れを、図５〜１１を用いて具体的に説明する。
[STEP1-1]
ユーザがアプリケーション管理クライアント３０を起動する。
[STEP1-2]
アプリケーション管理クライアント３０は認証手段４０を起動し、認証手段４０は、図６に示す処理を実行する。
[STEP1-2-0,1-2-1]
認証手段４０は認証情報２００が存在するか確認し、存在する場合は図５のSTEP1-3に進み、存在しない場合はSTEP1-2-2に進む。
【００３８】
ここでは、認証情報２００は存在しないものとしてSTEP1-2-2に処理を進める。
[STEP1-2-2]
アプリケーション管理サーバ１０にアクセスする。
[STEP1-2-3]
アプリケーション管理サーバ１０は認証サーバ１１にアクセスする。
[STEP1-2-4]
認証サーバ１１はログインフォーム２１０をアプリケーション管理クライアント３０に送信する。
[STEP1-2-5]
アプリケーション管理クライアント３０はログインフォーム２１０を表示デバイス１２０上に表示する。
【００３９】
ここで、ログインフォーム２１０は、例えば図１２に示す構成で表示されているものとする。
[STEP1-2-6]
ユーザはログインフォーム２１０中のテキスト入力部にUser IDとPasswordを入力し、送信ボタンを選択し、入力したデータを認証サーバ１１に送信する。
【００４０】
ここで、ユーザは以下のデータを入力したものとする。
{User ID, Password} = {yoshida, japan}
[STEP1-2-7]
認証サーバ１１は、ユーザリスト２２０からUser IDと一致するIDを持つレコードを抽出する。
[STEP1-2-8]
User IDと一致するIDを持つデータが存在するならばSTEP1-2-9に進み、存在しないならば、エラーメッセージをアプリケーション管理クライアント３０に送信し、処理を終了する。
【００４１】
ここでは、以下のデータが取得できたものとする。
{User ID, Password} = {yoshida, japan}
[STEP1-2-9,1-2-10,1-2-11]
STEP1-2-6で送信されたデータとSTEP1-2-8で取得したデータを比較し、User IDとPasswordが一致するかを確認する。一致しないならば、エラーメッセージをアプリケーション管理サーバ１０に送信し、処理を終了する。一致するならば、User IDをアプリケーション管理サーバ１０に送信し、STEP1-3に処理を進める。
【００４２】
今、User IDとPasswordが一致しているので、User IDをアプリケーション管理サーバ10に送信し、STEP1-3に処理を進める。
[STEP1-3]
アプリケーション管理サーバ１０は、位置情報取得手段５０を起動する。
[STEP1-3-1]
起動された位置情報取得手段５０は、アプリケーション管理クライアント３０に位置情報を要求する。
[STEP1-3-2]
アプリケーション管理クライアント３０は位置情報検出手段６０を起動する。起動された位置情報検出手段６０は、現在位置を取得し、アプリケーション管理サーバに取得した現在の位置情報２３０を送信する。
【００４３】
ここでは、アプリケーション管理クライアント３０の利用端末は、以下のIPアドレスでイントラネット２０に接続されているものとする。
IP Address = 192.168.0.11
この検出されたIPアドレスをアプリケーション管理サーバ１０に送信する。
[STEP1-4]
アプリケーション管理サーバ１０はアクセス権制御手段７０を起動する。
[STEP1-4-1,1-4-2]
起動されたアクセス権制御手段７０は、アクセス制御リスト２４０からUser IDが含まれるアプリケーションIDを抽出する。ここで、User IDが含まれるアプリケーションIDが抽出できなければ、エラーメッセージをアプリケーション管理クライアント３０に送信して処理を終了し、存在するならば処理をSTEP1-4-3に進める。
【００４４】
ここでは、以下のアプリケーションIDが取得できたものとする。
Application ID = {1, 3}
これは、User IDを持つユーザがアプリケーションID1とID3のアプリケーションがダウンロード可能であることを示す。
[STEP1-4-4]
アクセス権制御手段７０はSTEP1-4-1で取得したアプリケーションIDにアクセス可能な位置情報２３１を抽出し、STEP1-3-2で送信された位置情報２３０が抽出された位置情報２３１に属しているかを確認する。位置情報２３０が位置情報２３１に属しているならばSTEP1-5に処理を進め，そうでないならばエラーメッセージをアプリケーション管理クライアントに送信し、処理を終了する。
【００４５】
ここで、アクセス制御リストからは、以下の情報レコードが取得できたものとする。
{1, 192.168.255.255}
{1, 172.16.10.10}
{3, 192.168.255.255}
上記の情報レコードは{Application ID, IP Address}の形式で記述されている。今、アプリケーションID1のアプリケーションは端末がIPアドレス192.168.0.0から192.168.254.254の範囲に属しているIPアドレスで接続している場合、また172.16.10.10のIPアドレスで接続している場合にダウンロード可能であり、アプリケーションID3のアプリケーションは端末がIPアドレスの192.168.0.0から192.168.254.254に含まれるIPアドレスで接続されている場合にダウンロード可能であることを示している。ここで、端末が接続しているIPアドレスは192.168.0.11なので、アプリケーションID1,3のアプリケーションはダウンロード可能であることが確認できる。
[STEP1-5]
アプリケーション管理サーバ１０は、アプリケーションリスト生成手段８０を起動する。起動されたアプリケーションリスト生成手段８０は次の処理を実行する。
[STEP1-5-1,1-5-2]
アプリケーション情報ファイル２５０から、STEP1-4で取得したダウンロード可能なアプリケーションIDと一致するアプリケーション情報を取得する。ダウンロード可能なアプリケーションIDが存在しない場合は、エラーメッセージをアプリケーション管理クライアント３０に送信し、処理を終了する。
[STEP1-5-3]
STEP1-5-1で取得した情報からアプリケーションリストを生成し、アプリケーション管理クライアント３０に送信する。
[STEP1-6]
アプリケーション管理クライアント３０はSTEP1-5-3で送信されたアプリケーションリストを表示デバイス１２０上に表示する。
【００４６】
ここでは、表示デバイス１２０上には、例えば図１３に示すウインドウが表示されている。
[STEP1-7]
ユーザは入力デバイス１３０を用いて、表示されているアプリケーションリストからダウンロードしたいアプリケーションを選択し、ダウンロードを要求する。
【００４７】
ここで、ユーザはアプリケーションIDが1のアプリケーションを選択したものとする。
[STEP1-8]
アプリケーション管理クライアント３０は選択されたアプリケーションのアプリケーションIDをアプリケーション管理サーバ１０に送信する。
【００４８】
ここでアプリケーション管理クライアント３０はアプリケーションID=1をアプリケーション管理クライアントサーバ１０に送信したものとする。
[STEP1-9]
アプリケーション管理サーバ１０は配布手段９０を起動し、配布手段９０は次の処理を実行する。
[STEP1-9-1]
アプリケーション情報管理手段１００を起動し、アプリケーション情報ファイル２５０から、STEP1-8で送信されたアプリケーションIDを持つアプリケーションの実行に必要な実行ファイルセット２６０を特定する。今、STEP1-8ではアプリケーションID=1が送信されたため、以下のデータが抽出されたものとする。
＜fileset＞
＜file path="/applications/archive/appilcation1_1.0.1.jar"/＞
＜file path="/applications/lib/lib1.jar"/＞
＜file path="/applications/lib/lib2.jar"/＞
＜/fileset＞
これは、アプリケーションID1のアプリケーションが実行するのに必要なファイルは、"/applications/archive/"ディレクトリに置かれている"appilcation1_1.0.1.jar"と、"/applications/lib/"ディレクトリに置かれている"lib1.jar"、"lib2.jar"であることを表している。
[STEP1-9-2]
STEP1-9-1で特定した実行ファイルセット２６０をアプリケーション管理クライアント３０に送信する。
[STEP1-10]
アプリケーション管理クライアント３０は、STEP1-9-2で送信された実行ファイルセット２６０をアプリケーション保存ディレクトリに保存する。
【００４９】
ここで、以下の場所にファイルを保存したものとする。
C:\applications\application1\1.0.1\
ここまでが、ユーザがアプリケーション管理クライアント３０を起動してから、利用したいアプリケーションをダウンロードするまでの処理の流れである。
【００５０】
次に、アプリケーションを更新する処理の流れを、図１４，１５を用いて具体的に示す。ここでは、STEP1-1から1-2までの処理が終了しているものとする。
[STEP2-1]
ユーザがアプリケーションを選択し、更新を要求する。
【００５１】
ここでは、アプリケーション管理クライアント３０が図１６に例示するウインドウで表示されているものとする。また、メニューには図１７に示す項目が含まれているものとする。
【００５２】
ここで、ユーザはアプリケーションリストから更新したいアプリケーションを選択し、メニューの更新項目を選択する。
[STEP2-2]
アプリケーション管理クライアント３０は、アプリケーション管理サーバ１０にSTEP2-1でユーザが選択したアプリケーションのアプリケーションIDと、現在アプリケーション保存ディレクトリに保存されているアプリケーションのバージョン番号を送信し、更新情報を要求する。
【００５３】
ここで、アプリケーション保存ディレクトリに保存されているバージョン番号は1.0.1であるので、アプリケーションID=1、バージョン番号=1.0.1をアプリケーション管理サーバ10に送信する。
[STEP2-3]
STEP1-3の処理を実行する。
[STEP2-4]
アプリケーション管理サーバ１０は、アクセス権制御手段７０を起動する。
【００５４】
アクセス権制御手段７０は、アクセス制御リスト２４０からSTEP2-2で送信されたアプリケーションIDにアクセス可能な位置情報を抽出し、STEP2-3で取得した位置情報２３０が抽出した位置情報２３１に属しているかを確認する。位置情報２３０が位置情報２３１に属しているならば、STEP2-5に処理を進める。そうでないならば、エラーメッセージをアプリケーション管理クライアント３０に送信し、処理を終了する。
[STEP2-5]
アプリケーション管理サーバ１０はアプリケーション情報管理手段１００を起動し、起動されたアプリケーション情報管理手段１００は次の処理を実行する。
[STEP2-5-1]
送信されたアプリケーションIDと一致するIDを持つアプリケーション情報をアプリケーション情報ファイル２５０から抽出し、最新バージョン番号を取得する。
【００５５】
ここでは、以下のバージョン番号が取得できたものとする。
Version = 1.0.2
[STEP2-5-2〜2-5-5]
STEP2-5-1で取得したバージョン番号とSTEP2-2でアプリケーション管理クライアント３０から送信されたバージョン番号を比較する。STEP2-5-1で取得されたバージョン番号の方が新しい場合は、STEP2-5-1で取得したバージョン番号をアプリケーション管理クライアント３０に送信する。そうでない場合は、STEP2-2でアプリケーション管理クライアント３０から送信されたバージョン番号をアプリケーション管理クライアント３０に送信する。
【００５６】
ここで、STEP2-5-1で取得したバージョン番号とSTEP2-2でアプリケーション管理クライアント３０から送信されたバージョン番号とをアプリケーション情報ファイル２５０に記載されているツリー構造から検証すると、STEP2-2で送信されたバージョン番号はversion = 1.0.1、STEP2-5-1で取得したバージョン番号はversion = 1.0.2であり、STEP2-5-1で取得したバージョン番号の方が新しいため、STE2-5-1で取得したバージョン番号をアプリケーション管理クライアント３０に送信する。
[STEP2-6,2-7]
アプリケーション管理クライアント３０は、STEP2-5-2で送信されたバージョン番号とSTEP2-2で送信したバージョン番号を比較し、一致するならばSTEP2-7以降の処理を終了する。異なるならばSTEP2-8に処理を進める。
【００５７】
ここでは、送信したバージョン番号と異なるため、STEP2-8に処理を進める。
[STEP2-8]
アプリケーション管理クライアント３０は、アプリケーションIDとSTEP2-6で取得したバージョン番号をアプリケーション管理サーバ１０に送信し、ダウンロードを要求する。[STEP2-9]
STEP1-8から1-10までと同様の処理を行なう。
【００５８】
ここまでが、ユーザのアプリケーション更新要求からアプリケーションが更新されるまでの処理の流れである。
【００５９】
次に、ユーザが明示的にアプリケーションの更新を要求するのではなく、アプリケーションの起動を要求した際に、更新状況を確認し、更新、起動するまでの処理の流れを、図１８を用いて具体的に説明する。ここでもSTEP1-1,1-2までの処理が終了しているものとする。
[STEP3-1]
ユーザがアプリケーションを選択し、起動を要求する。
【００６０】
ここで、ユーザはアプリケーションID=1のアプリケーションを選択したものとする。
[STEP3-2]
以下、STEP2-2から2-8までと同様の処理を行なう。
[STEP3-3]
アプリケーション管理クライアント３０は起動手段１１０を起動し、起動手段１１０はSTEP3-2で更新した実行ファイルセット２６０を実行する。
【００６１】
この処理によって、ユーザがアプリケーションの更新を意識することなく、アプリケーションの更新を行なうことができる。
【００６２】
次に、アプリケーションのバージョンを以前のバージョンに戻す処理の流れを、図１９を用いて具体的に説明する。ここでもSTEP1-1から1-2までの処理が終了しているものとする。
[STEP4-1]
ユーザがアプリケーションを選択し、バージョンダウンを要求する。
【００６３】
ここでは、アプリケーション管理クライアント３０は図１６に例示するようなウインドウで表示されているものとする。また、メニューには図１７に示す項目が含まれているものとする。
【００６４】
ここで、ユーザはアプリケーションリストからバージョンダウンしたいアプリケーションを選択し、メニューのバージョンダウン項目を選択する。
[STEP4-2]
アプリケーション管理クライアント３０は、バージョン入力ウインドウを表示デバイス１２０上に表示する。ここで、バージョン入力ウインドウとしては、例えば、図２０のような表示がされるものとする。
[STEP4-3]
ユーザは、バージョン入力ウインドウのテキスト入力部にバージョン番号を入力し、送信ボタンを選択する。
[STEP4-4]
STEP2-3,2-4と同様の処理を行なう。
[STEP4-5]
STEP1-9,1-10と同様の処理を行なう。
【００６５】
以上の処理により、ユーザが要求するバージョンにアプリケーションを戻すことができる。
【００６６】
なお、本実施例においては位置情報をIPアドレスとしたが、ＧＰＳを用いて算出された地球上での現在位置と、アクセス可能範囲を地図上のエリアで決定した地図情報からアクセス制御を行なうことも可能である。
【００６７】
また、アプリケーションだけでなく、バージョン管理された電子データ等でも、本発明を適用して位置情報によるアクセス制御されたダウンロード、バージョンアップ、バージョンダウンが実施可能である。
【実施例２】
【００６８】
実施例２が上記実施例１と異なるのは、クライアント端末４１１，４１２がアプリケーション管理サーバ１０と同一イントラネット２０内に接続されているのではなく、図２１のようにイントラネット２１，２２に接続され、プロキシサーバ４０１，４０２を介してインターネット３００に接続されている点である。また、アプリケーション管理サーバ１０はイントラネット２０に接続し、プロキシサーバ４００を介してインターネット３００に接続されている。
【００６９】
図２１において、プロキシサーバ４００〜４０２は、TCP/IPを通信プロトコルとするインターネット３００に接続していると仮定する。プロキシサーバ４００〜４０２はそれぞれグローバルIPアドレス172.16.0.10, 172.16.10.10, 172.16.20.10を持ち、TCP/IPを通信プロトコルとするイントラネット20, 21, 22に各々接続しているとする。また、クライアント端末４１０〜４１２はそれぞれアプリケーション管理クライアント３０〜３２を装備し、各々イントラネット２０〜２２に接続され、その接続されたイントラネット内で管理されているプライベートIPアドレスを持つものとする。そして、アプリケーション管理サーバ１０はイントラネット２０に接続されていると仮定する。
【００７０】
この場合の処理の流れを、図２２を用いて具体的に説明する。
[STEP5-1]
ユーザがクライアント端末４１１のアプリケーション管理クライアント３１を起動する。
[STEP5-2]
STEP1-2までの処理と同様である。
[STEP5-3]
アプリケーション管理サーバ１０は位置情報取得手段５０を起動する。
[STEP5-4]
位置情報取得手段５０は、プロキシサーバ４０１の位置情報２３２を取得する。
【００７１】
ここで、STEP5-2で送信された認証要求はプロキシサーバ４０１を経由している。このため、認証要求のヘッダ情報におけるリクエスト元のIPアドレスはプロキシサーバ４０１のIPアドレスとなっている。よって、このヘッダ情報のIPアドレスからプロキシサーバ４０１の位置情報２３２を取得できる。
【００７２】
ここでは、以下のIPアドレスが取得できたものとする。
172.16.10.10
[STEP5-5]
STEP1-4以降の処理と同様である。
【００７３】
以上の処理の流れにより、プロキシサーバを介してインターネット接続されたネットワーク環境であっても、位置情報によるアクセス制御が可能となる。
【実施例３】
【００７４】
実施例３が上記実施例と異なるのは、位置情報取得手段５１とアクセス権制御手段７１がアプリケーション管理クライアント３３に存在する点である。本実施例の代表的なシステム構成図を図２３に示す。また、本実施例における更新を伴うアプリケーション起動処理の例を、図２４を用いて具体的に説明する。
【００７５】
ここで、STEP1-2のユーザ認証処理が終了し、User IDがアプリケーション管理クライアントに送信されているものとする。また、アクセス権制御リスト２４１は図３のように記述されているものとする。
[STEP6-1]
STEP3-1と同様の処理を行なう。
[STEP6-2]
STEP2-2と同様の処理を行なう。
[STEP6-3]
アプリケーション管理クライアント３３は位置情報検出手段６１を起動し、位置情報２３３を検出する。位置情報２３３の検出処理については、STEP1-3-2と同様の処理を行なう。
[STEP6-4,6-5]
アプリケーション管理クライアント３３はアクセス制御手段７１を起動し、User IDとSTEP6-3で取得した位置情報２３３、STEP6-2で取得したアプリケーションIDからアプリケーションIDを持つアプリケーションが現ユーザ、現在位置で利用可能かを確認する。利用可能であれば、STEP6-6に処理を進め、利用可能でなければ、エラーメッセージを表示デバイス上に表示して処理を終了する。
【００７６】
ここでは、User IDは1であり、位置情報２３３であるIPアドレスは"192.168.0.10"である。また、アプリケーションIDは1である。
【００７７】
ここで、アクセス制御リスト２４１から、アプリケーションIDのデータを抽出すると、アクセス可能なユーザにUser ID = 1 が含まれており、アクセス可能な位置にIP Address = 192.168.0.10が含まれている。従って、現在アプリケーションID1のアプリケーションにはアクセス可能であるため、STEP6-6に処理を進める。
[STEP6-6]
STEP2-5,2-6と同様の処理を行なう。
[STEP6-7]
STEP3-3と同様の処理を行なう。
【００７８】
以上の処理により、アクセス制御手段がアプリケーション管理クライアントに存在する場合の処理が実施できる。
【実施例４】
【００７９】
実施例４が上記実施例と異なる点は、アプリケーション管理クライアントの起動後、アプリケーション実行中も位置情報を取得し、その取得した位置に応じたアクセス制御を行なう点である。
【００８０】
以下に、本実施例の処理の流れを、図２５を参照して詳細に説明する。
【００８１】
ここで、位置情報取得手段５１は常駐性を持ち、アプリケーション管理クライアントからログアウト処理が要求されるまで、一定時間ごとに位置情報取得処理を行なうものとする。STEP1-3においてアプリケーション管理サーバは常駐している位置情報取得手段５１にアクセスし、処理を行なうものとする。また、アプリケーションのダウンロード、更新、更新状況を確認しての起動の処理は実施例１と同様の処理を実施し、本実施例では既にアプリケーションが起動しており、アプリケーションの起動から１０分が経過したものを仮定する。
【００８２】
以下のSTEP7-1での処理を行なう前に以下のSTEP7-0-1〜7-0-3を実行する。
[STEP7-0-1]
一定時間間隔で処理を実行するための設定を行なう。
[STEP7-0-2]
位置情報取得手段51に位置情報を確認する時間間隔Tを設定する。ここでは、１０分(T=600[sec])を設定したものとする。
[STEP7-0-3]
位置情報取得手段51は、起動時に時間カウンタを初期化し、時間のカウントを開始する。
[STEP7-1,7-2]
位置情報取得手段５１は時間カウンタを確認し、時間間隔Tが経過したかを確認する。ここで、予め設定した１０分間が経過しているため、処理をSTEP7-3に進める。
[STEP7-3]
位置情報取得手段５１はアプリケーション管理クライアント30に位置情報を要求する。
[STEP7-4]
STEP1-3-2と同様の処理を実施する。
[STEP7-5]
位置情報取得手段５１は時間カウンタを初期化して、STEP7-1に処理を戻す。
【００８３】
以上の処理により、実施例４が実施できる。本実施例では、位置情報取得処理を予め設定している時刻ごとに行なったが、端末機器の移動を検知して位置情報取得処理を実行しても実施できる。
【実施例５】
【００８４】
実施例５が上記実施例と異なる点は、定期的な位置情報の取得をアプリケーション管理サーバ１０が行なうのではなく、アプリケーション管理クライアント３０が行なう点である。以下に、本実施例の処理の流れを、図２６を参照して詳細に説明する。
【００８５】
ここで、アプリケーションのダウンロード、更新、更新状況を確認しての起動処理は実施例１と同様の処理を実行し、本実施例では既にアプリケーションが起動しており、アプリケーションの起動から１０分が経過したものと仮定する。また、本実施例では、設定時間Tを１０分(T=600[sec])と設定したものと仮定する。
[STEP8-1]
アプリケーション管理クライアント３０は移動検知手段１４０を起動する。
[STEP8-2〜8-4]
移動検知手段１４０は、時間カウンタcountを初期化し、設定時間Tが経過することを確認する。時間カウンタcountが設定時間Tを超えた時、STEP8-5に処理を進める。
[STEP8-5]
移動検知手段１４０は、位置情報検出手段６０を起動し、位置情報を取得する。
[STEP8-6]
移動検知手段１４０はSTEP8-5で取得した位置情報をアプリケーション管理サーバ１０に送信する。
[STEP8-7]
STEP1-4の処理を実施する。
[STEP8-8]
移動検知手段１４０は時間カウンタcountを初期化し、STEP8-1に処理を戻す。
【００８６】
以上の処理により、アプリケーション管理クライアントが端末の移動を検知し、その位置に応じたアクセス制御を行なうことができる。
【００８７】
なお、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記憶媒体（または記録媒体）を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはCPUやMPU）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００８８】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【００８９】
本発明を上記記憶媒体に適用する場合、その記憶媒体には、先に説明したフローチャートに対応するプログラムコード及び各種テーブルが格納されることになる。
【図面の簡単な説明】
【００９０】
【図１】本発明に係る実施形態のシステム構成図である。
【図２】アプリケーション情報ファイルの例を示す図である。
【図３】アクセス制御リストの例を示す図である。
【図４】ユーザリストの例を示す図である。
【図５】アプリケーションダウンロードの処理のフローチャートである。
【図６】認証手段の処理のフローチャートである。
【図７】認証手段の処理のフローチャートである。
【図８】位置情報取得手段の処理にフローチャートである。
【図９】アクセス権制御手段の処理のフローチャートである。
【図１０】アプリケーションリスト生成手段の処理のフローチャートである。
【図１１】配布手段の処理のフローチャートである。
【図１２】ログインフォームの表示画面を例示する図である。
【図１３】ダウンロードアプリケーションリストのイメージ図である。
【図１４】アプリケーション更新の処理のフローチャートである。
【図１５】アプリケーション情報管理手段の処理のフローチャートである。
【図１６】アプリケーション管理クライアントの表示画面を例示する図である。
【図１７】アプリケーション管理クライアントのメニュー画面を例示する図である。
【図１８】更新を伴うアプリケーション起動の処理のフローチャートである。
【図１９】アプリケーションバージョンダウンの処理のフローチャートである。
【図２０】バージョン入力ウインドウの表示画面を例示する図である。
【図２１】実施例２におけるシステム構成図である。
【図２２】実施例２における処理のフローチャートである。
【図２３】実施例３におけるシステム構成図である。
【図２４】実施例３における処理のフローチャートである。
【図２５】実施例４における処理のフローチャートである。
【図２６】実施例５における処理のフローチャートである。
【符号の説明】
【００９１】
１０  アプリケーション管理サーバ
１１  認証サーバ
２０〜２２  イントラネット
３０〜３３  アプリケーション管理クライアント
４０，４１  認証手段
５０，５１  位置情報取得手段
６０，６１  位置情報検出手段
７０，７１  アクセス権制御手段
８０  アプリケーションリスト生成手段
９０  配布手段
１００  アプリケーション情報管理手段
１１０  起動手段
１２０  表示デバイス
１３０  入力デバイス
１４０  移動検知手段
２００  認証情報
２１０  ログインフォーム
２２０  ユーザリスト
２３０，２３３  位置情報
２４０，２４１  アクセス制御リスト
２５０  アプリケーション情報ファイル
２６０  実行ファイルセット
３００  インターネット
４００〜４０２  プロキシサーバ
４１０〜４１２  クライアント端末
【図１】
2005174124.tif 000003
【図２】
2005174124.tif 000004
【図３】
2005174124.tif 000005
【図４】
2005174124.tif 000006
【図５】
2005174124.tif 000007
【図６】
2005174124.tif 000008
【図７】
2005174124.tif 000009
【図８】
2005174124.tif 000010
【図９】
2005174124.tif 000011
【図１０】
2005174124.tif 000012
【図１１】
2005174124.tif 000013
【図１２】
2005174124.tif 000014
【図１３】
2005174124.tif 000015
【図１４】
2005174124.tif 000016
【図１５】
2005174124.tif 000017
【図１６】
2005174124.tif 000018
【図１７】
2005174124.tif 000019
【図１８】
2005174124.tif 000020
【図１９】
2005174124.tif 000021
【図２０】
2005174124.tif 000022
【図２１】
2005174124.tif 000023
【図２２】
2005174124.tif 000024
【図２３】
2005174124.tif 000025
【図２４】
2005174124.tif 000026
【図２５】
2005174124.tif 000027
【図２６】
2005174124.tif 000028