JP2004199307A - Session identifier management system, session identifier management method and program - Google Patents

Session identifier management system, session identifier management method and program Download PDF

Info

Publication number
JP2004199307A
JP2004199307A JP2002366108A JP2002366108A JP2004199307A JP 2004199307 A JP2004199307 A JP 2004199307A JP 2002366108 A JP2002366108 A JP 2002366108A JP 2002366108 A JP2002366108 A JP 2002366108A JP 2004199307 A JP2004199307 A JP 2004199307A
Authority
JP
Japan
Prior art keywords
session
session identifier
terminal
identifier
session object
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.)
Pending
Application number
JP2002366108A
Other languages
Japanese (ja)
Inventor
Hikari Ryuba
光 柳葉
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2002366108A priority Critical patent/JP2004199307A/en
Publication of JP2004199307A publication Critical patent/JP2004199307A/en
Pending legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To facilitate prediction of a session identifier in a system establishing a session between a host computer and a terminal to execute communication. <P>SOLUTION: When connection is required from the terminal 2B, the host computer 1 generates a session object 421B which manages information about the terminal 2B and a session identifier B for uniquely identifying the session object 421B. The host computer 1 adds the session identifier B to the session object 421B, stores the session object 421B into a session object storage area 42, and transmits the session identifier B to the terminal 2B. When a message is sent from the terminal 2B being in a session connection state, the host computer 1 generates a new session identifier B1, replaces the session identifier B in the session object 421B with the new session identifier B1, and transmits the new session identifier B1 to the terminal 2B. <P>COPYRIGHT: (C)2004,JPO&NCIPI

Description

