(57)【要約】【課題】  真正なアプリケーションをサーバ装置上で起動し、このアプリケーションによる端末装置へのアクセスを可能にするためのファイアウォール設定を自動化する。【解決手段】  端末装置３からサーバ装置２に送信したアプリケーション２１−１の起動指示に応答して、サーバ装置２から端末装置３に送られるアプリケーション２１−１の証明書２２−１が、ルート証明書３３−１で検証成功すると、そのルート証明書３３−１に対応してポート番号一覧記憶部に記憶してあるポート番号集合を端末装置３からサーバ装置２へ送信し、アプリケーション２１−１による端末装置３の当該ポート番号へのアクセスを可能にする情報をサーバ側記憶部２３へ設定し、また、サーバ装置２から端末装置３へのアクセスを可能にする情報を端末側記憶部３１へ設定する。【選択図】  図１
2006209322.tif 000002
【特許請求の範囲】
【請求項１】
端末装置からサーバ装置に送信したアプリケーションプログラムの起動指示に応答して、サーバ装置から端末装置に送られるアプリケーションプログラムの証明書が、端末装置の何れかのルート証明書で検証成功したときに、そのルート証明書に対応して端末装置のポート番号一覧記憶部に記憶してあるポート番号集合をサーバ装置へ送信すると共に、前記サーバ装置からのアクセスを許可するように端末側ファイアウォールを設定し、サーバ装置側では、前記アプリケーションプログラムによる端末装置の前記ポート番号集合へのアクセスを許可するようにサーバ側ファイアウォールを設定することを特徴とするアクセス制御方式。
【請求項２】
ネットワークを通じて相互に通信可能に接続されたサーバ装置と端末装置とで構成された情報処理システムにおけるアクセス制御方式において、
前記サーバ装置に、複数のアプリケーションプログラムと、各アプリケーションプログラム毎の証明書と、アプリケーション識別子とポート番号集合と端末ＩＰアドレスとの組を記憶するサーバ側記憶部と、前記複数のアプリケーションプログラムによる前記端末装置へのアクセス可否を、アプリケーション識別子とアクセス先ＩＰとアクセス先ポート番号の各情報と前記サーバ側記憶部に記憶された情報とを照合して判定するサーバ側ファイアウォールと、前記端末装置からアプリケーションプログラムの起動依頼を受信したときに、そのアプリケーションプログラムに対応する証明書と自サーバ装置のサーバ識別子とを依頼元の前記端末装置へ送信し、その応答としてポート番号集合を受信したときに、そのアプリケーションプログラムのアプリケーション識別子と前記受信したポート番号集合と端末ＩＰアドレスとの組を前記サーバ側記憶部に記憶するアプリケーション状態管理手段とを備え、
前記端末装置に、サーバ識別子を記憶する端末側記憶部と、前記サーバ装置による自端末装置へのアクセス可否をアクセス元のサーバ装置のサーバ識別子と前記端末側記憶部に記憶されたサーバ識別子とを照合して判定する端末側ファイアウォールと、複数のルート証明書と、前記ルート証明書の識別子とポート番号集合との組を記憶するポート番号一覧記憶部と、前記アプリケーションプログラムの証明書を前記複数のルート証明書により検証する検証手段と、前記サーバ装置にアプリケーションプログラムの起動を依頼し、その応答としてそのアプリケーションプログラムの証明書とサーバ識別子とを受信したときに、その証明書の検証を前記検証手段に行わせ、検証に成功したルート証明書の識別子に対応するポート番号集合を前記ポート番号一覧記憶部から取得して前記サーバ装置へ送信すると共に前記受信したサーバ識別子を前記端末側記憶部に記憶するアプリケーション起動依頼手段とを備えることを特徴とするアクセス制御方式。
【請求項３】
ネットワークを通じて相互に通信可能に接続されたサーバ装置と端末装置とで構成された情報処理システムにおけるアクセス制御方式において、
前記サーバ装置に、複数のアプリケーションプログラムと、各アプリケーションプログラム毎の証明書と、アプリケーション識別子とポート番号集合と端末ＩＰアドレスと参照カウンタとの組を記憶するサーバ側記憶部と、前記複数のアプリケーションプログラムによる前記端末装置へのアクセス可否を、アプリケーション識別子とアクセス先ＩＰとアクセス先ポート番号の各情報と前記サーバ側記憶部に記憶された情報とを照合して判定するサーバ側ファイアウォールと、前記端末装置からアプリケーションプログラムの起動依頼を受信したときに、そのアプリケーションプログラムに対応する証明書と自サーバ装置のサーバ識別子とを依頼元の前記端末装置へ送信し、その応答としてポート番号集合を受信したときに、そのアプリケーションプログラムのアプリケーション識別子と前記受信したポート番号集合と端末ＩＰアドレスとを含む組が前記サーバ側記憶部に既に存在すれば、その組に含まれる参照カウンタの値を更新し、そのような組が前記サーバ側記憶部に存在しなければ、アプリケーション識別子と前記受信したポート番号集合と端末ＩＰアドレスと初期値に設定した参照カウンタとの組を前記サーバ側記憶部に記憶するアプリケーション状態管理手段とを備え、
前記端末装置に、サーバ識別子と参照カウンタとの組を記憶する端末側記憶部と、前記サーバ装置による自端末装置へのアクセス可否をアクセス元のサーバ装置のサーバ識別子と前記端末側記憶部に記憶された組に含まれるサーバ識別子とを照合して判定する端末側ファイアウォールと、複数のルート証明書と、前記ルート証明書の識別子とポート番号集合との組を記憶するポート番号一覧記憶部と、前記アプリケーションプログラムの証明書を前記複数のルート証明書により検証する検証手段と、前記サーバ装置にアプリケーションプログラムの起動を依頼し、その応答としてそのアプリケーションプログラムの証明書とサーバ識別子とを受信したときに、その証明書の検証を前記検証手段に行わせ、検証に成功したルート証明書の識別子に対応するポート番号集合を前記ポート番号一覧記憶部から取得して前記サーバ装置へ送信すると共に、前記受信したサーバ識別子を含む組が前記端末側記憶部に既に存在すれば、その組に含まれる参照カウンタを更新し、そのような組が前記端末側記憶部に存在しなければ、前記受信したサーバ識別子と初期値に設定した参照カウンタとを含む組を前記端末側記憶部に記憶するアプリケーション起動依頼手段とを備えることを特徴とするアクセス制御方式。
【請求項４】
前記サーバ装置の前記アプリケーション状態管理手段は、アプリケーションプログラムの停止を検知したとき、停止したアプリケーションプログラムの起動指示元の端末装置に対してサーバ識別子を付加したアプリケーション終了通知を送信し、その応答としてアプリケーション終了応答を受信すると、前記停止したアプリケーションプログラムのアプリケーション識別子と起動指示元の端末装置のＩＰアドレスとを含む組に含まれる参照カウンタの値を前記サーバ側記憶部から参照し、初期値以外の値であれば参照カウンタの値を更新し、初期値であれば当該組を前記サーバ側記憶部から削除するものであることを特徴とする請求項３記載のアクセス制御方式。
【請求項５】
前記端末装置のアプリケーション起動依頼手段は、起動したアプリケーションプログラムが終了した旨のアプリケーション終了通知を前記サーバ装置から受信したときに、前記アプリケーション終了通知に付加されたサーバ識別子を含む組に含まれる参照カウンタの値を前記端末側記憶部から参照し、初期値以外の値であれば参照カウンタの値を更新し、初期値であれば当該組を前記端末側記憶部から削除するものであることを特徴とする請求項３または４記載のアクセス制御方式。
【請求項６】
端末装置からサーバ装置に送信したアプリケーションプログラムの起動指示に応答して、サーバ装置から端末装置に送られるアプリケーションプログラムの証明書が、端末装置の何れかのルート証明書で検証成功したときに、そのルート証明書に対応して端末装置のポート番号一覧記憶部に記憶してあるポート番号集合をサーバ装置へ送信すると共に、前記サーバ装置からのアクセスを許可するように端末側ファイアウォールを設定し、サーバ装置側では、前記アプリケーションプログラムによる端末装置の前記ポート番号集合へのアクセスを許可するようにサーバ側ファイアウォールを設定することを特徴とするアクセス制御方法。
【請求項７】
ネットワークを通じて相互に通信可能に接続されたサーバ装置と端末装置とで構成され、前記サーバ装置は、複数のアプリケーションプログラムと、各アプリケーションプログラム毎の証明書と、アプリケーション識別子とポート番号集合と端末ＩＰアドレスとの組を記憶するサーバ側記憶部と、前記複数のアプリケーションプログラムによる前記端末装置へのアクセス可否を、アプリケーション識別子とアクセス先ＩＰとアクセス先ポート番号の各情報と前記サーバ側記憶部に記憶された情報とを照合して判定するサーバ側ファイアウォールとを備え、前記端末装置は、サーバ識別子を記憶する端末側記憶部と、前記サーバ装置による自端末装置へのアクセス可否をアクセス元のサーバ装置のサーバ識別子と前記端末側記憶部に記憶されたサーバ識別子とを照合して判定する端末側ファイアウォールと、複数のルート証明書と、前記ルート証明書の識別子とポート番号集合との組を記憶するポート番号一覧記憶部と、前記アプリケーションプログラムの証明書を前記複数のルート証明書により検証する検証手段とを備えた情報処理システムにおけるアクセス制御方法において、
前記端末装置が、前記サーバ装置にアプリケーションプログラムの起動を依頼する指示を送信するステップ、
前記サーバ装置が、前記依頼の指示に対する応答として、そのアプリケーションプログラムに対応する証明書と自サーバ装置のサーバ識別子とを前記端末装置へ送信するステップ、
前記端末装置が、前記サーバ装置から前記証明書とサーバ識別子とを受信し、該受信した証明書の検証を前記検証手段に行わせ、検証に成功したルート証明書の識別子に対応するポート番号集合を前記ポート番号一覧記憶部から取得して前記サーバ装置へ送信すると共に前記受信したサーバ識別子を前記端末側記憶部に記憶するステップ、
前記サーバ装置が、前記端末装置から前記ポート番号集合を受信し、前記アプリケーションプログラムのアプリケーション識別子と前記受信したポート番号集合と前記端末装置の端末ＩＰアドレスとの組を前記サーバ側記憶部に記憶するステップ、
を含むことを特徴とするアクセス制御方法。
【請求項８】
ネットワークを通じて相互に通信可能に接続されたサーバ装置と端末装置とで構成され、前記サーバ装置は、複数のアプリケーションプログラムと、各アプリケーションプログラム毎の証明書と、アプリケーション識別子とポート番号集合と端末ＩＰアドレスと参照カウンタとの組を記憶するサーバ側記憶部と、前記複数のアプリケーションプログラムによる前記端末装置へのアクセス可否を、アプリケーション識別子とアクセス先ＩＰとアクセス先ポート番号の各情報と前記サーバ側記憶部に記憶された情報とを照合して判定するサーバ側ファイアウォールとを備え、前記端末装置は、サーバ識別子と参照カウンタとの組を記憶する端末側記憶部と、前記サーバ装置による自端末装置へのアクセス可否をアクセス元のサーバ装置のサーバ識別子と前記端末側記憶部に記憶された組に含まれるサーバ識別子とを照合して判定する端末側ファイアウォールと、複数のルート証明書と、前記ルート証明書の識別子とポート番号集合との組を記憶するポート番号一覧記憶部と、前記アプリケーションプログラムの証明書を前記複数のルート証明書により検証する検証手段とを備えた情報処理システムにおけるアクセス制御方法において、
前記端末装置が、前記サーバ装置にアプリケーションプログラムの起動を依頼する指示を送信するステップ、
前記サーバ装置が、前記依頼の指示に対する応答として、そのアプリケーションプログラムに対応する証明書と自サーバ装置のサーバ識別子とを前記端末装置へ送信するステップ、
前記端末装置が、前記サーバ装置から前記証明書とサーバ識別子とを受信し、該受信した証明書の検証を前記検証手段に行わせ、検証に成功したルート証明書の識別子に対応するポート番号集合を前記ポート番号一覧記憶部から取得して前記サーバ装置へ送信すると共に、前記受信したサーバ識別子を含む組が前記端末側記憶部に既に存在すれば、その組に含まれる参照カウンタを更新し、そのような組が前記端末側記憶部に存在しなければ、前記受信したサーバ識別子と初期値に設定した参照カウンタとを含む組を前記端末側記憶部に記憶するステップ、
前記サーバ装置が、前記端末装置から前記ポート番号集合を受信し、前記アプリケーションプログラムのアプリケーション識別子と前記受信したポート番号集合と前記端末装置の端末ＩＰアドレスとを含む組が前記サーバ側記憶部に既に存在すれば、その組に含まれる参照カウンタの値を更新し、そのような組が前記サーバ側記憶部に存在しなければ、アプリケーション識別子と前記受信したポート番号集合と端末ＩＰアドレスと初期値に設定した参照カウンタとの組を前記サーバ側記憶部に記憶するステップ、
を含むことを特徴とするアクセス制御方法。
【請求項９】
ネットワークを通じて端末装置と相互に通信可能に接続されたサーバ装置において、
複数のアプリケーションプログラムと、各アプリケーションプログラム毎の証明書と、アプリケーション識別子とポート番号集合と端末ＩＰアドレスとの組を記憶するサーバ側記憶部と、前記複数のアプリケーションプログラムによる前記端末装置へのアクセス可否を、アプリケーション識別子とアクセス先ＩＰとアクセス先ポート番号の各情報と前記サーバ側記憶部に記憶された情報とを照合して判定するサーバ側ファイアウォールと、前記端末装置からアプリケーションプログラムの起動依頼を受信したときに、そのアプリケーションプログラムに対応する証明書と自サーバ装置のサーバ識別子とを依頼元の前記端末装置へ送信し、その応答としてポート番号集合を受信したときに、そのアプリケーションプログラムのアプリケーション識別子と前記受信したポート番号集合と端末ＩＰアドレスとの組を前記サーバ側記憶部に記憶するアプリケーション状態管理手段とを備えることを特徴とするサーバ装置。
【請求項１０】
ネットワークを通じて端末装置と相互に通信可能に接続されたサーバ装置において、
複数のアプリケーションプログラムと、各アプリケーションプログラム毎の証明書と、アプリケーション識別子とポート番号集合と端末ＩＰアドレスと参照カウンタとの組を記憶するサーバ側記憶部と、前記複数のアプリケーションプログラムによる前記端末装置へのアクセス可否を、アプリケーション識別子とアクセス先ＩＰとアクセス先ポート番号の各情報と前記サーバ側記憶部に記憶された情報とを照合して判定するサーバ側ファイアウォールと、前記端末装置からアプリケーションプログラムの起動依頼を受信したときに、そのアプリケーションプログラムに対応する証明書と自サーバ装置のサーバ識別子とを依頼元の前記端末装置へ送信し、その応答としてポート番号集合を受信したときに、そのアプリケーションプログラムのアプリケーション識別子と前記受信したポート番号集合と端末ＩＰアドレスとを含む組が前記サーバ側記憶部に既に存在すれば、その組に含まれる参照カウンタの値を更新し、そのような組が前記サーバ側記憶部に存在しなければ、アプリケーション識別子と前記受信したポート番号集合と端末ＩＰアドレスと初期値に設定した参照カウンタとの組を前記サーバ側記憶部に記憶するアプリケーション状態管理手段とを備えることを特徴とするサーバ装置。
【請求項１１】
前記アプリケーション状態管理手段は、アプリケーションプログラムの停止を検知したとき、停止したアプリケーションプログラムの起動指示元の端末装置に対してサーバ識別子を付加したアプリケーション終了通知を送信し、その応答としてアプリケーション終了応答を受信すると、前記停止したアプリケーションプログラムのアプリケーション識別子と起動指示元の端末装置のＩＰアドレスとを含む組に含まれる参照カウンタの値を前記サーバ側記憶部から参照し、初期値以外の値であれば参照カウンタの値を更新し、初期値であれば当該組を前記サーバ側記憶部から削除するものであることを特徴とする請求項１０記載のサーバ装置。
【請求項１２】
ネットワークを通じてサーバ装置と相互に通信可能に接続された端末装置において、
サーバ識別子を記憶する端末側記憶部と、前記サーバ装置による自端末装置へのアクセス可否をアクセス元のサーバ装置のサーバ識別子と前記端末側記憶部に記憶されたサーバ識別子とを照合して判定する端末側ファイアウォールと、複数のルート証明書と、前記ルート証明書の識別子とポート番号集合との組を記憶するポート番号一覧記憶部と、前記サーバ装置で動作するアプリケーションプログラムの証明書を前記複数のルート証明書により検証する検証手段と、前記サーバ装置にアプリケーションプログラムの起動を依頼し、その応答としてそのアプリケーションプログラムの証明書とサーバ識別子とを受信したときに、その証明書の検証を前記検証手段に行わせ、検証に成功したルート証明書の識別子に対応するポート番号集合を前記ポート番号一覧記憶部から取得して前記サーバ装置へ送信すると共に前記受信したサーバ識別子を前記端末側記憶部に記憶するアプリケーション起動依頼手段とを備えることを特徴とする端末装置。
【請求項１３】
ネットワークを通じてサーバ装置と相互に通信可能に接続された端末装置において、
サーバ識別子と参照カウンタとの組を記憶する端末側記憶部と、前記サーバ装置による自端末装置へのアクセス可否をアクセス元のサーバ装置のサーバ識別子と前記端末側記憶部に記憶された組に含まれるサーバ識別子とを照合して判定する端末側ファイアウォールと、複数のルート証明書と、前記ルート証明書の識別子とポート番号集合との組を記憶するポート番号一覧記憶部と、前記サーバ装置で動作するアプリケーションプログラムの証明書を前記複数のルート証明書により検証する検証手段と、前記サーバ装置にアプリケーションプログラムの起動を依頼し、その応答としてそのアプリケーションプログラムの証明書とサーバ識別子とを受信したときに、その証明書の検証を前記検証手段に行わせ、検証に成功したルート証明書の識別子に対応するポート番号集合を前記ポート番号一覧記憶部から取得して前記サーバ装置へ送信すると共に、前記受信したサーバ識別子を含む組が前記端末側記憶部に既に存在すれば、その組に含まれる参照カウンタを更新し、そのような組が前記端末側記憶部に存在しなければ、前記受信したサーバ識別子と初期値に設定した参照カウンタとを含む組を前記端末側記憶部に記憶するアプリケーション起動依頼手段とを備えることを特徴とする端末装置。
【請求項１４】
前記アプリケーション起動依頼手段は、起動したアプリケーションが終了した旨のアプリケーション終了通知を前記サーバ装置から受信したときに、前記アプリケーション終了通知に付加されたサーバ識別子を含む組に含まれる参照カウンタの値を前記端末側記憶部から参照し、初期値以外の値であれば参照カウンタの値を更新し、初期値であれば当該組を前記端末側記憶部から削除するものであることを特徴とする請求項１３記載の端末装置。
【請求項１５】
ネットワークを通じて端末装置と相互に通信可能に接続され、複数のアプリケーションプログラムと、各アプリケーションプログラム毎の証明書と、アプリケーション識別子とポート番号集合と端末ＩＰアドレスとの組を記憶するサーバ側記憶部とを有するサーバ装置を構成するコンピュータを、前記複数のアプリケーションプログラムによる前記端末装置へのアクセス可否を、アプリケーション識別子とアクセス先ＩＰとアクセス先ポート番号の各情報と前記サーバ側記憶部に記憶された情報とを照合して判定するサーバ側ファイアウォール、前記端末装置からアプリケーションプログラムの起動依頼を受信したときに、そのアプリケーションプログラムに対応する証明書と自サーバ装置のサーバ識別子とを依頼元の前記端末装置へ送信し、その応答としてポート番号集合を受信したときに、そのアプリケーションプログラムのアプリケーション識別子と前記受信したポート番号集合と端末ＩＰアドレスとの組を前記サーバ側記憶部に記憶するアプリケーション状態管理手段、として機能させるためのプログラム。
【請求項１６】
ネットワークを通じて端末装置と相互に通信可能に接続され、複数のアプリケーションプログラムと、各アプリケーションプログラム毎の証明書と、アプリケーション識別子とポート番号集合と端末ＩＰアドレスと参照カウンタとの組を記憶するサーバ側記憶部とを有するサーバ装置を構成するコンピュータを、前記複数のアプリケーションプログラムによる前記端末装置へのアクセス可否を、アプリケーション識別子とアクセス先ＩＰとアクセス先ポート番号の各情報と前記サーバ側記憶部に記憶された情報とを照合して判定するサーバ側ファイアウォール、前記端末装置からアプリケーションプログラムの起動依頼を受信したときに、そのアプリケーションプログラムに対応する証明書と自サーバ装置のサーバ識別子とを依頼元の前記端末装置へ送信し、その応答としてポート番号集合を受信したときに、そのアプリケーションプログラムのアプリケーション識別子と前記受信したポート番号集合と端末ＩＰアドレスとを含む組が前記サーバ側記憶部に既に存在すれば、その組に含まれる参照カウンタの値を更新し、そのような組が前記サーバ側記憶部に存在しなければ、アプリケーション識別子と前記受信したポート番号集合と端末ＩＰアドレスと初期値に設定した参照カウンタとの組を前記サーバ側記憶部に記憶するアプリケーション状態管理手段、として機能させるためのプログラム。
【請求項１７】
ネットワークを通じてサーバ装置と相互に通信可能に接続され、サーバ識別子を記憶する端末側記憶部と、複数のルート証明書と、前記ルート証明書の識別子とポート番号集合との組を記憶するポート番号一覧記憶部と、前記サーバ装置で動作するアプリケーションプログラムの証明書を前記複数のルート証明書により検証する検証手段とを有する端末装置を構成するコンピュータを、前記サーバ装置による自端末装置へのアクセス可否をアクセス元のサーバ装置のサーバ識別子と前記端末側記憶部に記憶されたサーバ識別子とを照合して判定する端末側ファイアウォール、前記サーバ装置にアプリケーションプログラムの起動を依頼し、その応答としてそのアプリケーションプログラムの証明書とサーバ識別子とを受信したときに、その証明書の検証を前記検証手段に行わせ、検証に成功したルート証明書の識別子に対応するポート番号集合を前記ポート番号一覧記憶部から取得して前記サーバ装置へ送信すると共に前記受信したサーバ識別子を前記端末側記憶部に記憶するアプリケーション起動依頼手段、として機能させるためのプログラム。
【請求項１８】
ネットワークを通じてサーバ装置と相互に通信可能に接続され、サーバ識別子と参照カウンタとの組を記憶する端末側記憶部と、複数のルート証明書と、前記ルート証明書の識別子とポート番号集合との組を記憶するポート番号一覧記憶部と、前記サーバ装置で動作するアプリケーションプログラムの証明書を前記複数のルート証明書により検証する検証手段とを有する端末装置を構成するコンピュータを、前記サーバ装置による自端末装置へのアクセス可否をアクセス元のサーバ装置のサーバ識別子と前記端末側記憶部に記憶された組に含まれるサーバ識別子とを照合して判定する端末側ファイアウォール、前記サーバ装置にアプリケーションプログラムの起動を依頼し、その応答としてそのアプリケーションプログラムの証明書とサーバ識別子とを受信したときに、その証明書の検証を前記検証手段に行わせ、検証に成功したルート証明書の識別子に対応するポート番号集合を前記ポート番号一覧記憶部から取得して前記サーバ装置へ送信すると共に、前記受信したサーバ識別子を含む組が前記端末側記憶部に既に存在すれば、その組に含まれる参照カウンタを更新し、そのような組が前記端末側記憶部に存在しなければ、前記受信したサーバ識別子と初期値に設定した参照カウンタとを含む組を前記端末側記憶部に記憶するアプリケーション起動依頼手段、として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はアクセス制御方式に関し、特にサーバ装置上で動作するアプリケーションプログラムから端末装置へのアクセスを制御する方式に関する。
【背景技術】
【０００２】
端末装置においてアプリケーションプログラム（以下、単にアプリケーションと称す）を操作する形態の一種に、リモートサーバ装置上で動作するアプリケーションをネットワークを通じて操作する方式がある。Ｘウィンドウシステムがその代表例であり、Linuxサーバなどのリモートサーバ装置上で動作するメーラやテキストエディタなどのアプリケーションを端末装置から操作することができる。端末装置において操作画面などを表示する側のプログラムをＸサーバと呼び、メーラなどの操作される側のプログラムをＸクライアントと呼び、クライアント・サーバ型で動作する。
【０００３】
このようなＸウィンドウシステムなどのように、サーバ装置上で動作するアプリケーションが端末装置をアクセスする環境においては、不正なアプリケーションによる不正なアクセスを防止することが重要である。
【０００４】
サーバ装置上で動作する不正なアプリケーションによる端末装置への不正アクセスを防止する技術として、ファイアウォールを用いる方法がある（例えば特許文献１参照）。
【０００５】
図１５にファイアウォールを用いて不正アクセスを防止する従来技術を示す。サーバ装置５と端末装置６とは図示しないネットワークを通じてＴＣＰ／ＩＰプロトコルを用いて互いに通信可能に接続されており、それぞれにファイアウォール５２、６１が設けられている。サーバ装置５上のファイアウォール５２には、アクセス元アプリケーション５１のアプリケーション識別子とアクセス先ＩＰアドレスとアクセス先ポート番号５０との組がアクセス情報として設定されており、このアクセス情報により、サーバ装置５で動作するアプリケーション５１からサーバ外部へのアクセスの可否を判断する。また、端末装置６上のファイアウォール６１は、アクセス元ＩＰアドレスとアクセス元ポート番号４０と受信ポート番号５０との組がアクセス情報として設定されており、このアクセス情報により、端末外部からのアクセスの可否を判断する。上記のアクセス情報はサーバ装置５の管理者、端末装置６の利用者によって静的に設定される。
【０００６】
他方、サーバ装置上で動作する不正なアプリケーションによる端末装置への不正アクセスを防止する他の技術として、証明書を用いる方法がある。証明書とは、ＩＴＵ（国際電気通信連合）により勧告されたＸ．５０９などで規定される電子証明書を意味する。サーバ装置のアプリケーションを起動する際に、そのアプリケーションの証明書をチェックすれば、そのアプリケーションが公認の製造元から提供された真正なアプリケーションかどうかを検証することができ、検証に成功した場合に限ってアプリケーションを起動することにより、不正なアプリケーションの起動を防止でき、ひいては不正なアプリケーションによる端末装置への不正アクセスを防止できる。ここで、アプリケーションの証明書の検証は、ルート証明書を用いて行われる。ルート証明書は証明書の発行元（認証局）の正当性を証明する電子証明書である。証明書とルート証明書とは通常、１対ｎの関係がある。つまり、真正な或る１つのアプリケーションの証明書は何れか１つのルート証明書による検証に成功し、或る１つのルート証明書を用いて複数の真正なアプリケーションの証明書を検証することができる。
【特許文献１】特開２００３−１３２０３０号公報（００３６段落、図４）
【発明の開示】
【発明が解決しようとする課題】
【０００７】
上述したように、サーバ装置上で動作する不正なアプリケーションによる端末装置への不正アクセスを防止する技術として、ファイアウォールを用いる方法と証明書を用いる方法とが従来より存在するが、ファイアウォールの設定が静的であるために、端末装置からサーバ装置の真正なアプリケーションを起動したとしても、そのアプリケーションによるアクセスがファイアウォールによって遮断されるといった課題があった。
【０００８】
そこで本発明の目的は、端末装置のルート証明書による検証に成功したアプリケーションをサーバ装置上で起動し、この起動させたアプリケーションによる当該端末装置へのアクセスを可能にするためのファイアウォール設定を自動的に行うことができるようにすることにある。
【０００９】
また本発明の別の目的は、サーバ装置上のアプリケーションのルート証明書によるグループ分けを可能にし、そのグループ毎にアクセスを許可するポート集合を定義することにより、アプリケーションのアクセス管理を簡易化することにある。
【課題を解決するための手段】
【００１０】
本発明のアクセス制御方式は、端末装置からサーバ装置に送信したアプリケーションの起動指示に応答して、サーバ装置から端末装置に送られるアプリケーションの証明書が、端末装置の何れかのルート証明書で検証成功したときに、そのルート証明書に対応して端末装置のポート番号一覧記憶部に記憶してあるポート番号集合をサーバ装置へ送信すると共に、前記サーバ装置からのアクセスを許可するように端末側ファイアウォールを設定し、サーバ装置側では、前記アプリケーションによる端末装置の前記ポート番号集合へのアクセスを許可するようにサーバ側ファイアウォールを設定することを基本とする。
【００１１】
より具体的には、本発明の第１のアクセス制御方式は、ネットワークを通じて相互に通信可能に接続されたサーバ装置と端末装置とで構成された情報処理システムにおけるアクセス制御方式において、前記サーバ装置に、複数のアプリケーションプログラムと、各アプリケーションプログラム毎の証明書と、アプリケーション識別子とポート番号集合と端末ＩＰアドレスとの組を記憶するサーバ側記憶部と、前記複数のアプリケーションプログラムによる前記端末装置へのアクセス可否を、アプリケーション識別子とアクセス先ＩＰとアクセス先ポート番号の各情報と前記サーバ側記憶部に記憶された情報とを照合して判定するサーバ側ファイアウォールと、前記端末装置からアプリケーションプログラムの起動依頼を受信したときに、そのアプリケーションプログラムに対応する証明書と自サーバ装置のサーバ識別子とを依頼元の前記端末装置へ送信し、その応答としてポート番号集合を受信したときに、そのアプリケーションプログラムのアプリケーション識別子と前記受信したポート番号集合と端末ＩＰアドレスとの組を前記サーバ側記憶部に記憶するアプリケーション状態管理手段とを備え、前記端末装置に、サーバ識別子を記憶する端末側記憶部と、前記サーバ装置による自端末装置へのアクセス可否をアクセス元のサーバ装置のサーバ識別子と前記端末側記憶部に記憶されたサーバ識別子とを照合して判定する端末側ファイアウォールと、複数のルート証明書と、前記ルート証明書の識別子とポート番号集合との組を記憶するポート番号一覧記憶部と、前記アプリケーションプログラムの証明書を前記複数のルート証明書により検証する検証手段と、前記サーバ装置にアプリケーションプログラムの起動を依頼し、その応答としてそのアプリケーションプログラムの証明書とサーバ識別子とを受信したときに、その証明書の検証を前記検証手段に行わせ、検証に成功したルート証明書の識別子に対応するポート番号集合を前記ポート番号一覧記憶部から取得して前記サーバ装置へ送信すると共に前記受信したサーバ識別子を前記端末側記憶部に記憶するアプリケーション起動依頼手段とを備えることを特徴とする。
【００１２】
本発明の第２のアクセス制御方式は、ネットワークを通じて相互に通信可能に接続されたサーバ装置と端末装置とで構成された情報処理システムにおけるアクセス制御方式において、前記サーバ装置に、複数のアプリケーションプログラムと、各アプリケーションプログラム毎の証明書と、アプリケーション識別子とポート番号集合と端末ＩＰアドレスと参照カウンタとの組を記憶するサーバ側記憶部と、前記複数のアプリケーションプログラムによる前記端末装置へのアクセス可否を、アプリケーション識別子とアクセス先ＩＰとアクセス先ポート番号の各情報と前記サーバ側記憶部に記憶された情報とを照合して判定するサーバ側ファイアウォールと、前記端末装置からアプリケーションプログラムの起動依頼を受信したときに、そのアプリケーションプログラムに対応する証明書と自サーバ装置のサーバ識別子とを依頼元の前記端末装置へ送信し、その応答としてポート番号集合を受信したときに、そのアプリケーションプログラムのアプリケーション識別子と前記受信したポート番号集合と端末ＩＰアドレスとを含む組が前記サーバ側記憶部に既に存在すれば、その組に含まれる参照カウンタの値を更新し、そのような組が前記サーバ側記憶部に存在しなければ、アプリケーション識別子と前記受信したポート番号集合と端末ＩＰアドレスと初期値に設定した参照カウンタとの組を前記サーバ側記憶部に記憶するアプリケーション状態管理手段とを備え、前記端末装置に、サーバ識別子と参照カウンタとの組を記憶する端末側記憶部と、前記サーバ装置による自端末装置へのアクセス可否をアクセス元のサーバ装置のサーバ識別子と前記端末側記憶部に記憶された組に含まれるサーバ識別子とを照合して判定する端末側ファイアウォールと、複数のルート証明書と、前記ルート証明書の識別子とポート番号集合との組を記憶するポート番号一覧記憶部と、前記アプリケーションプログラムの証明書を前記複数のルート証明書により検証する検証手段と、前記サーバ装置にアプリケーションプログラムの起動を依頼し、その応答としてそのアプリケーションプログラムの証明書とサーバ識別子とを受信したときに、その証明書の検証を前記検証手段に行わせ、検証に成功したルート証明書の識別子に対応するポート番号集合を前記ポート番号一覧記憶部から取得して前記サーバ装置へ送信すると共に、前記受信したサーバ識別子を含む組が前記端末側記憶部に既に存在すれば、その組に含まれる参照カウンタを更新し、そのような組が前記端末側記憶部に存在しなければ、前記受信したサーバ識別子と初期値に設定した参照カウンタとを含む組を前記端末側記憶部に記憶するアプリケーション起動依頼手段とを備えることを特徴とする。
【００１３】
本発明の第３のアクセス制御方式は、第２のアクセス制御方式において、前記サーバ装置の前記アプリケーション状態管理手段は、アプリケーションプログラムの停止を検知したとき、停止したアプリケーションプログラムの起動指示元の端末装置に対してサーバ識別子を付加したアプリケーション終了通知を送信し、その応答としてアプリケーション終了応答を受信すると、前記停止したアプリケーションプログラムのアプリケーション識別子と起動指示元の端末装置のＩＰアドレスとを含む組に含まれる参照カウンタの値を前記サーバ側記憶部から参照し、初期値以外の値であれば参照カウンタの値を更新し、初期値であれば当該組を前記サーバ側記憶部から削除するものであることを特徴とする。
【００１４】
本発明の第４のアクセス制御方式は、第２または第３のアクセス制御方式において、前記端末装置のアプリケーション起動依頼手段は、起動したアプリケーションプログラムが終了した旨のアプリケーション終了通知を前記サーバ装置から受信したときに、前記アプリケーション終了通知に付加されたサーバ識別子を含む組に含まれる参照カウンタの値を前記端末側記憶部から参照し、初期値以外の値であれば参照カウンタの値を更新し、初期値であれば当該組を前記端末側記憶部から削除するものであることを特徴とする。
【００１５】
本発明のアクセス制御方法は、端末装置からサーバ装置に送信したアプリケーションプログラムの起動指示に応答して、サーバ装置から端末装置に送られるアプリケーションプログラムの証明書が、端末装置の何れかのルート証明書で検証成功したときに、そのルート証明書に対応して端末装置のポート番号一覧記憶部に記憶してあるポート番号集合をサーバ装置へ送信すると共に、前記サーバ装置からのアクセスを許可するように端末側ファイアウォールを設定し、サーバ装置側では、前記アプリケーションプログラムによる端末装置の前記ポート番号集合へのアクセスを許可するようにサーバ側ファイアウォールを設定することを基本とする。
【００１６】
より具体的には、本発明の第１のアクセス制御方法は、ネットワークを通じて相互に通信可能に接続されたサーバ装置と端末装置とで構成され、前記サーバ装置は、複数のアプリケーションプログラムと、各アプリケーションプログラム毎の証明書と、アプリケーション識別子とポート番号集合と端末ＩＰアドレスとの組を記憶するサーバ側記憶部と、前記複数のアプリケーションプログラムによる前記端末装置へのアクセス可否を、アプリケーション識別子とアクセス先ＩＰとアクセス先ポート番号の各情報と前記サーバ側記憶部に記憶された情報とを照合して判定するサーバ側ファイアウォールとを備え、前記端末装置は、サーバ識別子を記憶する端末側記憶部と、前記サーバ装置による自端末装置へのアクセス可否をアクセス元のサーバ装置のサーバ識別子と前記端末側記憶部に記憶されたサーバ識別子とを照合して判定する端末側ファイアウォールと、複数のルート証明書と、前記ルート証明書の識別子とポート番号集合との組を記憶するポート番号一覧記憶部と、前記アプリケーションプログラムの証明書を前記複数のルート証明書により検証する検証手段とを備えた情報処理システムにおけるアクセス制御方法において、前記端末装置が、前記サーバ装置にアプリケーションプログラムの起動を依頼する指示を送信するステップ、前記サーバ装置が、前記依頼の指示に対する応答として、そのアプリケーションプログラムに対応する証明書と自サーバ装置のサーバ識別子とを前記端末装置へ送信するステップ、前記端末装置が、前記サーバ装置から前記証明書とサーバ識別子とを受信し、該受信した証明書の検証を前記検証手段に行わせ、検証に成功したルート証明書の識別子に対応するポート番号集合を前記ポート番号一覧記憶部から取得して前記サーバ装置へ送信すると共に前記受信したサーバ識別子を前記端末側記憶部に記憶するステップ、前記サーバ装置が、前記端末装置から前記ポート番号集合を受信し、前記アプリケーションプログラムのアプリケーション識別子と前記受信したポート番号集合と前記端末装置の端末ＩＰアドレスとの組を前記サーバ側記憶部に記憶するステップ、を含むことを特徴とする。
【００１７】
本発明の第２のアクセス制御方法は、ネットワークを通じて相互に通信可能に接続されたサーバ装置と端末装置とで構成され、前記サーバ装置は、複数のアプリケーションプログラムと、各アプリケーションプログラム毎の証明書と、アプリケーション識別子とポート番号集合と端末ＩＰアドレスと参照カウンタとの組を記憶するサーバ側記憶部と、前記複数のアプリケーションプログラムによる前記端末装置へのアクセス可否を、アプリケーション識別子とアクセス先ＩＰとアクセス先ポート番号の各情報と前記サーバ側記憶部に記憶された情報とを照合して判定するサーバ側ファイアウォールとを備え、前記端末装置は、サーバ識別子と参照カウンタとの組を記憶する端末側記憶部と、前記サーバ装置による自端末装置へのアクセス可否をアクセス元のサーバ装置のサーバ識別子と前記端末側記憶部に記憶された組に含まれるサーバ識別子とを照合して判定する端末側ファイアウォールと、複数のルート証明書と、前記ルート証明書の識別子とポート番号集合との組を記憶するポート番号一覧記憶部と、前記アプリケーションプログラムの証明書を前記複数のルート証明書により検証する検証手段とを備えた情報処理システムにおけるアクセス制御方法において、前記端末装置が、前記サーバ装置にアプリケーションプログラムの起動を依頼する指示を送信するステップ、前記サーバ装置が、前記依頼の指示に対する応答として、そのアプリケーションプログラムに対応する証明書と自サーバ装置のサーバ識別子とを前記端末装置へ送信するステップ、前記端末装置が、前記サーバ装置から前記証明書とサーバ識別子とを受信し、該受信した証明書の検証を前記検証手段に行わせ、検証に成功したルート証明書の識別子に対応するポート番号集合を前記ポート番号一覧記憶部から取得して前記サーバ装置へ送信すると共に、前記受信したサーバ識別子を含む組が前記端末側記憶部に既に存在すれば、その組に含まれる参照カウンタを更新し、そのような組が前記端末側記憶部に存在しなければ、前記受信したサーバ識別子と初期値に設定した参照カウンタとを含む組を前記端末側記憶部に記憶するステップ、前記サーバ装置が、前記端末装置から前記ポート番号集合を受信し、前記アプリケーションプログラムのアプリケーション識別子と前記受信したポート番号集合と前記端末装置の端末ＩＰアドレスとを含む組が前記サーバ側記憶部に既に存在すれば、その組に含まれる参照カウンタの値を更新し、そのような組が前記サーバ側記憶部に存在しなければ、アプリケーション識別子と前記受信したポート番号集合と端末ＩＰアドレスと初期値に設定した参照カウンタとの組を前記サーバ側記憶部に記憶するステップ、を含むことを特徴とする。
【００１８】
本発明の第１のサーバ装置は、ネットワークを通じて端末装置と相互に通信可能に接続されたサーバ装置において、複数のアプリケーションプログラムと、各アプリケーションプログラム毎の証明書と、アプリケーション識別子とポート番号集合と端末ＩＰアドレスとの組を記憶するサーバ側記憶部と、前記複数のアプリケーションプログラムによる前記端末装置へのアクセス可否を、アプリケーション識別子とアクセス先ＩＰとアクセス先ポート番号の各情報と前記サーバ側記憶部に記憶された情報とを照合して判定するサーバ側ファイアウォールと、前記端末装置からアプリケーションプログラムの起動依頼を受信したときに、そのアプリケーションプログラムに対応する証明書と自サーバ装置のサーバ識別子とを依頼元の前記端末装置へ送信し、その応答としてポート番号集合を受信したときに、そのアプリケーションプログラムのアプリケーション識別子と前記受信したポート番号集合と端末ＩＰアドレスとの組を前記サーバ側記憶部に記憶するアプリケーション状態管理手段とを備えることを特徴とする。
【００１９】
本発明の第２のサーバ装置は、ネットワークを通じて端末装置と相互に通信可能に接続されたサーバ装置において、複数のアプリケーションプログラムと、各アプリケーションプログラム毎の証明書と、アプリケーション識別子とポート番号集合と端末ＩＰアドレスと参照カウンタとの組を記憶するサーバ側記憶部と、前記複数のアプリケーションプログラムによる前記端末装置へのアクセス可否を、アプリケーション識別子とアクセス先ＩＰとアクセス先ポート番号の各情報と前記サーバ側記憶部に記憶された情報とを照合して判定するサーバ側ファイアウォールと、前記端末装置からアプリケーションプログラムの起動依頼を受信したときに、そのアプリケーションプログラムに対応する証明書と自サーバ装置のサーバ識別子とを依頼元の前記端末装置へ送信し、その応答としてポート番号集合を受信したときに、そのアプリケーションプログラムのアプリケーション識別子と前記受信したポート番号集合と端末ＩＰアドレスとを含む組が前記サーバ側記憶部に既に存在すれば、その組に含まれる参照カウンタの値を更新し、そのような組が前記サーバ側記憶部に存在しなければ、アプリケーション識別子と前記受信したポート番号集合と端末ＩＰアドレスと初期値に設定した参照カウンタとの組を前記サーバ側記憶部に記憶するアプリケーション状態管理手段とを備えることを特徴とする。
【００２０】
本発明の第３のサーバ装置は、第２のサーバ装置において、前記アプリケーション状態管理手段は、アプリケーションプログラムの停止を検知したとき、停止したアプリケーションプログラムの起動指示元の端末装置に対してサーバ識別子を付加したアプリケーション終了通知を送信し、その応答としてアプリケーション終了応答を受信すると、前記停止したアプリケーションプログラムのアプリケーション識別子と起動指示元の端末装置のＩＰアドレスとを含む組に含まれる参照カウンタの値を前記サーバ側記憶部から参照し、初期値以外の値であれば参照カウンタの値を更新し、初期値であれば当該組を前記サーバ側記憶部から削除するものであることを特徴とする。
【００２１】
本発明の第１の端末装置は、ネットワークを通じてサーバ装置と相互に通信可能に接続された端末装置において、サーバ識別子を記憶する端末側記憶部と、前記サーバ装置による自端末装置へのアクセス可否をアクセス元のサーバ装置のサーバ識別子と前記端末側記憶部に記憶されたサーバ識別子とを照合して判定する端末側ファイアウォールと、複数のルート証明書と、前記ルート証明書の識別子とポート番号集合との組を記憶するポート番号一覧記憶部と、前記サーバ装置で動作するアプリケーションプログラムの証明書を前記複数のルート証明書により検証する検証手段と、前記サーバ装置にアプリケーションプログラムの起動を依頼し、その応答としてそのアプリケーションプログラムの証明書とサーバ識別子とを受信したときに、その証明書の検証を前記検証手段に行わせ、検証に成功したルート証明書の識別子に対応するポート番号集合を前記ポート番号一覧記憶部から取得して前記サーバ装置へ送信すると共に前記受信したサーバ識別子を前記端末側記憶部に記憶するアプリケーション起動依頼手段とを備えることを特徴とする。
【００２２】
本発明の第２の端末装置は、ネットワークを通じてサーバ装置と相互に通信可能に接続された端末装置において、サーバ識別子と参照カウンタとの組を記憶する端末側記憶部と、前記サーバ装置による自端末装置へのアクセス可否をアクセス元のサーバ装置のサーバ識別子と前記端末側記憶部に記憶された組に含まれるサーバ識別子とを照合して判定する端末側ファイアウォールと、複数のルート証明書と、前記ルート証明書の識別子とポート番号集合との組を記憶するポート番号一覧記憶部と、前記サーバ装置で動作するアプリケーションプログラムの証明書を前記複数のルート証明書により検証する検証手段と、前記サーバ装置にアプリケーションプログラムの起動を依頼し、その応答としてそのアプリケーションプログラムの証明書とサーバ識別子とを受信したときに、その証明書の検証を前記検証手段に行わせ、検証に成功したルート証明書の識別子に対応するポート番号集合を前記ポート番号一覧記憶部から取得して前記サーバ装置へ送信すると共に、前記受信したサーバ識別子を含む組が前記端末側記憶部に既に存在すれば、その組に含まれる参照カウンタを更新し、そのような組が前記端末側記憶部に存在しなければ、前記受信したサーバ識別子と初期値に設定した参照カウンタとを含む組を前記端末側記憶部に記憶するアプリケーション起動依頼手段とを備えることを特徴とする。
【００２３】
本発明の第３の端末装置は、第２の端末装置において、前記アプリケーション起動依頼手段は、起動したアプリケーションが終了した旨のアプリケーション終了通知を前記サーバ装置から受信したときに、前記アプリケーション終了通知に付加されたサーバ識別子を含む組に含まれる参照カウンタの値を前記端末側記憶部から参照し、初期値以外の値であれば参照カウンタの値を更新し、初期値であれば当該組を前記端末側記憶部から削除するものであることを特徴とする。
【００２４】
『作用』
本発明にあっては、端末装置からサーバ装置に送信したアプリケーション起動指示に応答してサーバ装置から端末装置に送られるアプリケーションの証明書を、端末装置のルート証明書によって検証し、検証に成功した場合に、その検証に使ったルート証明書に対応して予めポート番号一覧記憶部に記憶してあるポート番号集合を端末装置からサーバ装置へ送信し、そのアプリケーションによる当該端末装置の当該ポート番号へのアクセスを可能にする情報をサーバ側記憶部へ設定し、また、そのサーバ装置からの端末装置へのアクセスを可能にする情報を端末側記憶部へ設定するため、端末装置のルート証明書による検証に成功したアプリケーションのみをサーバ装置上で起動でき、かつ、この起動したアプリケーションによる当該端末装置へのアクセスを可能にするためのファイアウォール設定を自動化できる。
【発明の効果】
【００２５】
本発明によれば、端末装置が起動を依頼したサーバ装置上で動作する真正なアプリケーションによるアクセスで、かつ、端末装置がそのアプリケーションに許可したポートへのアクセスのみに制限することができる。その理由は、起動を依頼したアプリケーションの証明書の検証が端末側の何れかのルート証明書で成功する場合に限り、そのアプリケーションが、サーバ側ファイアウォールおよび端末側ファイアウォールを通じて端末装置をアクセスできるように、サーバ側記憶部および端末側記憶部に情報を設定するからである。
【００２６】
また本発明によれば、サーバ装置上で動作する複数のアプリケーションを、その証明書が端末側のどのルート証明書で検証成功するかに基づいてグループ分けすることができ、そして、そのグループ毎にアクセスを許可するポート集合を定義することにより、アプリケーションのアクセス管理が簡易になる。何故なら、グループ毎にアクセスを許可するポート番号の判断を行えば良く、グループ毎にアクセスを許可するポート番号を決めておけば良いためである。
【発明を実施するための最良の形態】
【００２７】
次に本発明の第１の実施の形態について図面を参照して詳細に説明する。
【００２８】
図１を参照すると、本発明の第１の実施の形態にかかる情報処理システムは、ＬＡＮ、ＷＡＮ、インターネット等のネットワーク１を通じて相互に通信可能に接続されたサーバ装置２と端末装置３とで構成される。図１では、サーバ装置２および端末装置３はそれぞれ１台しか存在しないが、それぞれ複数台あって良い。
【００２９】
サーバ装置２は、複数のアプリケーション２１−１〜２１−ｎ、各アプリケーション２１−１〜２１−ｎ毎の証明書２２−１〜２２−ｎ、アプリケーション識別子２３１とポート番号集合２３２と端末ＩＰアドレス２３３との組を記憶するサーバ側記憶部２３、複数のアプリケーション２１−１〜２１−ｎによる端末装置３等へのアクセス時、アクセス元のアプリケーションのアプリケーション識別子とアクセス先ＩＰとアクセス先ポート番号の各情報とサーバ側記憶部２３に記憶された情報２３１〜２３３とを照合して、複数のアプリケーション２１−１〜２１−ｎによる端末装置３等へのアクセス可否を判定するサーバ側ファイアウォール２４、自サーバ装置２を一意に識別可能なサーバ識別子２５、および、アプリケーション状態管理装置２６とを含んで構成される。なお、アプリケーション状態管理装置２６と端末装置３との通信時にもサーバ側ファイアウォール２４のアクセスチェックが介在するが、その通信に関しては許可するような設定が事前になされているものとする。
【００３０】
アプリケーション状態管理装置２６は、端末装置３から或るアプリケーション２１−ｉ（ｉ＝１〜ｎ）の起動依頼を受信したときに、そのアプリケーション２１−ｉに対応する証明書２２−ｉと自サーバ装置のサーバ識別子２５とを依頼元の端末装置３へ送信する起動依頼受信手段２６１と、その応答として端末装置３からアプリケーション２１−ｉがアクセス可能な端末側のポート番号集合を受信したときに、アプリケーション２１−ｉのアプリケーション識別子と受信したポート番号集合と端末ＩＰアドレスとの組をサーバ側記憶部２３に記憶するサーバ側アクセス情報設定手段２６２とを有する。
【００３１】
このようなサーバ装置２は、ＣＰＵ、ＲＯＭやＲＡＭ等で構成された主記憶、ハードディスク等で構成された外部記憶装置、ネットワーク１を通じて他の装置とデータの授受を行う通信部などを備えたワークステーション等のコンピュータとプログラムとで構成することができる。アプリケーション２１−１〜２１−ｎ、その証明書２２−１〜２２−ｎ、サーバ識別子２５は外部記憶装置あるいは主記憶に記憶され、サーバ側ファイアウォール２４およびアプリケーション状態管理装置２６といった機能手段はプログラムにより実現できる。すなわち、磁気ディスク等のコンピュータ読取可能な記録媒体に記録されたプログラムは、コンピュータの立ち上げ時などにコンピュータにより読み取られ、コンピュータの動作を制御することにより、コンピュータを前記機能手段として動作させる。
【００３２】
他方、端末装置３は、サーバ識別子３１１を記憶する端末側記憶部３１、サーバ装置２による自端末装置へのアクセス可否をアクセス元のサーバ装置２のサーバ識別子２５と端末側記憶部３１に記憶されたサーバ識別子３１１とを照合して判定する端末側ファイアウォール３２、複数のルート証明書３３−１〜３３−ｍ、ルート証明書３３−１〜３３−ｍの識別子３４１とポート番号集合３４２との組を記憶するポート番号一覧記憶部３４、アプリケーションの証明書２２−１〜２２−ｎを複数のルート証明書３３−１〜３３−ｍにより検証する検証装置３５、およびアプリケーション起動依頼装置３６を含んで構成される。なお、アプリケーション起動依頼装置３６とサーバ装置２との通信時にも端末側ファイアウォール３２のアクセスチェックが介在するが、その通信に関しては許可するような設定が事前になされているものとする。
【００３３】
ポート番号一覧記憶部３４に記憶される或るルート証明書３３−ｊに対応するポート番号集合３４２は、そのルート証明書３３−ｊによる検証に成功する証明書を持つ１または複数のアプリケーションを含むアプリケーショングループに対して許可する端末側ポート番号の和集合である。例えば、ルート証明書３３−１による検証に成功する証明書が証明書２２−１と証明書２２−２の２つであり、証明書２２−１を持つアプリケーション２１−１に許可する端末側ポート番号がａ番とｂ番であり、証明書２２−２を持つアプリケーション２１−２に許可する端末側ポート番号がａ番とｃ番である場合、ルート証明書３３−１の識別子３４１とポート番号集合（ａ、ｂ、ｃ）３４２との組がポート番号一覧記憶部３４に事前に設定されている。
【００３４】
アプリケーション起動依頼装置３６は、サーバ装置２に対し任意のアプリケーション２１−ｉの起動を依頼する起動依頼手段３６１と、起動依頼の応答としてアプリケーション２１−ｉの証明書２２−ｉとサーバ識別子２５とをサーバ装置２から受信したときに、証明書２２−ｉの検証を検証装置３５に行わせ、検証に成功したときに、検証に成功したルート証明書３３−ｊの識別子に対応するポート番号集合をポート番号一覧記憶部３４から取得してサーバ装置２へ送信すると共に前記受信したサーバ識別子２５を端末側記憶部３１に記憶する端末側アクセス情報設定手段３６３とを有する。
【００３５】
次に、図１のブロック図および図２乃至図６のフローチャートを参照して、本実施の形態の動作を説明する。
【００３６】
端末装置３のアプリケーション起動依頼装置３６の起動依頼手段３６１は、端末装置３の利用者からの指示に従って、サーバ装置２のアプリケーション状態管理装置２６に対して、起動を指示されたアプリケーション２１−ｉの起動依頼を送信する（図２のステップＡ１）。その後、起動依頼手段３６１は、アプリケーション状態管理装置２６からアプリケーション２１−ｉの証明書２２−ｉとサーバ識別子２５を受信するまで待つ（ステップＡ２）。
【００３７】
サーバ装置２のアプリケーション状態管理装置２６の起動依頼受信手段２６１は、アプリケーション２１−ｉの起動依頼を受信すると（図３のステップＢ１）、アプリケーション２１−ｉに対応する証明書２２−ｉを取得し（ステップＢ２）、サーバ識別子２５と共に端末装置３のアプリケーション起動依頼装置３６に送信する（ステップＢ３）。その後、起動依頼受信手段２６１は、アプリケーション起動依頼装置３６からポート番号集合、もしくは、エラー通知を受信するまで待つ（ステップＢ４、Ｂ５）。
【００３８】
端末装置３のアプリケーション起動依頼装置３６の起動依頼手段３６１は、アプリケーション状態管理装置２６からアプリケーション２１−ｉの証明書２２−ｉとサーバ識別子２５を受信すると（図２のステップＡ２でＹＥＳ）、証明書２２−ｉを証明書検証手段３６２に、サーバ識別子２５を端末側アクセス情報設定手段３６３にそれぞれ渡し、証明書検証手段３６２は、受け取った証明書２２−ｉを検証装置３５に渡し、検証を依頼する（ステップＡ３）。その後、証明書検証手段３６２は、検証装置３５から検証に成功したルート証明書の識別情報、もしくは、エラー通知が返却されるまで待つ（ステップＡ４、Ａ５）。
【００３９】
検証装置３５は、検証を依頼された証明書２２−ｉを受け取ると（図４のステップＣ１）、どのルート証明書で検証するかを制御するための変数ｊに１番目のルート証明書３３−１を示す１を設定し（ステップＣ２）、ルート証明書３３−１を用いて証明書２２−ｉを検証する（ステップＣ３）。１番目のルート証明書３３−１で検証に成功すれば（ステップＣ３でＹＥＳ）、検証に成功したルート証明書３３−１の識別子をアプリケーション起動依頼装置３６に返却する（ステップＣ６）。１番目のルート証明書３３−１による検証に失敗すれば（ステップＣ３でＮＯ）、変数ｊを＋１して２とし（ステップＣ４）、２番目のルート証明書３３−２を用いて証明書２２−ｉを検証する（ステップＣ５、Ｃ３）。このような処理を、何れかのルート証明書による検証に成功するまで繰り返す。若し、最後のｍ番目のルート証明書３３−ｍによる検証に失敗すれば（ステップＣ５でＹＥＳ）、エラーをアプリケーション起動依頼装置３６に返却する（ステップＣ７）。
【００４０】
アプリケーション起動依頼装置３６の証明書検証手段３６２は、証明書２２−１の検証に成功したルート証明書３３−ｊの識別子が検証装置３５から通知されると（図２のステップＡ４でＹＥＳ）、通知されたルート証明書３３−ｊの識別子をキーとしてポート番号一覧記憶部３４を検索し、その識別子と組になっているポート番号集合を取得して、端末側アクセス情報設定手段３６３に渡す（ステップＡ７）。端末側アクセス情報設定手段３６３は、ポート番号集合を受け取ると、起動依頼手段３６１から受け取っていたサーバ識別子２５を端末側記憶部３１に登録し（ステップＡ８）、かつ、サーバ装置２のアプリケーション状態管理装置２６に前記受け取ったポート番号集合を送信し（ステップＡ９）、処理を終了する。
【００４１】
他方、証明書検証手段３６２は、検証装置３５からエラーが通知されると（ステップＡ５でＹＥＳ）、サーバ装置２のアプリケーション状態管理装置２６にエラーを送信し（ステップＡ６）、処理を終了する。
【００４２】
サーバ装置２のアプリケーション状態管理装置２６の起動依頼受信手段２６１は、アプリケーション２２−ｉの証明書およびサーバ識別子２５の送信に対する応答として端末装置３のアプリケーション起動依頼装置３６からポート番号集合を受信すると（図３のステップＢ４でＹＥＳ）、それをサーバ側アクセス情報設定手段２６２に渡し、サーバ側アクセス情報設定手段２６２は、アプリケーション２２−ｉのアプリケーション識別子と端末装置３のＩＰアドレスと受信したポート番号集合との組みをサーバ側記憶部２３に登録し（ステップＢ６）、かつ、アプリケーション２１−ｉを起動する（ステップＢ７）。反対にエラー通知を受信した場合（ステップＢ５でＹＥＳ）、起動依頼受信手段２６１は、図３の処理を終了する。
【００４３】
以上のようにして、サーバ装置２に存在する真正なアプリケーションだけを、つまりアプリケーションの証明書の検証が端末側の何れかのルート証明書で成功するアプリケーションだけを、端末装置３からの起動依頼で起動することができる。また、そうして起動したサーバ装置２のアプリケーションが、サーバ側ファイアウォール２４および端末側ファイアウォール３２を通じて端末装置３をアクセスできるように、サーバ側記憶部２３および端末側記憶部３１の設定を変更することができる。
【００４４】
次に、サーバ装置２上のアプリケーション２１−ｉが端末装置３のポート番号Ｐに対してアクセスする場合を例にして、端末装置３がアクセスを許可したサーバ装置２上で動作するアプリケーションによるアクセスで、かつ、端末装置３がそのアプリケーションに許可したポートへのアクセスのみに制限する機能の動作を説明する。
【００４５】
サーバ装置２のアプリケーション２１−ｉが端末装置３のポート番号Ｐに対してアクセスするために、端末装置３のＩＰアドレスおよびポート番号Ｐをヘッダに含むＴＣＰ／ＩＰパケットをサーバ側ファイアウォール２４に送信すると、サーバ側ファイアウォール２４は、受信したパケットのヘッダを解析してアプリケーション２１−ｉによる端末装置３のポート番号Ｐへのアクセスを検知する（図５のステップＸ１）。次にサーバ側ファイアウォール２４は、アプリケーション２１−ｉのアプリケーション識別子と端末装置２のＩＰアドレスとをキーとして、それらに対応するポート番号集合をサーバ側記憶部２３から検索する（ステップＸ２）。そして、その検索に成功した場合、検索されたポート番号集合中にポート番号Ｐが含まれているかどうかを判定する（ステップＸ３）。
【００４６】
アプリケーション２１−ｉのアプリケーション識別子と端末装置２のＩＰアドレスとに対応するポート番号集合がサーバ側記憶部２３に存在しない場合（ステップＸ２でＮＯ）、存在していたとしてもそのポート番号集合中にポート番号Ｐが含まれていない場合（ステップＸ３でＮＯ）、サーバ側ファイアウォール２４は、アプリケーション２１−ｉによる端末装置３のポート番号Ｐへのアクセスを拒否し、当該ＴＣＰ／ＩＰパケットはネットワーク１へ送出しない（ステップＸ５）。他方、ポート番号集合が登録されており且つポート番号Ｐがポート番号集合に含まれていれば（ステップＸ２、Ｘ３でＹＥＳ）、サーバ側ファイアウォール２４は、アプリケーション２１−ｉによる端末装置３のポート番号Ｐへのアクセスを許可すべく、当該ＴＣＰ／ＩＰパケットをネットワーク１へ送出する（ステップＸ４）。この送出されるパケットのヘッダには、サーバ装置２のサーバ識別子２５が付加される。
【００４７】
ネットワーク１に送出された上記パケットは端末装置３で受信される。端末側ファイアウォール３２は、外部からのアクセスを検知すると、つまり上記パケットを受信すると（図６のステップＹ１）、パケットのヘッダを解析してサーバ識別子２５を抽出し、この抽出したサーバ識別子２５が端末側記憶部３１に格納されているかどうかを調べる（ステップＹ２）。同じサーバ識別子が端末側記憶部２３に格納されていれば、そのアクセスを許可すべく受信パケットを有効な受信パケットとして処理する（ステップＹ３）。反対に、同じサーバ識別子が端末側記憶部３１に格納されていなければ、そのアクセスを拒否すべく受信パケットを廃棄する（ステップＹ４）。
【００４８】
こうして、端末装置３がアクセスを許可したサーバ装置２上で動作するアプリケーションによるアクセスで、かつ、端末装置３がそのアプリケーションに許可したポートへのアクセスのみに制限することができる。
【００４９】
次に本実施の形態の効果について説明する。
【００５０】
本実施の形態によれば、端末装置３が起動を依頼したサーバ装置２上で動作する真正なアプリケーションによるアクセスで、かつ、端末装置３がそのアプリケーションに許可したポートへのアクセスのみに制限することができる。その理由は、起動を依頼したアプリケーションの証明書の検証が端末側の何れかのルート証明書で成功する場合に限り、そのアプリケーションが、サーバ側ファイアウォール２４および端末側ファイアウォール３２を通じて端末装置３をアクセスできるように、サーバ側記憶部２３および端末側記憶部３１に情報を設定するからである。
【００５１】
また本実施の形態によれば、サーバ装置２上で動作するアプリケーション２１−１〜２１−ｎを、その証明書２２−１〜２２−ｎが端末側のどのルート証明書で検証成功するかに基づいてグループ分けすることができ、そして、そのグループ毎にアクセスを許可するポート集合を定義するため、アプリケーションのアクセス管理が簡易になる。
【００５２】
次に本発明の第２の実施の形態について図面を参照して詳細に説明する。
【００５３】
図７を参照すると、本発明の第２の実施の形態にかかる情報処理システムは、サーバ装置２のサーバ側記憶部２３がアプリケーション識別子２３１とポート番号集合２３２と端末ＩＰアドレス２３３と参照カウンタ２３４との組を記憶する点、アプリケーション状態管理装置２６が起動依頼受信手段２６１およびサーバ側アクセス情報設定手段２６２に加えて終了検知手段２６３およびサーバ側アクセス情報削除手段２６４を有する点、端末装置３の端末側記憶部３１がサーバ識別子３１１と参照カウンタ３１２の組を記憶する点、アプリケーション起動依頼装置３６が起動依頼手段３６１、証明書検証手段３６２および端末側アクセス情報設定手段３６３に加えて端末側アクセス情報削除手段３６４を有する点で、図１に示した第１の実施の形態と相違し、その他の点は第１の実施の形態と同じである。
【００５４】
サーバ装置２のアプリケーション状態管理装置２６におけるサーバ側アクセス情報設定手段２６２は、アプリケーション識別子２３１とポート番号集合２３２と端末ＩＰアドレス２３３との組をサーバ側記憶部２３に登録する際、同じアプリケーション識別子２３１とポート番号集合２３２と端末ＩＰアドレス２３３の組がサーバ側記憶部２３に既に登録されていれば、その登録されている組に付加されている参照カウンタ２３４の値を１だけ加算し、未登録であれば、初期値１に設定した参照カウンタ２３４を付加して、アプリケーション識別子２３１とポート番号集合２３２と端末ＩＰアドレス２３３との組をサーバ側記憶部２３に登録する。参照カウンタ２３４は、それと組になっている端末ＩＰアドレス２３３を持つ端末装置３から起動された当該アプリケーション識別子２３１を持つアプリケーションが何個動作（多重動作）しているかを示す。
【００５５】
アプリケーション状態管理装置２６の終了検知手段２６３は、サーバ装置２上で起動された任意のアプリケーション２１−ｉが終了したことを検知すると、そのアプリケーション２１−ｉを起動した端末装置３に対してサーバ識別子２５およびアプリケーション識別子を付加したアプリケーション終了通知を送信する機能を有する。
【００５６】
アプリケーション状態管理装置２６のサーバ側アクセス情報削除手段２６４は、終了検知手段２６３が送信したアプリケーション終了通知に対する応答としてアプリケーション識別子を付加したアプリケーション終了応答を端末装置３から受信したとき、サーバ側記憶部２３を参照して、そのアプリケーション識別子と端末ＩＰアドレスとの組に付加された参照カウンタの値が２以上であれば、参照カウンタの値を−１し、参照カウンタの値が１であれば、その組の情報をサーバ側記憶部２３から削除する機能を有する。
【００５７】
端末装置３のアプリケーション起動依頼装置３６における端末側アクセス情報設定手段３６３は、サーバ識別子３１１を端末側記憶部３１に登録する際、同じサーバ識別子３１１が端末側記憶部３１に既に登録されていれば、その登録されている組に付加されている参照カウンタ３１２の値を１だけ加算し、未登録であれば、初期値１に設定した参照カウンタ３１２を付加したサーバ識別子３１１を端末側記憶部３１に登録する。参照カウンタ２３４は、それと組になっているサーバ識別子を持つサーバ装置２上で当該端末装置３から起動したアプリケーションが何個動作しているかを示す。
【００５８】
端末装置３の端末側アクセス情報削除手段３６４は、サーバ装置２のアプリケーション状態管理装置２６における終了検知手段２６３からサーバ識別子およびアプリケーション識別子を付加したアプリケーション終了通知を受信したとき、端末側記憶部３１を参照して、同じサーバ識別子３１１に付加された参照カウンタ３１２の値が２以上であれば、参照カウンタ３１２の値を−１し、参照カウンタ３１２の値が１であれば、その組の情報を端末側記憶部３１から削除し、アプリケーション識別子を付加したアプリケーション終了応答をサーバ装置２のアプリケーション状態管理装置２６に送信する機能を有する。
【００５９】
次に、図７のブロック図および図８乃至図１１のフローチャートを参照して、本実施の形態の動作を説明する。
【００６０】
端末装置３からサーバ装置２に対してアプリケーション２１−ｉの起動依頼を送信してから、その応答としてアプリケーション２１−ｉの証明書２２−ｉとサーバ識別子２５をサーバ装置２から受信し、その証明書２２−ｉがルート証明書３３−１〜３３−ｍの何れかを用いて検証可能か否かを判定し、検証に成功したルート証明書の識別子に対応するポート番号集合をポート番号一覧記憶部３４から抽出するまでの端末装置３の動作と、何れのルート証明書でも検証に失敗した場合の端末装置３の動作は、第１の実施の形態における動作と同じである（図８のステップＡ１〜Ａ７）。また、サーバ装置２が端末装置３からアプリケーション２１−ｉの起動依頼を受信してから、その証明書２２−ｉを送信し、その応答としてポート番号集合またはエラー通知を受信するまでのサーバ装置２の動作は、第１の実施の形態における動作と同じである（図９のステップＢ１〜Ｂ５）。
【００６１】
端末装置３の端末側アクセス情報設定手段３６３は、ポート番号一覧記憶部３４から抽出されたポート番号集合を受け取ると、起動依頼手段３６１から受け取っていたサーバ識別子２５と同じサーバ識別子３１１が端末側記憶部３１に既に登録されているかどうかを調べる（図８のステップＡ１１）。若し、同じサーバ識別子が未だ登録されていなければ（ステップＡ１１でＮＯ）、今回のサーバ識別子２５と初期値１に設定した参照カウンタ３１２の組を端末側記憶部３１に登録し（ステップＡ１５）、サーバ装置２のアプリケーション状態管理装置２６に前記受け取ったポート番号集合を送信する（ステップＡ１６）。他方、今回のサーバ識別子２５と同じサーバ識別子３１１が端末側記憶部３１に登録されていたならば（ステップＡ１１でＹＥＳ）、そのサーバ識別子３１１に対応する参照カウンタ３１２の値を読み出し（ステップＡ１２）、読み出した値に１を加え（ステップＡ１３）、この加算後の値を元の参照カウンタ３１２に書き込む（ステップＡ１４）。そして、サーバ装置２のアプリケーション状態管理装置２６に前記受け取ったポート番号集合を送信する（ステップＡ１６）。
【００６２】
サーバ装置２のアプリケーション状態管理装置２６におけるサーバ側アクセス情報設定手段２６２は、端末装置３から起動依頼のあったアプリケーション２１−１にかかるポート番号集合を受信すると（図９のＢ４でＹＥＳ）、そのアプリケーション２１−１のアプリケーション識別子と端末装置３のＩＰアドレスとを含む組がサーバ側記憶部２３に既に登録されているかどうかを調べ（ステップＢ１１）、未だ登録されていなければ、アプリケーション２１−ｉのアプリケーション識別子２３１と受信したポート番号集合２３２と端末装置３のＩＰアドレス２３３と初期値１に設定した参照カウンタ２３４の組をサーバ側記憶部２３に登録し（ステップＢ１５）、アプリケーション２１−１を起動する（ステップＢ７）。他方、アプリケーション２１−１のアプリケーション識別子と端末装置３のＩＰアドレスとを含む組がサーバ側記憶部２３に登録されていれば（ステップＢ１１でＹＥＳ）、その組の参照カウンタ２３４の値を読み出し（ステップＢ１２）、読み出した値に１を加え（ステップＢ１３）、この加算後の値を元の参照カウンタ２３４に書き込む（ステップＢ１４）。そして、アプリケーション２１−１を起動する（ステップＢ７）。
【００６３】
次に、サーバ装置２上で動作していた任意のアプリケーション２１−ｉが停止した際の動作を説明する。
【００６４】
サーバ装置２のアプリケーション状態管理装置２６における終了検知手段２６３は、アプリケーション２１−ｉの終了を検知すると（図１０のステップＶ１）、そのアプリケーション２１−ｉの起動依頼を送信した端末装置３のアプリケーション起動依頼装置３６にサーバ識別子２５および終了するアプリケーション２１−ｉのアプリケーション識別子を付加したアプリケーション終了通知を送信する（ステップＶ２）。なお、アプリケーション２１−ｉの起動依頼を送信した端末装置３は、そのアプリケーション２１−ｉのアプリケーション識別子をキーにサーバ側記憶部２３を検索し、同じアプリケーション識別子２３１を含む組の端末ＩＰアドレス２３３から特定することができる。また、複数の端末装置３から同じアプリケーション２１−ｉが起動される環境にあっては、サーバ装置２で動作する各アプリケーション２１−１〜２１−ｎが何れの端末装置３からの起動依頼で起動されたものであるかをテーブルによって管理しておくことにより可能である。その後、アプリケーション状態管理装置２６は、アプリケーション起動依頼装置３６からのアプリケーション終了応答を待つ（ステップＶ３）。
【００６５】
端末装置３のアプリケーション起動依頼装置３６における端末側アクセス情報削除手段３６４は、サーバ装置２のアプリケーション状態管理装置２６の終了検知手段２６３からサーバ識別子２５およびアプリケーション識別子を付加したアプリケーション終了通知を受信すると（図１１のステップＷ１）、アプリケーション終了通知に付加されたサーバ識別子をキーとして端末側記憶部３１を検索し、同じサーバ識別子３１１と組となる参照カウンタ３１２の値を読み出す（ステップＷ２）。参照カウンタ３１２の値が１のとき（ステップＷ３でＹＥＳ）、端末側アクセス情報削除手段３６４は、そのサーバ識別子３１１と参照カウンタ３１２の組を端末側記憶部３１から削除する（ステップＷ４）。そして、端末側アクセス情報削除手段３６４は、アプリケーション２１−１のアプリケーション識別子を付加したアプリケーション終了応答をサーバ装置２のアプリケーション状態管理装置２６に送信する（ステップＷ７）。他方、参照カウンタの値が１以外のときは、読み出した参照カウンタ３１２の値を１減らし（ステップＷ５）、元の参照カウンタ３１２に書き込む（ステップＷ６）。そして、サーバ装置２のアプリケーション状態管理装置２６にアプリケーション２１−１のアプリケーション識別子を付加したアプリケーション終了応答を送信する（ステップＷ７）。
【００６６】
サーバ装置２のアプリケーション状態管理装置２６におけるサーバ側アクセス情報削除手段２６４は、端末装置３からアプリケーション２１−１のアプリケーション識別子を付加したアプリケーション終了応答を受信すると（図１０のステップＶ３でＹＥＳ）、そのアプリケーション識別子と端末装置３のＩＰアドレスをキーとしてサーバ側記憶部２３を検索し、組となる参照カウンタ２３４の値を読み出す（ステップＶ４）。参照カウンタの値が１のとき（ステップＶ５でＹＥＳ）、サーバ側アクセス情報削除手段２６４は、そのアプリケーション識別子と端末のＩＰアドレスとを含む組を、サーバ側記憶部２３から削除する（ステップＶ６）。他方、参照カウンタ２３４の値が１以外のとき、読み出した参照カウンタ２３４の値を１減らし（ステップＶ７）、元の参照カウンタ２３４に書き戻す（ステップＶ８）。
【００６７】
次に本実施の形態の効果について説明する。
【００６８】
本実施の形態によれば、第１の実施の形態と同様の効果が得られると共に、端末装置３から起動された或るアプリケーション２１−ｉが多重起動を含めて全て終了したときに、サーバ側記憶部２３からそのアプリケーション２１−ｉに関連する情報が自動的に削除されるため、サーバ側記憶部２３の有効利用が可能になると同時に、不要な情報が残存しないためサーバ側ファイアウォール２４によるサーバ側記憶部２３の検索効率の低下を防止できる。
【００６９】
また本実施の形態によれば、端末装置３が起動した全てのアプリケーション２１−１〜２１−ｎが停止したときに、端末側記憶部３１から端末装置３のサーバ識別子を含む組が自動的に削除されるため、端末側記憶部３１の有効利用が可能になると同時に、不要な情報が残存しないため端末側ファイアウォール３２による端末側記憶部３１の検索効率の低下を防止できる。
【００７０】
さらに本実施の形態によれば、端末装置３から起動された或るアプリケーション２１−ｉが多重起動を含めて全て終了したときに、サーバ側記憶部２３からそのアプリケーション２１−ｉに関連する情報が自動的に削除され、また、端末装置３が起動した全てのアプリケーション２１−１〜２１−ｎが停止したときに、端末側記憶部３１から端末装置３のサーバ識別子を含む組が自動的に削除されるため、それらの情報が残存することに起因する不正アクセスの発生を防止することができる。
【実施例１】
【００７１】
次に、本発明の第１の実施例を、図面を参照して説明する。かかる実施例は本発明の第１の実施の形態に対応するものである。
【００７２】
図１２を参照すると、本実施例は、端末装置２としてＸサーバ（図示せず）の動作する携帯電話３００を、サーバ装置２としてＸクライアントの動作するLinuxサーバ２００をそれぞれ使用し、これらはネットワーク１００を通じて相互に通信可能に接続されている。
【００７３】
またLinuxサーバ２００は、アプリケーション状態管理装置２６としてアプリケーションマネージャ２６００を、サーバ側記憶部２３としてサーバ側データベース２３００を、アプリケーション２１−１、２１−２としてメーラ２１００−１とテキストエディタ２１００−２を、メーラ２１００−１に対応する証明書として証明書２２００−１を、テキストエディタ２１００に対応する証明書として証明書２２００−２を、サーバ側ファイアウォール２４としてサーバ側ファイアウォール２４００をそれぞれ備えている。さらに、携帯電話３００は、アプリケーション起動依頼装置３６としてアプリケーションランチャー３６００を、端末側記憶部３１として端末側データベース３１００を、ポート番号一覧記憶部３４としてポート番号一覧データベース３４００を、携帯電話内のルート証明書としてルート証明書３３００−１とルート証明書３３００−２を、検証装置３５として検証装置３５００を、端末側ファイアウォール３２として端末側ファイアウォール３２００をそれぞれ備えている。
【００７４】
ここで、証明書２２００−１はルート証明書３３００−１で検証されるものとし、証明書２２００−２はルート証明書３３００−２で検証されるものとする。また、アプリケーションの識別子にはアプリケーションのフルパス名を用い、メーラ２１００−１は「/usr/local/bin/mailer」、テキストエディタ２１００−２は「/usr/local/bin/editor」とする。さらに、サーバ識別子２５としてLinuxサーバ２００のＩＰアドレスを使用し、ルート証明書３３００−１とルート証明書３３００−２の識別子をＩＤ１とＩＤ２とする。
【００７５】
また図１３に示すように、ポート番号一覧データベース３４００には、ルート証明書３３００−１のＩＤ１に対応して、ポート番号集合「２１、１１０、３０００」が、ルート証明書３３００−２のＩＤ２に対応して、ポート番号集合「３０００」が登録されている。
【００７６】
今、携帯電話３００の利用者による操作に応答して、アプリケーションランチャー３６００がメーラ２１００−１の起動を依頼したとする。
【００７７】
アプリケーションマネージャ２６００では、メーラ２１００−１の起動依頼を受信すると、メーラ２１００−１に対応する証明書２２００−１をアプリケーションランチャー３６００に送信する。この送信はＴＣＰ／ＩＰパケットで行われ、パケットヘッダ中に設定される送信元ＩＰアドレスがLinuxサーバのＩＰアドレス、つまりサーバ識別子になる。
【００７８】
アプリケーションランチャー３６００は、証明書２２００−１を受信すると、検証装置３５００にこの証明書２２００−１を渡す。
【００７９】
検証装置３５００は、証明書２２００−１を携帯電話内のルート証明書３３００−１、ルート証明書３３００−２の順に用いて検証を試みる。証明書２２００−１はルート証明書３３００−１で検証可能なため、ルート証明書３３００−１のＩＤ１が検証装置３５００からアプリケーションランチャー３６００に渡される。
【００８０】
アプリケーションランチャー３６００は、受け取ったＩＤ１と組みとなるポート番号集合「２１、１１０、３０００」をポート番号一覧データベース３４００から取得する。そして、Linuxサーバ２００のＩＰアドレスを端末側データベース３１００に格納し、ポート番号集合「２１、１１０、３０００」をアプリケーションマネージャ２６００に送信する。
【００８１】
アプリケーションマネージャ２６００は、ポート番号集合「２１、１１０、３０００」を受信すると、メーラ２１００−１のアプリケーション識別子「/usr/local/bin/mailer」と、携帯電話３００のＩＰアドレスと、ポート番号集合「２１、１１０、３０００」との組をサーバ側データベース２３００に格納する。そして、メーラ２１００−１を起動する。
【００８２】
この後、起動されたメーラ２１００−１がＸクライアントとして携帯電話３００のＸサーバに接続するために、携帯電話３００のポート３０００番にアクセスを試みたとする。
【００８３】
このときサーバ側ファイアウォール２４００は、メーラ２１００−１による携帯電話３００のＩＰアドレスのポート３０００番へのアクセスを検知する。サーバ側ファイアウォール２４００は、メーラ２１００−１のアプリケーション識別子「/usr/local/bin/mailer」と携帯電話のＩＰアドレスとをキーとして、サーバ側データベース２３００からポート番号集合の取得を試みる。本実施例では、ポート番号集合として「２１、１１０、３０００」を取得する。ポート３０００番はこのポート番号集合に含まれるため、メーラ２１００−１による携帯電話のポート３０００番へのアクセスは許可される。
【００８４】
また、端末側ファイアウォール３２００は、Linuxサーバ２００からのポート３０００番へのアクセスを検知すると、Linuxサーバ２００のＩＰアドレスが端末側データベース３１００に格納されているかどうかを調べる。今の例では、Linuxサーバ２００のＩＰアドレスは端末側データベース３１００に格納されているため、Linuxサーバ２００からのポート３０００番へのアクセスは許可される。
【００８５】
こうして、起動されたメーラ２１００−１がＸクライアントとして携帯電話３００のＸサーバと通信することにより、携帯電話３００の利用者はＸサーバによって携帯電話の表示装置に表示されるメーラの操作画面を通じて、Linuxサーバ２００上で動作するメーラ２１００−１を操作することができる。
【００８６】
次に、携帯端末３００とは異なる図示しない別の端末装置により起動されたテキストエディタ２１００−２が携帯電話３００のポート１０００番にアクセスを試みた場合を想定する。このときサーバ側ファイアウォール２４００は、テキストエディタ２１００−２による携帯電話３００のＩＰアドレスのポート１０００番へのアクセスを検知し、テキストエディタ２１００−２のアプリケーション識別子「/usr/local/bin/editor」と携帯電話３００のＩＰアドレスとをキーとしてサーバ側データベース２３００からポート番号集合の取得を試みるが、ポート番号集合の取得に失敗する。このため、携帯電話３００からの起動指示による正常なルートで起動されていないテキストエディタ２１００−２による携帯電話３００への不正なアクセスは拒否される。
【実施例２】
【００８７】
次に本発明の第２の実施例を説明する。かかる実施例は、本発明の第２の実施の形態に対応するものである。
【００８８】
本実施例は、第１の実施例と同じく図１２に示す構成を有するが、端末側データベース３１００とサーバ側データベース２３００に格納する項目の組は、それぞれ参照カウンタを持ち、アプリケーションランチャー３６００が端末側アクセス情報削除手段３６４の機能も備えて、アプリケーションマネージャ２６００が終了検知手段２６３およびサーバ側アクセス情報削除手段２６４の機能も備えている点で第１の実施例と異なる。
【００８９】
今、アプリケーションランチャー３６００がメーラ２１００−１の起動を依頼したとする。メーラ２１００−１の起動手順は、第１の実施例と同じであるが、端末側データベース３１００とサーバ側データベース２３００への項目登録時に、参照カウンタの値として１を登録する点が第１の実施例と異なる。今、携帯電話３００からの起動依頼で起動中のアプリケーションが一つもないとすると、メーラ２１００−１の起動依頼が正常に処理されることによって、図１４に示すように、端末側データベース３１００には、Linuxサーバ２００のＩＰアドレスと参照カウンタの値「１」との組が登録され、サーバ側データベース２３００には、メーラ２１００−１のアプリケーション識別子「/usr/local/bin/mailer」と携帯電話３００のＩＰアドレスとポート番号集合「２１、１１０、３０００」と参照カウンタの値「１」との組みが登録される。
【００９０】
この後、起動されたメーラ２１００−１がＸクライアントとして携帯電話３００のＸサーバと通信することにより、携帯電話３００の利用者はLinuxサーバ２００上で動作するメーラ２１００−１を操作することができる。そして、その後にメーラ２１００−１が終了したとする。
【００９１】
アプリケーションマネージャ２６００は、メーラ２１００−１の終了を検知し、アプリケーション終了通知をアプリケーションランチャー３６００に送信する。
【００９２】
アプリケーションランチャー３６００は、アプリケーション終了通知を受信すると、Linuxサーバ２００のＩＰアドレスをキーとして端末側データベース３１００を検索し、参照カウンタの値を取得する。図１４の場合、参照カウンタの値は１なので、端末側データベース３１００からLinuxサーバ２００のＩＰアドレスと参照カウンタの値との組を削除する。その後、アプリケーションマネージャ２６００にアプリケーション終了応答を送信する。
【００９３】
アプリケーションマネージャ２６００は、アプリケーション終了応答を受信すると、メーラ２１００−１のアプリケーション識別子「/usr/local/bin/mailer」と携帯電話のＩＰアドレスをキーとしてサーバ側データベース２３００を検索し、参照カウンタの値を取得する。図１４の場合、参照カウンタの値は１なので、サーバ側データベース２３００からメーラ２１００−１のアプリケーション識別子と携帯電話３００のＩＰアドレスとポート番号集合と参照カウンタの値との組を削除する。
【産業上の利用可能性】
【００９４】
本発明によれば、ＸサーバとＸクライアントのようなクライアント・サーバ型で動作するアプリケーションの動作時に、クライアントアプリケーションからサーバへのアクセスを、サーバが許可するアクセスのみに制限する用途に適用できる。
【図面の簡単な説明】
【００９５】
【図１】本発明の第１の実施の形態のブロック図である。
【図２】本発明の第１の実施の形態にかかる端末装置におけるアプリケーション起動依頼装置の動作を示す流れ図である。
【図３】本発明の第１の実施の形態にかかるサーバ装置におけるアプリケーション状態管理装置の動作を示す流れ図である。
【図４】本発明の第１の実施の形態にかかる端末装置における検証装置の動作を示す流れ図である。
【図５】本発明の第１の実施の形態にかかるサーバ装置におけるサーバ側ファイアウォールの動作を示す流れ図である。
【図６】本発明の第１の実施の形態にかかる端末装置における端末側ファイアウォールの動作を示す流れ図である。
【図７】本発明の第２の実施の形態のブロック図である。
【図８】本発明の第２の実施の形態にかかる端末装置におけるアプリケーション起動依頼装置の動作を示す流れ図である。
【図９】本発明の第２の実施の形態にかかるサーバ装置におけるアプリケーション状態管理装置の動作の一部を示す流れ図である。
【図１０】本発明の第２の実施の形態にかかるサーバ装置におけるアプリケーション状態管理装置の動作の一部を示す流れ図である。
【図１１】本発明の第２の実施の形態にかかる端末装置におけるアプリケーション起動依頼装置の動作を示す流れ図である。
【図１２】本発明の第１、第２の実施例のブロック図である。
【図１３】本発明の第１の実施例におけるポート番号一覧データベースの具体例を示す図である。
【図１４】本発明の第２の実施例における端末側データベースとサーバ側データベースの具体例を示す図である。
【図１５】従来技術のブロック図である。
【符号の説明】
【００９６】
１…ネットワーク
２…サーバ装置
２１−１〜２１−ｎ…アプリケーション
２２−１〜２２−ｎ…証明書
２３…サーバ側記憶部
２３１…アプリケーション識別子
２３２…ポート番号集合
２３３…端末ＩＰアドレス
２３４…参照カウンタ
２４…サーバ側ファイアウォール
２５…サーバ識別子
２６…アプリケーション状態管理装置
２６１…起動依頼受信手段
２６２…サーバ側アクセス情報設定手段
２６３…終了検知手段
２６４…サーバ側アクセス情報削除手段
３…端末装置
３１…端末側記憶部
３１１…サーバ識別子
３１２…参照カウンタ
３２…端末側ファイアウォール
３３−１〜３３−ｍ…ルート証明書
３４…ポート番号一覧記憶部
３４１…ルート証明書の識別子
３４２…ポート番号集合
３５…検証装置
３６…アプリケーション起動依頼装置
３６１…起動依頼手段
３６２…証明書検証手段
３６３…端末側アクセス情報設定手段
３６４…端末側アクセス情報削除手段
【図１】
2006209322.tif 000003
【図２】
2006209322.tif 000004
【図３】
2006209322.tif 000005
【図４】
2006209322.tif 000006
【図５】
2006209322.tif 000007
【図６】
2006209322.tif 000008
【図７】
2006209322.tif 000009
【図８】
2006209322.tif 000010
【図９】
2006209322.tif 000011
【図１０】
2006209322.tif 000012
【図１１】
2006209322.tif 000013
【図１２】
2006209322.tif 000014
【図１３】
2006209322.tif 000015
【図１４】
2006209322.tif 000016
【図１５】
2006209322.tif 000017