【0001】
【発明の属する技術分野】
本発明は、複数の端末との間に論理的通信経路(セッション)を確立して通信を行うホストコンピュータにおけるセッション識別子管理技術に関し、特に、セッション識別子の予測を極めて困難なものにすることができるセッション識別子管理技術に関する。
【0002】
【従来の技術】
ネットワークを介して接続された端末とホストコンピュータからなるオンラインシステムにおいては、クライアント・サーバモデルあるいは3層モデルの普及に伴い、端末数および通信量は増大の一途を辿り、通信経路の枯渇が問題となることが多い。このような問題を解決するため、論理通信経路を2層(コネクション層,セッション層)に分割し、コネクションを複数のセッションで共有利用するということが従来から行われている。この従来の技術を詳しく説明すると、次のようになる。
【0003】
端末とのセッション接続時に、ホストコンピュータは、端末に関する情報(システムに応じて必要な情報を設計すれば良く、例えば、端末のプロトコルや、ポート番号などを含めることができる)を管理するセッションオブジェクト及び上記セッションオブジェクトを一意に識別するためのセッション識別子を生成する。その後、セッションオブジェクトにセッション識別子を付加して格納領域に格納し、更に、セッション識別子をネットワークを介して端末へ送信する。
【0004】
これ以降、端末はホストコンピュータへメッセージを送信する際、ホストコンピュータから送られてきているセッション識別子をメッセージに付加する。
【0005】
ホストコンピュータは、端末からセッション識別子の付加されたメッセージが送られてくると、格納領域を検索し、該当するセッションオブジェクトを取得する。そして、取得したセッションオブジェクトと端末からのメッセージとに従って業務処理を行う。
【0006】
上記の制御により、一時切断され再接続されたコネクションや異なるコネクション、あるいは全く別の中継装置を経由したメッセージについてもホストコンピュータ側で要求元の実端末を認識することができる。すなわち、コネクションとセッションの独立性が高められ、ネットワーク資源を有効に活用することができる。
【0007】
ところで、上述した従来の技術においては、なりすましによる不正アクセスを防止するために、セッション識別子が容易に推測されないようにすることが重要である。セッション識別子の推測を困難にする従来の技術としては、セッション接続時にセッション識別子を生成する際、その生成時刻を含んだセッション識別子を生成する技術が知られている(例えば、特許文献1参照)。
【0008】
【特許文献1】
特開2000−163346号公報
【0009】
【発明が解決しようとする課題】
しかしながら、特許文献1に記載されている従来の技術は、セッション接続状態にある間、同一のセッション識別子を継続して使用しているため、使用中のセッション識別子が予測されてしまう危険性を十分に少なくすることは難しい。即ち、長時間にわたって同一のセッション識別子が使用されることになるため、セッション識別子が予測されてしまう危険性がある。
【0010】
そこで、本発明の目的は、セッション識別子の予測を極めて困難なものとすることにより、不正アクセスが行われる危険性を極めて少なくできるようにすることにある。
【0011】
【課題を解決するための手段】
本発明にかかる第1のセッション識別子管理装置は、上記目的を達成するため、
セッション接続状態にある端末毎に、その端末に関する情報を管理するセッションオブジェクトを、そのセッションオブジェクトを一意に識別するセッション識別子を用いて管理し、端末からセッション識別子の付加されたメッセージが送られてきた場合、該メッセージに付加されているセッション識別子によって特定されるセッションオブジェクトを検索するホストコンピュータにおけるセッション識別子管理装置であって、
端末がセッション接続状態にあるときに、前記端末のセッションオブジェクトを特定するセッション識別子を変更し、変更後のセッション識別子を前記端末に送信する手段を備えたことを特徴とする。
【0012】
本発明にかかる第2のセッション識別子管理装置は、第1のセッション識別子管理装置において
前記手段が、前記端末からメッセージが送られてきたとき、前記端末のセッションオブジェクトを特定するセッション識別子を変更する構成を有することを特徴とする。
【0013】
より具体的には、本発明にかかる第3のセッション識別子管理装置は、
端末との間にセッションを確立して通信を行うホストコンピュータにおけるセッション識別子管理装置であって、
端末からの接続要求時、該端末に関する情報を管理するセッションオブジェクトを生成すると共にセッション識別子生成依頼を出力し、該セッション識別子生成依頼に応答して返却されたセッション識別子を前記セッションオブジェクトに付加して格納領域に格納すると共に前記端末へ送信するセッションオブジェクト生成手段と、
端末からセッション識別子の付加されたメッセージが送られてきたとき、前記付加されているセッション識別子によって特定されるセッションオブジェクトを格納領域から検索すると共にセッション識別子生成依頼を出力し、前記メッセージに付加されているセッション識別子によって特定されるセッションオブジェクト中のセッション識別子を前記セッション識別子生成依頼に応答して返却されたセッション識別子に変更し、更に、前記返却されたセッション識別子を前記端末に送信するセッションオブジェクト検索手段と、
セッション識別子生成依頼に応答して新たなセッション識別子を生成し、生成したセッション識別子を依頼元に返却するセッション識別子生成手段とを備えたことを特徴とする。
【0014】
本発明にかかる第4のセッション識別子管理装置は、第3のセッション識別子管理装置において、
識別子カウンタを備え、且つ、
前記セッション識別子生成手段が、セッション識別子生成依頼に応答して前記識別子カウンタをインクリメントし、インクリメント後の前記識別子カウンタのカウント値を含むセッション識別子を生成する構成を有することを特徴とする。
【0015】
本発明にかかる第5のセッション識別子管理装置は、第3のセッション識別子管理装置において、
前記セッション識別子生成手段が、セッション識別子生成依頼に応答して現在時刻を含むセッション識別子を生成する構成を有することを特徴とする。
【0016】
本発明にかかる第6のセッション識別子管理装置は、第5のセッション識別子管理装置において
前記格納領域に格納されている各セッションオブジェクトに付加されているセッション識別子に基づいて、所定時間以上無通信状態にある端末のセッションオブジェクトを削除する無通信端末削除手段を備えたことを特徴とする。
【0017】
【作用】
セッション接続中であっても、セッション識別子が変更されるので、セッション識別子の予測を極めて困難なものにすることができる。その結果、他端末になりすました不正アクセスが行われる危険性を極めて少ないものとすることができる。セッション識別子の変更は、例えば、端末からメッセージが送られてくる毎に行い、セッション識別子としては、例えば、メッセージが送られてきたときの時刻を含むものや、メッセージが送られてくる毎にインクリメントされる識別子カウンタの値を含むものなどを使用することができる。また、セッション識別子にメッセージが送られてきたときの時刻を含ませるようにすることにより、セッション識別子に基づいて所定時間以上無通信状態にある端末を検出し、その端末対応のセッションオブジェクトを格納領域から削除することができる。
【0018】
【発明の実施の形態】
次に本発明の実施の形態について図面を参照して詳細に説明する。
【0019】
【実施例の構成】
図1を参照すると、本発明の一実施例は、ホストコンピュータ1と、ホストコンピュータ1とネットワーク3を介して物理的に接続された端末2A、2B、2Cとからなる。ホストコンピュータ1と端末2A、2B、2Cとの間には、論理的な通信経路(セッション)が確立され、相互に通信を行う。
【0020】
ホストコンピュータ1は、メモリ4と、通信制御手段5と、端末接続処理手段6と、業務処理手段7と、端末切断処理手段8と、セッション識別子生成手段10と、セッションオブジェクト生成手段11と、セッションオブジェクト検索手段12と、セッションオブジェクト消滅手段13と、記録媒体K1とを備えている。
【0021】
メモリ4は、セッションオブジェクト管理テーブル41と、セッションオブジェクト格納領域42と、識別子カウンタ43とを備えている。
【0022】
セッションオブジェクト格納領域42には、接続状態にある各端末に関する情報を管理するセッションオブジェクトが格納される。図1の例では、端末2Aに関する情報を管理するためのセッションオブジェクト421Aと、端末2Bに関する情報を管理するためのセッションオブジェクト421Bとが格納されている。
【0023】
セッションオブジェクト管理テーブル41は、セッションオブジェクト格納領域42に格納されているセッションオブジェクト421A、421Bを管理するためのテーブルであり、項目としてエントリ番号及びセッションオブジェクトポインタを有している。図1に示したセッションオブジェクト管理テーブル41は、n個のエントリを有し、最大n個の端末に関するセッションオブジェクトを管理できるようになっている。各エントリのセッションオブジェクトポインタの項目は、黒丸から伸びる矢印でポインタ関係を表現している。白丸は空きエントリを表現している。例えば、エントリ2にはセッションオブジェクト421Bへのポインタが格納されている。また、エントリ1は空きエントリである。このような配列構成のセッションオブジェクト管理テーブル41を使用することにより、テーブル参照者はエントリ番号を指定して配列アクセスすることにより、ダイレクトに(極めて短時間で)セッションオブジェクトポインタを取得することができる。
【0024】
セッション識別子生成手段10は、セッションオブジェクト生成手段11或いはセッションオブジェクト検索手段12からのセッション識別子生成依頼に応答してセッションオブジェクトを一意に識別するためのセッション識別子を生成する機能や、生成したセッション識別子を依頼元に返却する機能を持つ。セッション識別子は図5の通り、エントリ番号と識別子カウンタの値とから構成される。例として図示しているのは、エントリ番号=2、識別子カウンタ=5のセッション識別子である。
【0025】
セッションオブジェクト生成手段11は、セッションオブジェクトを生成し、セッションオブジェクト格納領域42へ格納する機能や、セッションオブジェクト管理テーブル41中の空きエントリに、セッションオブジェクト格納領域42に格納したセッションオブジェクトへのポインタを格納する機能や、セッション識別子生成手段10に対してセッション識別子生成依頼を出力する機能や、セッションオブジェクト格納領域42に格納されているセッションオブジェクトに、セッション識別子生成手段10から返却されたセッション識別子を付加する機能等を持つ。
【0026】
セッションオブジェクト検索手段12は、端末からのメッセージに付加されているセッション識別子に基づいて、セッションオブジェクト管理テーブル41を検索し、該当するセッションオブジェクトへのポインタを取得する機能や、セッション識別子生成手段10に対してセッション識別子生成依頼を出力する機能や、取得したセッションオブジェクトポインタによって指し示されるセッションオブジェクト中のセッション識別子をセッション識別子生成手段10から返却されたセッション識別子に置き換える機能や、セッション識別子更新後のセッションオブジェクトを業務処理手段7に返却する機能等を有する。
【0027】
セッションオブジェクト消滅手段13は、端末からの切断要求に付加されているセッション識別子に基づいて、セッションオブジェクト管理テーブル41を検索し、該当するセッションオブジェクトへのポインタを取得する機能や、取得したセッションオブジェクトポインタによって指し示されるセッションオブジェクトをセッションオブジェクト格納領域42から削除する機能や、セッションオブジェクト管理テーブル41上の該当エントリを空きエントリに書き換える機能等を持つ。
【0028】
セッションオブジェクト管理テーブル41とセッションオブジェクト格納領域42と識別子カウンタ43へのアクセスは、ロック14にて排他制御を行う。
【0029】
通信制御手段5は、端末2A〜2Cとの通信を制御し、端末2A〜2Cからの接続要求、切断要求、メッセージを判別し、それぞれ端末接続処理手段6、端末切断処理手段8、業務処理手段7へ通知する機能や、接続処理手段6あるいは業務処理手段7からの指示によりセッション識別子を端末2A〜2Cへ配布する機能を持つ。
【0030】
記録媒体K1は、ディスク、半導体メモリ、その他の記録媒体である。この記録媒体K1に記録されているプログラムは、ホストコンピュータ1によって読み取られ、その動作を制御することで、ホストコンピュータ1上に、通信制御手段5、端末接続処理手段6、業務処理手段7、端末切断処理手段8、セッション識別子生成手段10、セッションオブジェクト生成手段11、セッションオブジェクト検索手段12、セッションオブジェクト消滅手段13、セッションオブジェクト管理テーブル41、セッションオブジェクト管理領域42、識別子カウンタ43を実現する。
【0031】
【実施例の動作の説明】
次に、各図を参照して本実施例の動作について詳細に説明する。
【0032】
端末(例えば、端末2B)からホストコンピュータ1への接続要求が発生したとき、通信制御手段5は、その接続要求を認識し、端末接続処理手段6へ接続要求を通知する(図7、ステップS71、S72)。接続要求を受信した端末接続処理手段6は、セッションオブジェクト生成手段11へセッションオブジェクトの生成を要求する。
【0033】
セッションオブジェクト生成手段11は、上記要求に応答して図2の流れ図に示す処理を行う。
【0034】
先ず、排他制御のため、ロック14を取得する(ステップS201)。その後、セッションオブジェクト管理テーブル41から空きエントリを検索する(ステップS202)。
【0035】
そして、空きエントリが存在しない場合は、セッションオブジェクト生成失敗とし、ロック14を開放して動作を終了する(ステップS203がNO、S210、S209)。
【0036】
これに対して、空きエントリが存在した場合は、セッションオブジェクト(例えば、セッションオブジェクト421B)を新規に生成し、セッションオブジェクト格納領域42へ格納する(ステップS203がYES、S204、S205)。その後、ステップS202で検索した空きエントリに、セッションオブジェクト421Bへのポインタを格納する(ステップS206)。更に、セッションオブジェクト生成手段11は、セッション識別子生成手段10に対し、ステップS202で検索したエントリのエントリ番号を渡し、セッション識別子の生成を依頼する(ステップS207)。
【0037】
このセッション識別子生成依頼に応答して、セッション識別子生成手段10は、図6の流れ図に示すように、識別子カウンタ43をインクリメントし(ステップS61)、インクリメント後の識別子カウンタ43の値と、入力されたエントリ番号とを組み合わせた図5に示すようなセッション識別子を生成し、生成したセッション識別子(例えば、セッション識別子B)をセッションオブジェクト生成手段11に返却する(ステップS62)。
【0038】
セッションオブジェクト生成手段11は、セッション識別子生成手段10から返却されたセッション識別子Bを、セッションオブジェクト格納領域42内のセッションオブジェクト421Bに付加し、その後、ロック14を解放して動作を終了する(図2、ステップS208、S209)。
【0039】
端末接続処理手段6は、セッションオブジェクト生成手段11の動作結果(成功・失敗)を判断することができ、生成成功の場合には端末接続を成功とし、セッション識別子Bを通信制御手段5を通じて端末2Bへ配布する。これに対して、生成失敗の場合には端末接続を失敗とし、接続拒否の旨を通信制御手段5を通じて端末2Bへ通知する。
【0040】
端末2Bは、ホストコンピュータ1からセッション識別子Bが送られてくると、それをセッション識別子記憶部(図示せず)に格納する。その後、端末2Bは、業務処理をホストコンピュータ1に依頼するメッセージが自端末内に発生すると、セッション識別子記憶部に格納されているセッション識別子Bをメッセージに付加してホストコンピュータ1へ送信する。
【0041】
端末2Bからセッション識別子Bの付加されたメッセージが送られてくると、ホストコンピュータ1内の通信制御手段5は、そのメッセージを認識し、業務処理手段7に通知する(図7、ステップS71、S73)。
【0042】
業務処理手段7は、メッセージに付加されているセッション識別子Bを抽出し、セッションオブジェクト検索手段12へ検索を依頼する。その際、セッション識別子Bを入力として渡す。
【0043】
この依頼に応答して、セッションオブジェクト検索手段12は、図3の流れ図に示す処理を行う。
【0044】
先ず、ロック14を取得する(ステップS31)。その後、入力されたセッション識別子Bから“エントリ番号"を抽出し、この“エントリ番号”を使用してセッションオブジェクト管理テーブル41に配列アクセスする(ステップS32)。配列アクセスのため検索に要する時間は極めて短時間となり、該当するセッションオブジェクト421Bへのポインタ(セッションオブジェクトポインタ)を瞬時に取得することができる。
【0045】
セッションオブジェクト管理テーブル41の該当するエントリに、セッションオブジェクトポインタが格納されていない場合は、セッションオブジェクト検索失敗とし、ロック14を開放後、処理を終了する(ステップS33がNO、S40、S39)。これは、セッションオブジェクトは既に消滅済みであることを意味する。
【0046】
これに対して、セッションオブジェクト管理テーブル41の該当するエントリにセッションオブジェクトポインタが格納されている場合には、上記セッションオブジェクトポインタによって指し示されるセッションオブジェクト421B中のセッション識別子の値と、入力されたセッション識別子Bの値とを比較する(ステップS34)。
【0047】
そして、セッション識別子が不一致であった場合には、セッションオブジェクト検索失敗とし、ロック14を開放した後、処理を終了する(ステップS34がNO、S40、S39)。これは、セッションオブジェクトは既に消滅済みで、且つ新たな端末の接続により該当エントリが再利用されていることを意味する。
【0048】
これに対して、セッション識別子が一致した場合には、セッションオブジェクト検索成功とし、セッション識別子生成手段10に対して新たなセッション識別子の生成を依頼する(ステップS35、S36)。その際、セッションオブジェクト検索手段12は、ステップS32で取得した“エントリ番号”をセッション識別子生成手段10に渡し、新たなセッション識別子の生成を依頼する。
【0049】
このセッション識別子生成依頼に応答して、セッション識別子生成手段10は、インクリメントした識別子カウンタ43のカウント値と、入力されたエントリ番号とから構成される新たなセッション識別子B1を生成し、セッションオブジェクト検索手段12に返却する(図6、ステップS61、S62)。
【0050】
セッションオブジェクト検索手段12は、セッション識別子生成手段10から新たなセッション識別子B1が返却されると、図3の流れ図に示すように、セッションオブジェクト421B中のセッション識別子Bを新たなセッション識別子B1に更新し、更新後のセッションオブジェクト421Bを業務処理手段7に返却する(ステップS37、S38)。その後、セッションオブジェクト検索手段12は、ロック14を開放し、処理を終了する(ステップS39)。
【0051】
セッションオブジェクト検索手段12により返却されたセッションオブジェクト421Bは、端末に関する情報が格納されており、業務処理手段7はセッションを意識した業務を行うことができる。すなわち、端末−ホストコンピュータ間の継続した通信を実現できることとなる。また、業務処理手段7は、端末からのメッセージによって依頼された業務処理の処理結果を示すメッセージを端末2Bに返信する際、新たなセッション識別子B1を付加して返信する。
【0052】
端末2Bは、新たなセッション識別子B1の付加されたメッセージを受信すると、セッション識別子記憶部に格納されているセッション識別子Bを、上記新たなセッション識別子B1で置き換える。その後、端末2B内にホストコンピュータ1へ送信するメッセージが発生すると、端末2Bは、セッション識別子格納部に格納されている新たなセッション識別子B1をメッセージに付加してホストコンピュータ1へ送信する。ホストコンピュータ1は、この新たなセッション識別子B1の付加されたメッセージを受信すると、再び前述した処理と同様の処理を行い、業務処理結果を示すメッセージを端末2Bに送信する際には、新たなセッション識別子B2をメッセージに付加して送信する。端末2B、ホストコンピュータ1は、端末2B内に切断要求が発生するまで、上述した処理を繰り返し行う。このように、本実施例では、セッション接続中においても、セッション識別子が変更されるので、セッション識別子の予測を極めて困難なものとすることができ、その結果、不正アクセスが行われる危険性を極めて少なくすることができる。
【0053】
端末2B内に切断要求が発生すると、端末2Bは、最新のセッション識別子(例えば、セッション識別子Bn)を含む切断要求をホストコンピュータ1へ送信する。ホストコンピュータ1内の通信制御手段5は、切断要求を受信すると、それを端末切断処理手段8に通知する(図7、ステップS71、S74)。これにより、端末切断処理手段8は、切断要求に含まれているセッション識別子Bnをセッションオブジェクト消滅手段13に渡し、該当するセッションオブジェクト421Bの消滅を要求する。
【0054】
この要求に応答して、セッションオブジェクト消滅手段13は、図4の流れ図に示す処理を行う。
【0055】
先ず、セッションオブジェクト消滅手段13は、ロック14を取得する(ステップS41)。その後、セッションオブジェクト消滅手段13は、セッション識別子Bnからエントリ番号を抽出し、このエントリ番号を使用してセッションオブジェクト管理テーブル41に配列アクセスする(ステップS42)。
【0056】
セッションオブジェクト管理テーブル41中の該当するエントリに、セッションオブジェクトポインタが格納されていない場合は、セッションオブジェクト消滅済みであると判断し、直ちにロック14を開放して処理を終了する(ステップS43がNO、S48、S47)。
【0057】
これに対して、セッションオブジェクト管理テーブル41の該当するエントリにセッションオブジェクトポインタが格納されている場合には、上記セッションオブジェクトポインタによって指し示されるセッションオブジェクト421B中のセッション識別子の値と、入力されたセッション識別子Bnの値とを比較する(ステップS44)。
【0058】
そして、セッション識別子が不一致であった場合には、ロック14を開放した後、動作を終了する(ステップS44がNO、S48、S47)。これは、セッションオブジェクトは既に消滅済みで、かつ、新たな端末の接続により該当エントリが再利用されていることを意味する。
【0059】
これに対して、セッション識別子が一致した場合には、該当するセッションオブジェクト421Bを消滅させ、セッションオブジェクト管理テーブル41の該当エントリを空きエントリに更新する(ステップS45、S46)。その後、ロック14を開放し(ステップS47)、処理を終了する。
【0060】
【発明の他の実施例】
次に、本発明の他の実施例について説明する。
【0061】
図8は本発明の他の実施例のブロック図であり、ホストコンピュータ1の代わりにホストコンピュータ1aを備えている点が図1に示した実施例と相違している。ホストコンピュータ1aは、識別子カウンタ43の代わりに時刻取得手段9を備えている点、セッション識別子生成手段10の代わりにセッション識別子生成手段10aを備えている点、無通信端末削除手段15が追加されている点、記録媒体K1の代わりに記録媒体K2を備えている点が図1に示したホストコンピュータ1と相違している。
【0062】
時刻取得手段9は、セッション識別子生成手段10aからの要求に応じて現在時刻を取得し、セッション識別子生成手段10aに返却する機能を有する。
【0063】
セッション識別子生成手段10aは、セッションオブジェクト生成手段11或いはセッションオブジェクト検索手段12からセッション識別子の生成を依頼された場合、図9に示すような、エントリ番号とメッセージ受信時刻とから構成されるセッション識別子を生成して依頼元に返却する機能を有する。例として図示しているのは、エントリ番号=2、メッセージ受信時刻=“2002.01.01 01:02:03"のセッション識別子である。
【0064】
無通信端末削除手段15は、セッションオブジェクト格納領域42に格納されているセッションオブジェクトの内、所定時間以上無通信状態の端末に対応するセッションオブジェクトを削除する機能を有する。
【0065】
記録媒体K2は、ディスク、半導体メモリ、その他の記録媒体である。この記録媒体K2に記録されているプログラムは、ホストコンピュータ1aによって読み取られ、その動作を制御することで、ホストコンピュータ1a上に、通信制御手段5、端末接続処理手段6、業務処理手段7、端末切断処理手段8、時刻取得手段9、セッション識別子生成手段10a、セッションオブジェクト生成手段11、セッションオブジェクト検索手段12、セッションオブジェクト消滅手段13、無通信端末削除手段15、セッションオブジェクト管理テーブル41、セッションオブジェクト管理領域42を実現する。
【0066】
【他の実施例の動作の説明】
次に本実施例の動作について説明する。本実施例は、セッション識別子生成手段10a及び無通信端末削除手段15の動作のみが図1の実施例の動作と異なるので、ここでは、セッション識別子生成手段10a及び無通信端末削除手段15の動作についてのみ説明する。
【0067】
セッション識別子生成手段10aは、セッションオブジェクト生成手段11或いはセッションオブジェクト検索手段12からエントリ番号を渡され、セッション識別子の生成を依頼されると(図2のステップS207或いは図3のステップS36)、図10の流れ図に示すように、時刻取得手段9に対して現在時刻の取得を依頼する(ステップS101)。この依頼に応答して、時刻取得手段9は現在時刻を取得し、セッション識別子生成手段10aに返却する。セッション識別子生成手段10aは、現在時刻が返却されると、入力されたエントリ番号と返却された現在時刻(メッセージ受信時刻)とから構成されるセッション識別子を生成し、依頼元(セッションオブジェクト生成手段11或いはセッションオブジェクト検索手段12)に返却する(ステップS102)。
【0068】
無通信端末削除手段15は、所定時間T毎に図11の流れ図に示す処理を行う。
【0069】
ステップS111では、セッションオブジェクト格納領域42に未注目のセッションオブジェクトが存在するか否かを判断する。そして、未注目のセッションオブジェクトが存在する場合には、その内の1つに注目する(ステップS111がYES、S112)。その後、注目しているセッションオブジェクト中のセッション識別子の構成要素であるメッセージ受信時刻と現在時刻との差分に基づいて、注目しているセッションオブジェクトに対応する端末が所定時間T以上無通信状態であるか否かを判断する(ステップS113)。そして、所定時間T以上無通信状態であると判断した場合(ステップS113がYES)は、注目しているセッションオブジェクトを削除する(ステップS114)。以上の処理を未注目のセッションオブジェクトがなくなるまで、繰り返し行う。長時間無通信状態の端末に対応するセッションオブジェクトは、切断通知漏れや、端末ストールなど通信管理上無意味なオブジェクトである可能性が高く、それを削除することは資源有効活用の観点から大いに意味がある。
【0070】
【発明の効果】
以上説明したように、本発明は、セッション接続中であっても、セッションオブジェクトを一意に識別するためのセッション識別子を変更するようにしているので、セッション識別子の予測を極めて困難なものにすることができる。この結果、他端末になりすました不正アクセスが行われる危険性を極めて少ないものにすることができる。
【0071】
また、所定時間以上無通信状態の端末に対応するセッションオブジェクトを格納領域から削除する無通信端末削除手段を備えているので、ホストコンピュータのメモリ資源を有効利用することができる。
【図面の簡単な説明】
【図1】本発明の一実施例のブロック図である。
【図2】セッションオブジェクト生成手段11の処理例を示す流れ図である。
【図3】セッションオブジェクト検索手段12の処理例を示す流れ図である。
【図4】セッションオブジェクト消滅手段13の処理例を示す流れ図である。
【図5】セッション識別子の構成例を示す図である。
【図6】セッション識別子生成手段10の処理例を示す流れ図である。
【図7】通信制御手段5の処理例を示す流れ図である。
【図8】本発明の他の実施例のブロック図である。
【図9】他の実施例におけるセッション識別子の構成例を示す図である。
【図10】セッション識別子生成手段10aの処理例を示す流れ図である。
【図11】無通信端末削除手段15の処理例を示す流れ図である。
【符号の説明】
1、1a…ホストコンピュータ
2A〜2C…端末
3…ネットワーク
4…メモリ
41…セッションオブジェクト管理テーブル
42…セッションオブジェクト格納領域
421A、421B…セッションオブジェクト
43…識別子カウンタ
5…通信制御手段
6…端末接続処理手段
7…業務処理手段
8…端末切断処理手段
9…時刻取得手段
10、10a…セッション識別子生成手段
11…セッションオブジェクト生成手段
12…セッションオブジェクト検索手段
13…セッションオブジェクト消滅手段
14…ロック
15…無通信端末削除手段
K1、K2…記録媒体
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a session identifier management technique in a host computer that establishes a logical communication path (session) with a plurality of terminals and performs communication, and in particular, makes it very difficult to predict a session identifier. The present invention relates to session identifier management technology.
[0002]
[Prior art]
In an online system composed of a terminal and a host computer connected via a network, the number of terminals and the amount of communication are steadily increasing with the spread of the client-server model or the three-layer model. Often become. In order to solve such a problem, it has been conventionally performed to divide a logical communication path into two layers (a connection layer and a session layer) and to share and use a connection in a plurality of sessions. The prior art will be described in detail below.
[0003]
At the time of session connection with the terminal, the host computer manages information relating to the terminal (the necessary information may be designed according to the system, and may include, for example, a terminal protocol and a port number). A session identifier for uniquely identifying the session object is generated. Thereafter, a session identifier is added to the session object and stored in the storage area, and the session identifier is transmitted to the terminal via the network.
[0004]
Thereafter, when transmitting the message to the host computer, the terminal adds the session identifier sent from the host computer to the message.
[0005]
When a message to which a session identifier is added is sent from the terminal, the host computer searches the storage area and acquires a corresponding session object. Then, business processing is performed according to the acquired session object and the message from the terminal.
[0006]
With the above control, the host computer can recognize the real terminal of the request source even for a connection that has been temporarily disconnected and reconnected, a different connection, or a message that has passed through a completely different relay device. That is, the independence of the connection and the session is enhanced, and the network resources can be effectively used.
[0007]
By the way, in the above-mentioned conventional technology, it is important to prevent the session identifier from being easily guessed in order to prevent unauthorized access due to spoofing. As a conventional technique that makes it difficult to estimate a session identifier, a technique of generating a session identifier including the generation time when a session identifier is generated at the time of session connection is known (for example, see Patent Document 1).
[0008]
[Patent Document 1]
JP 2000-163346 A
[0009]
[Problems to be solved by the invention]
However, the conventional technique described in Patent Literature 1 continuously uses the same session identifier while in the session connection state, so that the risk of predicting the session identifier in use is sufficiently low. It is difficult to reduce. That is, since the same session identifier is used for a long time, there is a risk that the session identifier is predicted.
[0010]
Therefore, an object of the present invention is to make it extremely difficult to predict a session identifier, so that the risk of unauthorized access can be extremely reduced.
[0011]
[Means for Solving the Problems]
A first session identifier management device according to the present invention achieves the above object,
For each terminal in the session connection state, a session object that manages information about the terminal is managed using a session identifier that uniquely identifies the session object, and a message with a session identifier added is sent from the terminal. In the case, a session identifier management device in a host computer that searches for a session object specified by a session identifier added to the message,
When the terminal is in the session connection state, a means is provided for changing a session identifier that specifies a session object of the terminal, and transmitting the changed session identifier to the terminal.
[0012]
The second session identifier management device according to the present invention is the first session identifier management device.
When the message is sent from the terminal, the means changes a session identifier for specifying a session object of the terminal.
[0013]
More specifically, the third session identifier management device according to the present invention includes:
A session identifier management device in a host computer that establishes a session with a terminal and performs communication,
At the time of a connection request from a terminal, a session object for managing information on the terminal is generated and a session identifier generation request is output, and a session identifier returned in response to the session identifier generation request is added to the session object. Session object generating means for storing in a storage area and transmitting to the terminal;
When a message with a session identifier added thereto is sent from a terminal, a session object specified by the added session identifier is searched from a storage area and a session identifier generation request is output, and the message is added to the message. A session identifier in the session object specified by the current session identifier to a session identifier returned in response to the session identifier generation request, and further transmitting the returned session identifier to the terminal. When,
Session identifier generating means for generating a new session identifier in response to the session identifier generation request, and returning the generated session identifier to the requestor.
[0014]
A fourth session identifier management device according to the present invention is a third session identifier management device,
An identifier counter, and
The apparatus is characterized in that the session identifier generation means increments the identifier counter in response to a session identifier generation request, and generates a session identifier including the incremented count value of the identifier counter.
[0015]
A fifth session identifier management device according to the present invention is the third session identifier management device,
The session identifier generation means may be configured to generate a session identifier including a current time in response to a session identifier generation request.
[0016]
A sixth session identifier management device according to the present invention is the fifth session identifier management device.
Wireless terminal deletion means for deleting a session object of a terminal in a non-communication state for a predetermined time or more based on a session identifier added to each session object stored in the storage area. .
[0017]
[Action]
Since the session identifier is changed even during the session connection, the prediction of the session identifier can be made extremely difficult. As a result, the risk of unauthorized access impersonating another terminal can be extremely reduced. The session identifier is changed, for example, every time a message is sent from the terminal. As the session identifier, for example, one that includes the time at which the message was sent, or one that is incremented each time a message is sent For example, one including the value of the identifier counter to be used can be used. Also, by including the time when the message was sent in the session identifier, a terminal in a non-communication state for a predetermined time or more is detected based on the session identifier, and a session object corresponding to the terminal is stored in the storage area. Can be deleted from.
[0018]
BEST MODE FOR CARRYING OUT THE INVENTION
Next, embodiments of the present invention will be described in detail with reference to the drawings.
[0019]
[Configuration of the embodiment]
Referring to FIG. 1, one embodiment of the present invention includes a host computer 1 and terminals 2A, 2B, and 2C physically connected to the host computer 1 via a network 3. A logical communication path (session) is established between the host computer 1 and the terminals 2A, 2B, 2C, and they communicate with each other.
[0020]
The host computer 1 includes a memory 4, a communication control unit 5, a terminal connection processing unit 6, a business processing unit 7, a terminal disconnection processing unit 8, a session identifier generation unit 10, a session object generation unit 11, It comprises an object searching means 12, a session object deleting means 13, and a recording medium K1.
[0021]
The memory 4 includes a session object management table 41, a session object storage area 42, and an identifier counter 43.
[0022]
The session object storage area 42 stores a session object that manages information about each terminal in a connected state. In the example of FIG. 1, a session object 421A for managing information about the terminal 2A and a session object 421B for managing information about the terminal 2B are stored.
[0023]
The session object management table 41 is a table for managing the session objects 421A and 421B stored in the session object storage area 42, and has an entry number and a session object pointer as items. The session object management table 41 shown in FIG. 1 has n entries, and can manage session objects relating to a maximum of n terminals. The item of the session object pointer of each entry expresses a pointer relationship by an arrow extending from a black circle. Open circles represent empty entries. For example, entry 2 stores a pointer to the session object 421B. Entry 1 is an empty entry. By using the session object management table 41 having such an array configuration, the table reference person can directly (in a very short time) obtain a session object pointer by accessing the array by specifying an entry number. .
[0024]
The session identifier generation means 10 has a function of generating a session identifier for uniquely identifying a session object in response to a session identifier generation request from the session object generation means 11 or the session object search means 12, and a function of generating the generated session identifier. Has a function to return to the requester. As shown in FIG. 5, the session identifier includes an entry number and a value of an identifier counter. Illustrated as an example is a session identifier with an entry number = 2 and an identifier counter = 5.
[0025]
The session object generation means 11 generates a session object and stores it in the session object storage area 42, and stores a pointer to the session object stored in the session object storage area 42 in an empty entry in the session object management table 41. To add a session identifier returned from the session identifier generation unit 10 to a session object stored in the session object storage area 42 or a function of outputting a session identifier generation request to the session identifier generation unit 10. Has functions etc.
[0026]
The session object search means 12 searches the session object management table 41 based on the session identifier added to the message from the terminal and obtains a pointer to the corresponding session object. A session identifier generation request for the session identifier, a function of replacing the session identifier in the session object pointed to by the obtained session object pointer with the session identifier returned from the session identifier generation means 10, and a function of updating the session identifier after updating the session identifier. It has a function of returning objects to the business processing means 7 and the like.
[0027]
The session object deletion means 13 searches the session object management table 41 based on the session identifier added to the disconnection request from the terminal and obtains a pointer to the corresponding session object. It has a function of deleting the session object pointed by from the session object storage area 42, a function of rewriting the corresponding entry on the session object management table 41 to an empty entry, and the like.
[0028]
Access to the session object management table 41, the session object storage area 42, and the identifier counter 43 is exclusively controlled by the lock 14.
[0029]
The communication control means 5 controls communication with the terminals 2A to 2C, determines a connection request, a disconnection request, and a message from the terminals 2A to 2C, and determines a terminal connection processing means 6, a terminal disconnection processing means 8, a business processing means, respectively. 7 and a function of distributing a session identifier to the terminals 2A to 2C according to an instruction from the connection processing means 6 or the business processing means 7.
[0030]
The recording medium K1 is a disk, a semiconductor memory, or another recording medium. The program recorded on the recording medium K1 is read by the host computer 1, and by controlling the operation thereof, the communication control unit 5, the terminal connection processing unit 6, the business processing unit 7, the terminal A disconnection processing unit 8, a session identifier generation unit 10, a session object generation unit 11, a session object search unit 12, a session object deletion unit 13, a session object management table 41, a session object management area 42, and an identifier counter 43 are realized.
[0031]
Description of operation of the embodiment
Next, the operation of this embodiment will be described in detail with reference to the drawings.
[0032]
When a connection request from the terminal (for example, the terminal 2B) to the host computer 1 occurs, the communication control means 5 recognizes the connection request and notifies the terminal connection processing means 6 of the connection request (FIG. 7, step S71). , S72). The terminal connection processing means 6 having received the connection request requests the session object generation means 11 to generate a session object.
[0033]
The session object generating means 11 performs the processing shown in the flowchart of FIG. 2 in response to the request.
[0034]
First, the lock 14 is acquired for exclusive control (step S201). Thereafter, a free entry is searched from the session object management table 41 (step S202).
[0035]
If there is no empty entry, it is determined that the session object generation has failed, the lock 14 is released, and the operation ends (NO in step S203, S210, S209).
[0036]
On the other hand, if there is an empty entry, a new session object (for example, session object 421B) is generated and stored in the session object storage area 42 (YES in step S203, S204, S205). Thereafter, a pointer to the session object 421B is stored in the empty entry searched in step S202 (step S206). Further, the session object generation unit 11 passes the entry number of the entry searched in step S202 to the session identifier generation unit 10 and requests generation of a session identifier (step S207).
[0037]
In response to this session identifier generation request, the session identifier generation means 10 increments the identifier counter 43 as shown in the flowchart of FIG. 6 (step S61), and the value of the incremented identifier counter 43 and the input value are inputted. A session identifier as shown in FIG. 5 is generated by combining the entry identifier with the entry number, and the generated session identifier (for example, session identifier B) is returned to the session object generating means 11 (step S62).
[0038]
The session object generating means 11 adds the session identifier B returned from the session identifier generating means 10 to the session object 421B in the session object storage area 42, then releases the lock 14 and ends the operation (FIG. 2). , Steps S208, S209).
[0039]
The terminal connection processing means 6 can judge the operation result (success / failure) of the session object generation means 11, and if the generation is successful, the terminal connection is determined to be successful and the session identifier B is transmitted to the terminal 2B through the communication control means 5. Distribute to On the other hand, in the case of the generation failure, the terminal connection is determined to be unsuccessful, and the connection rejection is notified to the terminal 2B through the communication control means 5.
[0040]
Upon receiving the session identifier B from the host computer 1, the terminal 2B stores the session identifier B in a session identifier storage unit (not shown). Thereafter, when a message requesting the host computer 1 to perform business processing occurs in the terminal 2B, the terminal 2B adds the session identifier B stored in the session identifier storage unit to the message and transmits the message to the host computer 1.
[0041]
When the message with the session identifier B added is sent from the terminal 2B, the communication control means 5 in the host computer 1 recognizes the message and notifies the business processing means 7 (FIG. 7, steps S71, S73). ).
[0042]
The business processing unit 7 extracts the session identifier B added to the message and requests the session object searching unit 12 to search. At that time, the session identifier B is passed as an input.
[0043]
In response to this request, the session object search means 12 performs the processing shown in the flowchart of FIG.
[0044]
First, the lock 14 is acquired (step S31). After that, “entry number” is extracted from the input session identifier B, and array access is made to the session object management table 41 using this “entry number” (step S32). The time required for the search for the array access is extremely short, and a pointer (session object pointer) to the corresponding session object 421B can be obtained instantaneously.
[0045]
If the session object pointer is not stored in the corresponding entry of the session object management table 41, it is determined that the session object search has failed, the lock 14 is released, and the process ends (NO in step S33, S40, S39). This means that the session object has already been destroyed.
[0046]
On the other hand, when the session object pointer is stored in the corresponding entry of the session object management table 41, the value of the session identifier in the session object 421B indicated by the session object pointer and the input session The value is compared with the value of the identifier B (step S34).
[0047]
If the session identifiers do not match, it is determined that the session object search has failed, the lock 14 is released, and the process ends (NO in step S34, S40, S39). This means that the session object has already been deleted, and the corresponding entry has been reused by connecting a new terminal.
[0048]
On the other hand, if the session identifiers match, it is determined that the session object search has succeeded, and a request is made to the session identifier generating means 10 to generate a new session identifier (steps S35 and S36). At this time, the session object search means 12 passes the “entry number” obtained in step S32 to the session identifier generation means 10 and requests generation of a new session identifier.
[0049]
In response to the session identifier generation request, the session identifier generation unit 10 generates a new session identifier B1 including the incremented count value of the identifier counter 43 and the input entry number, and 12 (FIG. 6, steps S61, S62).
[0050]
When the new session identifier B1 is returned from the session identifier generating means 10, the session object searching means 12 updates the session identifier B in the session object 421B to the new session identifier B1, as shown in the flowchart of FIG. Then, the updated session object 421B is returned to the business processing unit 7 (steps S37 and S38). After that, the session object search means 12 releases the lock 14 and ends the processing (Step S39).
[0051]
The session object 421B returned by the session object search unit 12 stores information about the terminal, and the business processing unit 7 can perform a business conscious of the session. That is, continuous communication between the terminal and the host computer can be realized. Further, when returning the message indicating the processing result of the business process requested by the message from the terminal to the terminal 2B, the business processing unit 7 adds a new session identifier B1 and returns the message.
[0052]
When receiving the message to which the new session identifier B1 has been added, the terminal 2B replaces the session identifier B stored in the session identifier storage unit with the new session identifier B1. Thereafter, when a message to be transmitted to the host computer 1 occurs in the terminal 2B, the terminal 2B adds a new session identifier B1 stored in the session identifier storage unit to the message and transmits the message to the host computer 1. When receiving the message with the new session identifier B1 added thereto, the host computer 1 again performs the same processing as the above-described processing, and transmits a message indicating the business processing result to the terminal 2B. The identifier B2 is added to the message and transmitted. The terminal 2B and the host computer 1 repeat the above-described processing until a disconnection request occurs in the terminal 2B. As described above, in the present embodiment, the session identifier is changed even during the session connection, so that the prediction of the session identifier can be made extremely difficult, and as a result, the risk of unauthorized access is extremely reduced. Can be reduced.
[0053]
When a disconnection request occurs in the terminal 2B, the terminal 2B transmits a disconnection request including the latest session identifier (for example, the session identifier Bn) to the host computer 1. Upon receiving the disconnection request, the communication control means 5 in the host computer 1 notifies the terminal disconnection processing means 8 of the request (FIG. 7, steps S71, S74). As a result, the terminal disconnection processing unit 8 passes the session identifier Bn included in the disconnection request to the session object deletion unit 13 and requests that the corresponding session object 421B be deleted.
[0054]
In response to this request, the session object disappearing means 13 performs the processing shown in the flowchart of FIG.
[0055]
First, the session object disappearing means 13 acquires the lock 14 (step S41). After that, the session object annihilation unit 13 extracts the entry number from the session identifier Bn, and accesses the session object management table 41 using the entry number (step S42).
[0056]
If the session object pointer is not stored in the corresponding entry in the session object management table 41, it is determined that the session object has been deleted, the lock 14 is immediately released, and the process ends (NO in step S43). S48, S47).
[0057]
On the other hand, when the session object pointer is stored in the corresponding entry of the session object management table 41, the value of the session identifier in the session object 421B indicated by the session object pointer and the input session The value is compared with the value of the identifier Bn (step S44).
[0058]
If the session identifiers do not match, the operation is terminated after releasing the lock 14 (NO in step S44, S48, S47). This means that the session object has already been deleted and that the entry has been reused by the connection of a new terminal.
[0059]
On the other hand, if the session identifiers match, the corresponding session object 421B is deleted, and the corresponding entry in the session object management table 41 is updated to an empty entry (steps S45 and S46). Thereafter, the lock 14 is released (step S47), and the process ends.
[0060]
Another Embodiment of the Invention
Next, another embodiment of the present invention will be described.
[0061]
FIG. 8 is a block diagram of another embodiment of the present invention, which is different from the embodiment shown in FIG. 1 in that a host computer 1a is provided instead of the host computer 1. The host computer 1a includes a time acquisition unit 9 instead of the identifier counter 43, a session identifier generation unit 10a instead of the session identifier generation unit 10, and a non-communication terminal deletion unit 15 is added. This is different from the host computer 1 shown in FIG. 1 in that a recording medium K2 is provided instead of the recording medium K1.
[0062]
The time obtaining means 9 has a function of obtaining the current time in response to a request from the session identifier generating means 10a and returning the current time to the session identifier generating means 10a.
[0063]
When requested to generate a session identifier from the session object generating means 11 or the session object searching means 12, the session identifier generating means 10a converts the session identifier composed of the entry number and the message reception time as shown in FIG. It has a function to generate and return to the requester. Illustrated as an example is a session identifier of entry number = 2, message reception time = “2002.01.01 01:02:03”.
[0064]
The non-communication terminal deletion unit 15 has a function of deleting, from among the session objects stored in the session object storage area 42, a session object corresponding to a terminal in a non-communication state for a predetermined time or more.
[0065]
The recording medium K2 is a disk, a semiconductor memory, or another recording medium. The program recorded on the recording medium K2 is read by the host computer 1a and by controlling its operation, the communication control means 5, the terminal connection processing means 6, the business processing means 7, the terminal Disconnection processing means 8, time acquisition means 9, session identifier generation means 10a, session object generation means 11, session object search means 12, session object deletion means 13, non-communication terminal deletion means 15, session object management table 41, session object management The area 42 is realized.
[0066]
[Description of Operation of Another Embodiment]
Next, the operation of this embodiment will be described. In the present embodiment, only the operations of the session identifier generating means 10a and the non-communication terminal deleting means 15 are different from the operations of the embodiment of FIG. I will explain only.
[0067]
When the session identifier generation unit 10a receives the entry number from the session object generation unit 11 or the session object search unit 12, and is requested to generate a session identifier (step S207 in FIG. 2 or step S36 in FIG. 3), the session identifier generation unit 10a returns to FIG. As shown in the flowchart of FIG. 5, the time acquisition unit 9 is requested to acquire the current time (step S101). In response to this request, the time obtaining means 9 obtains the current time and returns it to the session identifier generating means 10a. When the current time is returned, the session identifier generating means 10a generates a session identifier composed of the input entry number and the returned current time (message receiving time), and sends the session identifier to the request source (session object generating means 11). Alternatively, it returns to the session object search means 12) (step S102).
[0068]
The non-communication terminal deletion unit 15 performs the process shown in the flowchart of FIG.
[0069]
In step S111, it is determined whether or not there is an unattentioned session object in the session object storage area 42. If there is an unfocused session object, one of them is focused on (YES in step S111, S112). Thereafter, based on the difference between the message reception time and the current time, which are components of the session identifier in the session object of interest, the terminal corresponding to the session object of interest is in a non-communication state for a predetermined time T or longer. It is determined whether or not (step S113). Then, when it is determined that the communication state has not been established for the predetermined time T or more (step S113: YES), the session object of interest is deleted (step S114). The above processing is repeated until there is no session object that has not been noted. A session object corresponding to a terminal that has been in a non-communication state for a long time is likely to be a meaningless object for communication management, such as omission of a disconnection notification or a terminal stall, and deleting it has a significant meaning from the viewpoint of effective use of resources. There is.
[0070]
【The invention's effect】
As described above, the present invention changes the session identifier for uniquely identifying a session object even during a session connection, so that it is extremely difficult to predict the session identifier. Can be. As a result, the risk of unauthorized access impersonating another terminal can be extremely reduced.
[0071]
In addition, since there is provided a non-communication terminal deletion unit for deleting a session object corresponding to a terminal in a non-communication state for a predetermined time or more from the storage area, the memory resources of the host computer can be effectively used.
[Brief description of the drawings]
FIG. 1 is a block diagram of one embodiment of the present invention.
FIG. 2 is a flowchart showing a processing example of a session object generating means 11;
FIG. 3 is a flowchart showing a processing example of a session object search means 12;
FIG. 4 is a flowchart showing a processing example of a session object disappearing means 13;
FIG. 5 is a diagram illustrating a configuration example of a session identifier.
FIG. 6 is a flowchart showing a processing example of a session identifier generating means 10;
FIG. 7 is a flowchart showing a processing example of the communication control means 5;
FIG. 8 is a block diagram of another embodiment of the present invention.
FIG. 9 is a diagram illustrating a configuration example of a session identifier according to another embodiment.
FIG. 10 is a flowchart showing a processing example of a session identifier generating means 10a.
FIG. 11 is a flowchart showing a processing example of a non-communication terminal deletion unit 15;
[Explanation of symbols]
1, 1a ... host computer
2A ~ 2C ... terminal
3. Network
4 ... Memory
41: Session object management table
42: Session object storage area
421A, 421B ... session object
43 ... Identifier counter
5. Communication control means
6. Terminal connection processing means
7 Business processing means
8. Terminal disconnection processing means
9: Time acquisition means
10, 10a ... session identifier generating means
11 Session object generating means
12. Session object search means
13: Session object disappearance means
14 ... Lock
15 ... wireless communication terminal deletion means
K1, K2 ... recording medium

Claims (8)

セッション接続状態にある端末毎に、その端末に関する情報を管理するセッションオブジェクトを、そのセッションオブジェクトを一意に識別するセッション識別子を用いて管理し、端末からセッション識別子の付加されたメッセージが送られてきた場合、該メッセージに付加されているセッション識別子によって特定されるセッションオブジェクトを検索するホストコンピュータにおけるセッション識別子管理装置であって、
端末がセッション接続状態にあるときに、前記端末のセッションオブジェクトを特定するセッション識別子を変更し、変更後のセッション識別子を前記端末に送信する手段を備えたことを特徴とするセッション識別子管理装置。
For each terminal in the session connection state, a session object that manages information about the terminal is managed using a session identifier that uniquely identifies the session object, and a message with a session identifier added is sent from the terminal. In the case, a session identifier management device in a host computer that searches for a session object specified by a session identifier added to the message,
A session identifier management device, comprising: means for changing a session identifier for specifying a session object of the terminal when the terminal is in a session connection state, and transmitting the changed session identifier to the terminal.
請求項1記載のセッション識別子管理装置において、
前記手段が、前記端末からメッセージが送られてきたとき、前記端末のセッションオブジェクトを特定するセッション識別子を変更する構成を有することを特徴とするセッション識別子管理装置。
The session identifier management device according to claim 1,
A session identifier management apparatus, characterized in that said means has a configuration in which, when a message is sent from said terminal, a session identifier for specifying a session object of said terminal is changed.
端末との間にセッションを確立して通信を行うホストコンピュータにおけるセッション識別子管理装置であって、
端末からの接続要求時、該端末に関する情報を管理するセッションオブジェクトを生成すると共にセッション識別子生成依頼を出力し、該セッション識別子生成依頼に応答して返却されたセッション識別子を前記セッションオブジェクトに付加して格納領域に格納すると共に前記端末へ送信するセッションオブジェクト生成手段と、
端末からセッション識別子の付加されたメッセージが送られてきたとき、前記付加されているセッション識別子によって特定されるセッションオブジェクトを前記格納領域から検索すると共にセッション識別子生成依頼を出力し、前記メッセージに付加されているセッション識別子によって特定されるセッションオブジェクト中のセッション識別子を前記セッション識別子生成依頼に応答して返却されたセッション識別子に変更し、更に、前記返却されたセッション識別子を前記端末に送信するセッションオブジェクト検索手段と、
セッション識別子生成依頼に応答して新たなセッション識別子を生成し、生成したセッション識別子を依頼元に返却するセッション識別子生成手段とを備えたことを特徴とするセッション識別子管理装置。
A session identifier management device in a host computer that establishes a session with a terminal and performs communication,
At the time of a connection request from a terminal, a session object for managing information on the terminal is generated and a session identifier generation request is output, and a session identifier returned in response to the session identifier generation request is added to the session object. Session object generating means for storing in a storage area and transmitting to the terminal;
When a message to which a session identifier is added is sent from the terminal, a session object specified by the added session identifier is searched from the storage area, and a session identifier generation request is output. A session identifier in the session object specified by the current session identifier, to a session identifier returned in response to the session identifier generation request, and further, transmitting the returned session identifier to the terminal. Means,
A session identifier management apparatus comprising: a session identifier generation unit that generates a new session identifier in response to a session identifier generation request, and returns the generated session identifier to a request source.
請求項3記載のセッション識別子管理装置において、
識別子カウンタを備え、且つ、
前記セッション識別子生成手段が、セッション識別子生成依頼に応答して前記識別子カウンタをインクリメントし、インクリメント後の前記識別子カウンタのカウント値を含むセッション識別子を生成する構成を有することを特徴とするセッション識別子管理装置。
The session identifier management device according to claim 3,
An identifier counter, and
A session identifier management unit configured to increment the identifier counter in response to a session identifier generation request and to generate a session identifier including the count value of the identifier counter after the increment. .
請求項3記載のセッション識別子管理装置において、
前記セッション識別子生成手段が、セッション識別子生成依頼に応答して現在時刻を含むセッション識別子を生成する構成を有することを特徴とするセッション識別子管理装置。
The session identifier management device according to claim 3,
A session identifier management apparatus, wherein the session identifier generation means generates a session identifier including a current time in response to a session identifier generation request.
請求項5記載のセッション識別子管理装置において、
前記格納領域に格納されている各セッションオブジェクトに付加されているセッション識別子に基づいて、所定時間以上無通信状態にある端末のセッションオブジェクトを削除する無通信端末削除手段を備えたことを特徴とするセッション識別子管理装置。
The session identifier management device according to claim 5,
Wireless terminal deletion means for deleting a session object of a terminal in a non-communication state for a predetermined time or more based on a session identifier added to each session object stored in the storage area. Session identifier management device.
セッション接続状態にある端末毎に、その端末に関する情報を管理するセッションオブジェクトを、そのセッションオブジェクトを一意に識別するセッション識別子を用いて管理し、端末からセッション識別子の付加されたメッセージが送られてきた場合、該メッセージに付加されているセッション識別子によって特定されるセッションオブジェクトを検索するホストコンピュータにおけるセッション識別子管理方法であって、
端末がセッション接続状態にあるときに、前記端末のセッションオブジェクトを特定するセッション識別子を変更し、変更後のセッション識別子を前記端末に送信することを特徴とするセッション識別子管理方法。
For each terminal in the session connection state, a session object that manages information about the terminal is managed using a session identifier that uniquely identifies the session object, and a message with a session identifier added is sent from the terminal. In the case, a session identifier management method in a host computer that searches for a session object specified by a session identifier added to the message,
When a terminal is in a session connection state, a session identifier that specifies a session object of the terminal is changed, and the changed session identifier is transmitted to the terminal.
セッション接続状態にある端末毎に、その端末に関する情報を管理するセッションオブジェクトを、そのセッションオブジェクトを一意に識別するセッション識別子を用いて管理し、端末からセッション識別子の付加されたメッセージが送られてきた場合、該メッセージに付加されているセッション識別子によって特定されるセッションオブジェクトを検索するホストコンピュータを、
端末がセッション接続状態にあるときに、前記端末のセッションオブジェクトを特定するセッション識別子を変更し、変更後のセッション識別子を前記端末に送信する手段として機能させるためのプログラム。
For each terminal in the session connection state, a session object that manages information about the terminal is managed using a session identifier that uniquely identifies the session object, and a message with a session identifier added is sent from the terminal. In this case, a host computer that searches for a session object specified by the session identifier added to the message is
A program for causing a terminal to change a session identifier that identifies a session object of the terminal when the terminal is in a session connection state, and to function as means for transmitting the changed session identifier to the terminal.
JP2002366108A 2002-12-18 2002-12-18 Session identifier management system, session identifier management method and program Pending JP2004199307A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002366108A JP2004199307A (en) 2002-12-18 2002-12-18 Session identifier management system, session identifier management method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002366108A JP2004199307A (en) 2002-12-18 2002-12-18 Session identifier management system, session identifier management method and program

Publications (1)

Publication Number Publication Date
JP2004199307A true JP2004199307A (en) 2004-07-15

Family

ID=32763409

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002366108A Pending JP2004199307A (en) 2002-12-18 2002-12-18 Session identifier management system, session identifier management method and program

Country Status (1)

Country Link
JP (1) JP2004199307A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007286883A (en) * 2006-04-17 2007-11-01 Kawamura Electric Inc Session management program and web server function loading equipment
KR100892609B1 (en) 2007-03-22 2009-04-09 주식회사 올앳 System and method for secure communication, and a medium having computer readable program executing the method
JP2014096063A (en) * 2012-11-09 2014-05-22 Kddi Corp Server, terminal device, content distribution system, and program

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007286883A (en) * 2006-04-17 2007-11-01 Kawamura Electric Inc Session management program and web server function loading equipment
KR100892609B1 (en) 2007-03-22 2009-04-09 주식회사 올앳 System and method for secure communication, and a medium having computer readable program executing the method
JP2014096063A (en) * 2012-11-09 2014-05-22 Kddi Corp Server, terminal device, content distribution system, and program

Similar Documents

Publication Publication Date Title
US8103617B2 (en) Distributed directory server, distributed directory system, distributed directory managing method, and program of same
CN111260396B (en) Advertisement preloading method and device, electronic equipment and storage medium
JP5729300B2 (en) Information management apparatus, information management method, and information management program
JP4205323B2 (en) Distribution system, distribution server and distribution method, distribution program
JP2003296274A (en) Data acquisition system
JPWO2012039085A1 (en) Attribute information processing apparatus, attribute information processing method, and attribute information evaluation system
CN112188227A (en) Streaming media data distribution method and device
CN111651418B (en) Document content downloading method and device, computer equipment and storage medium
CN111309796B (en) Data processing method, device and computer readable storage medium
CN109600254A (en) The generation method and related system of full link log
US9348847B2 (en) Data access control apparatus and data access control method
JP2004199307A (en) Session identifier management system, session identifier management method and program
KR100801217B1 (en) VIRTUAL STORAGE SYSTEM AND METHOD FOR MANAGEMENTING VIRTUAL STORAGE BASED ON Ad-HOC NETWORK
CN107992489A (en) A kind of data processing method and server
JP2005190221A (en) Cache control unit, its method, and computer program
CN111314407B (en) Communication device and communication method for processing metadata
JP2007328736A (en) Resource retrieval system
CN114430496A (en) Cross-device video searching method and related device
JPH11345179A (en) Method and system for managing data, constituent apparatus and recording media
EP2034420A1 (en) A method and an apparatus for operating right
KR100836619B1 (en) Peer Management Server in P2P System and Peer Management Method
JP5157770B2 (en) Node device, program, and storage instruction method
KR101434920B1 (en) Method for sharing resource and system for performing the same
JP2003157197A (en) Download method, download help method, and computer
KR100731021B1 (en) Mobile telecommunication device and system having function for managing messages, and method thereby

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040427

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060620

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060821

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060919

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20061019

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20061019

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20070118

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20080604

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20090508