(57)【特許請求の範囲】
【請求項１】
複数のユーザのうちの何れかのユーザを示す情報に対応付けられており他の装置により行われる認証に用いられる認証情報を記憶する記憶部を参照して、当該他の装置からの要求に応じた認証情報を配布し、
ユーザを示す情報に対して認証情報が配布されているか否かを示す情報を生成し、
何れかのユーザを示す情報に対応付けられた認証情報の更新要求を受け付けると、生成された情報を参照して、当該ユーザを示す情報に対して認証情報が配布されていない場合は前記記憶部に記憶された更新対象の認証情報を更新し、当該ユーザを示す情報に対して認証情報が他の装置に配布されている場合は他の装置により当該認証情報が用いられなくなったことを確認してから前記記憶部に記憶された更新対象の認証情報を更新する、
処理をコンピュータに実行させるプログラム。
【請求項２】
前記更新要求を受け付けた際に、前記記憶部に記憶された認証情報を直ちに更新してよいか否かが更新要求の更新内容に応じて設定された情報を参照し、直ちに更新してよい更新内容であれば、他の装置により認証情報が用いられなくなったことの確認を行わずに、前記記憶部に記憶された更新対象の認証情報を更新する、請求項１記載のプログラム。
【請求項３】
前記記憶部は複数のユーザに対応付けられた認証情報を記憶しており、
複数のユーザに対応付けられた認証情報の更新要求を受け付けると、当該複数のユーザそれぞれを示す情報に対して認証情報が配布されていない場合は前記記憶部に記憶された更新対象の認証情報を更新し、また、当該複数のユーザそれぞれを示す情報に対して認証情報が他の装置に配布されている場合は他の装置により当該認証情報が用いられなくなったことを確認してから前記記憶部に記憶された更新対象の認証情報を更新する、
請求項１または２記載のプログラム。
【請求項４】
ユーザを示す情報に対応付けられた認証情報の更新要求を受け付けると、前記記憶部に記憶された当該認証情報を更新するまで、当該ユーザを示す情報に対応付けられた認証情報の要求を他の装置から受け付けても拒否する、請求項１乃至３の何れか１項に記載のプログラム。
【請求項５】
ユーザのログインの要求を他の装置から受け付けると、ログインの要求に応じて、当該ユーザを示す情報に対応付けられた認証情報を当該他の装置に配布し、
当該ユーザのログアウトの要求を受け付けた旨の通知を当該他の装置から受け付けると当該他の装置により当該認証情報が用いられなくなったことを検出する、
請求項１乃至４の何れか１項に記載のプログラム。
【請求項６】
他の装置に配布された認証情報が、当該他の装置から破棄された旨の通知を受け付けると、当該他の装置により当該認証情報が用いられなくなったことを検出する、請求項１乃至５の何れか１項に記載のプログラム。
【請求項７】
他の装置に配布する認証情報に、当該認証情報を用いた認証を許容する期限を含め、当該他の装置により前記期限に達した旨の通知を受け付けると、当該他の装置により当該認証情報が用いられなくなったことを検出する、請求項１乃至６の何れか１項に記載のプログラム。
【請求項８】
前記記憶部は、１ユーザに対して、当該ユーザを示す情報とクライアント装置に関する情報との組合せに対応付けられた複数の認証情報を記憶し、
他の装置からの要求に含まれるユーザを示す情報およびクライアント装置に関する情報に基づいて、前記複数の認証情報の中から当該他の装置に配布する認証情報を選択する、
請求項１乃至７の何れか１項に記載のプログラム。
【請求項９】
クライアント装置の識別情報と当該クライアント装置によるアクセスが許容されるサーバ装置の識別情報との対応関係を示す情報、または、当該クライアント装置の識別情報と当該クライアント装置によるアクセスが許容され当該サーバ装置により提供されるサービスの識別情報との対応関係を示す情報を認証情報として他の装置に配布する、請求項１乃至８の何れか１項に記載のプログラム。
【請求項１０】
複数のユーザのうちの何れかのユーザを示す情報に対応付けられており他の装置により行われる認証に用いられる認証情報を記憶する記憶部と、
他の装置からの要求に応じた認証情報を当該他の装置に配布し、ユーザを示す情報に対して認証情報が配布されているか否かを示す情報を生成し、何れかのユーザを示す情報に対応付けられた認証情報の更新要求を受け付けると、生成された情報を参照して、当該ユーザを示す情報に対して認証情報が配布されていない場合は前記記憶部に記憶された更新対象の認証情報を更新し、また、当該ユーザを示す情報に対して認証情報が他の装置に配布されている場合は他の装置により当該認証情報が用いられなくなったことを確認してから前記記憶部に記憶された更新対象の認証情報を更新する演算部と、
を有する情報処理装置。
【請求項１１】
情報処理装置が、
複数のユーザのうちの何れかのユーザを示す情報に対応付けられており他の装置により行われる認証に用いられる認証情報を記憶する記憶部を参照して、当該他の装置からの要求に応じた認証情報を配布し、
ユーザを示す情報に対して認証情報が配布されているか否かを示す情報を生成し、
何れかのユーザを示す情報に対応付けられた認証情報の更新要求を受け付けると、生成された情報を参照して、当該ユーザを示す情報に対して認証情報が配布されていない場合は前記記憶部に記憶された更新対象の認証情報を更新し、当該ユーザを示す情報に対して認証情報が他の装置に配布されている場合は他の装置により当該認証情報が用いられなくなったことを確認してから前記記憶部に記憶された更新対象の認証情報を更新する、
更新方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はプログラム、情報処理装置および更新方法に関する。
【背景技術】
【０００２】
現在、複数の情報処理装置（例えば、コンピュータ）を含むシステムが利用されている。各情報処理装置は、ネットワークを介して接続される。例えば、ユーザは、自身が操作する情報処理装置（クライアント装置ということがある）を用いて、サービスを提供する情報処理装置（サーバ装置ということがある）にアクセスし、サービスを利用し得る。【０００３】
例えば、このようなシステムにおいて、物品の販売サービスや施設の予約サービスなどを提供するサービス提供サーバに対し、サービスの処理に用いられるユーザ情報の追加・更新を担う情報管理サーバを設ける提案がある。【０００４】
なお、複数の計算機間で共有される共有データに対するアプリケーションからのアクセスパターンの情報に基づいて、共有データの管理方法を選択する提案がある。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００５−１８２２２６号公報
【特許文献２】特開平６−３３２８６９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
アクセス先のサーバ装置（または、サービス）をユーザごとに制限することがある。サーバ装置への不正アクセスの防止を図るためである。例えば、クライアント装置とサーバ装置との間に、クライアント装置からサーバ装置へのアクセス許否の認証を行う認証装置を設けることが考えられる。このとき、当該認証を行うための認証情報をユーザごとに集中管理し、複数の認証装置に認証情報を配布する管理装置を設けることが考えられる。認証情報を変更する際は、管理装置が保持する認証情報を更新すればよく、個々の認証装置に対して管理者が設定変更を行う場合に比べて、作業コストを軽減し得るからである。【０００７】
しかし、この場合、認証情報の更新方法が問題となる。例えば、あるユーザに対する認証情報が管理装置側で更新されたとき、何れかの認証装置に更新前の認証情報が既に配布されていることがある。このとき、更新後の認証情報が管理装置により別の認証装置に配布されると各認証装置で利用される認証情報に不整合が生じ得る。一方、配布済の全ての認証情報が各認証装置で利用されなくなったタイミングで更新を行うことも考えられる。ところが、そのようなタイミングを待っていると、当該更新が反映されるまでに時間がかかる可能性がある。そこで、各認証装置で利用される認証情報の不整合の防止を図りながら、認証情報の更新を迅速に行う仕組みをどのように実現するかが問題となる。【０００８】
１つの側面では、本発明は、各装置により利用される認証情報の整合を維持しながら、認証情報を迅速に更新できるプログラム、情報処理装置および更新方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
１つの態様では、コンピュータによって実行されるプログラムが提供される。このプログラムは、複数のユーザのうちの何れかのユーザを示す情報に対応付けられており他の装置により行われる認証に用いられる認証情報を記憶する記憶部を参照して、当該他の装置からの要求に応じた認証情報を配布し、ユーザを示す情報に対して認証情報が配布されているか否かを示す情報を生成し、何れかのユーザを示す情報に対応付けられた認証情報の更新要求を受け付けると、生成された情報を参照して、当該ユーザを示す情報に対して認証情報が配布されていない場合は記憶部に記憶された更新対象の認証情報を更新し、当該ユーザを示す情報に対して認証情報が他の装置に配布されている場合は他の装置により当該認証情報が用いられなくなったことを確認してから記憶部に記憶された更新対象の認証情報を更新する、処理をコンピュータに実行させる。【００１０】
また、１つの態様では、情報処理装置が提供される。この情報処理装置は、記憶部と演算部とを有する。記憶部は、複数のユーザのうちの何れかのユーザを示す情報に対応付けられており他の装置により行われる認証に用いられる認証情報を記憶する。演算部は、他の装置からの要求に応じた認証情報を当該他の装置に配布し、ユーザを示す情報に対して認証情報が配布されているか否かを示す情報を生成し、何れかのユーザを示す情報に対応付けられた認証情報の更新要求を受け付けると、生成された情報を参照して、当該ユーザを示す情報に対して認証情報が配布されていない場合は記憶部に記憶された更新対象の認証情報を更新し、また、当該ユーザを示す情報に対して認証情報が他の装置に配布されている場合は他の装置により当該認証情報が用いられなくなったことを確認してから記憶部に記憶された更新対象の認証情報を更新する。【００１１】
また、１つの態様では、更新方法が提供される。この更新方法では、情報処理装置が、複数のユーザのうちの何れかのユーザを示す情報に対応付けられており他の装置により行われる認証に用いられる認証情報を記憶する記憶部を参照して、当該他の装置からの要求に応じた認証情報を配布し、ユーザを示す情報に対して認証情報が配布されているか否かを示す情報を生成し、何れかのユーザを示す情報に対応付けられた認証情報の更新要求を受け付けると、生成された情報を参照して、当該ユーザを示す情報に対して認証情報が配布されていない場合は記憶部に記憶された更新対象の認証情報を更新し、当該ユーザを示す情報に対して認証情報が他の装置に配布されている場合は他の装置により当該認証情報が用いられなくなったことを確認してから記憶部に記憶された更新対象の認証情報を更新する。
【発明の効果】
【００１２】
１つの側面では、各装置により利用される認証情報の整合を維持しながら、認証情報を迅速に更新できる。
本発明の上記および他の目的、特徴および利点は本発明の例として好ましい実施の形態を表す添付の図面と関連した以下の説明により明らかになるであろう。
【図面の簡単な説明】
【００１３】
【図１】第１の実施の形態の情報処理システムを示す図である。
【図２】第２の実施の形態の情報処理システムを示す図である。
【図３】第２の実施の形態の管理サーバのハードウェア例を示す図である。
【図４】第２の実施の形態の中継装置のハードウェア例を示す図である。
【図５】第２の実施の形態のソフトウェア例を示す図である。
【図６】第２の実施の形態のユーザ管理テーブルの例を示す図である。
【図７】第２の実施の形態のグループ管理テーブルの例を示す図である。
【図８】第２の実施の形態のユーザ制御テーブルの例を示す図である。
【図９】第２の実施の形態のグループ制御テーブルの例を示す図である。
【図１０】第２の実施の形態の接続管理テーブルの例を示す図である。
【図１１】第２の実施の形態の同期制御テーブルの例を示す図である。
【図１２】第２の実施の形態のセッション管理テーブルの例を示す図である。
【図１３】第２の実施の形態の通信データの例を示す図である。
【図１４】第２の実施の形態のログイン処理の例を示すフローチャートである。
【図１５】第２の実施の形態のアクセス認証の例を示すフローチャートである。
【図１６】第２の実施の形態のログイン確認例を示すフローチャートである。
【図１７】第２の実施の形態の通信の具体例（その１）を示す図である。
【図１８】第２の実施の形態の通信の具体例（その２）を示す図である。
【図１９】第２の実施の形態の通信の具体例（その３）を示す図である。
【図２０】第２の実施の形態の通信の具体例（その４）を示す図である。
【図２１】第２の実施の形態のログアウト処理の例を示すフローチャートである。
【図２２】第２の実施の形態の通信の具体例（その５）を示す図である。
【図２３】第２の実施の形態のセッション管理の例を示すフローチャートである。
【図２４】第２の実施の形態のアクセス可能範囲の例（その１）を示す図である。
【図２５】第２の実施の形態のアクセス可能範囲の例（その２）を示す図である。
【図２６】第２の実施の形態のアクセス可能範囲の例（その３）を示す図である。
【図２７】第２の実施の形態の制御情報の更新例を示すフローチャートである。
【図２８】第２の実施の形態の制御情報の第１の更新例を示す図である。
【図２９】第２の実施の形態の制御情報の第１の更新例（続き）を示す図である。
【図３０】第２の実施の形態の制御情報の第２の更新例を示す図である。
【図３１】第２の実施の形態の制御情報の第２の更新例（続き）を示す図である。
【図３２】第３の実施の形態のアクセス元情報の例を示す図である。
【図３３】第３の実施の形態のアクセス先情報の例を示す図である。
【図３４】第３の実施の形態の時間情報の例を示す図である。
【図３５】第３の実施の形態の関連付け情報の例を示す図である。
【図３６】第３の実施の形態のログイン処理の例を示すフローチャートである。
【発明を実施するための形態】
【００１４】
以下、本実施の形態を図面を参照して説明する。
［第１の実施の形態］
図１は、第１の実施の形態の情報処理システムを示す図である。第１の実施の形態の情報処理システムは、情報処理装置１および認証装置２，３を含む。情報処理装置１および認証装置２，３はネットワークを介して接続されている。認証装置２，３は、情報処理装置１から取得したユーザごとの認証情報に基づいて認証を行う装置である。この認証は、クライアント装置（図示を省略）からサーバ装置（図示を省略）に対するアクセスを制限するための認証でもよい。あるいは、クライアント装置からサーバ装置により提供されるサービスに対するアクセスを制限するための認証でもよい。認証装置２，３は、コンピュータなどの情報処理装置でもよいし、ルータなどの中継装置でもよい。
【００１５】
情報処理装置１は、記憶部１ａおよび演算部１ｂを有する。記憶部１ａはＲＡＭ（Random Access Memory）などのメモリでもよい。演算部１ｂはＣＰＵ（Central Processing Unit）などのプロセッサでもよい。第１の実施の形態の情報処理は、記憶部１ａに記憶されたプログラムを演算部１ｂが実行することで実現されてもよい。
【００１６】
記憶部１ａは、認証装置２，３で行われる認証に用いられる認証情報を記憶する。認証情報は、例えば、アクセス元の装置の情報に対して許容されるアクセス先の装置やサービスなどの情報を定義したものでもよい。認証情報は、ユーザを示す情報に対応付けられている。例えば、記憶部１ａはユーザＡを示す情報に対応付けて認証情報Ｘを記憶している。記憶部１ａはユーザＢを示す情報に対応付けて認証情報Ｙを記憶している。
【００１７】
演算部１ｂは、記憶部１ａを参照して、認証装置からの要求に応じた認証情報を要求元の認証装置に配布する。例えば、情報処理装置１がユーザのログイン処理などを行い、ログイン処理の結果に応じた認証情報を認証装置に提供することが考えられる。その場合、演算部１ｂは、ユーザのログイン要求を認証装置から受け付け、ログイン処理の結果に応じた認証情報を要求元の認証装置に提供してもよい。演算部１ｂは、ユーザを示す情報に対して認証情報が配布されているか否かを示す情報を生成する。演算部１ｂは、生成された情報を記憶部１ａに格納してもよい。
【００１８】
演算部１ｂは、何れかのユーザを示す情報に対応付けられた認証情報の更新要求を受け付ける。認証情報の更新要求は情報処理装置１以外の装置から情報処理装置１に入力されてもよいし、管理者などにより情報処理装置１に直接入力されてもよい。
【００１９】
演算部１ｂは、更新要求を受け付けると生成された情報を参照して次の処理を行う。当該ユーザを示す情報に対して認証情報が配布されていない場合、演算部１ｂは更新要求を受けた認証情報を更新する。また、当該ユーザを示す情報に対して認証情報が認証装置に配布されている場合、演算部１ｂは当該認証装置により当該認証情報が用いられなくなったことを確認してから更新要求に応じて当該認証情報を更新する。すなわち、当該ユーザを示す情報に対して認証情報が配布されていない場合には、演算部１ｂはこの確認を行わずに更新要求を受けた認証情報を更新し得る。
【００２０】
例えば、演算部１ｂは次のような一連の処理を行う。演算部１ｂは、認証装置２からの要求に応じて認証装置２に認証情報Ｘを配布する（ステップＳ１）。このとき、演算部１ｂは、ユーザＡを示す情報に対して認証情報Ｘが配布されていることを示す情報を生成し、記憶部１ａに格納する。
【００２１】
演算部１ｂは、認証装置３からの要求に応じて認証装置３に認証情報Ｙを配布する（ステップＳ２）。このとき、演算部１ｂは、ユーザＢを示す情報に対して認証情報Ｙが配布されていることを示す情報を生成し、記憶部１ａに格納する。
【００２２】
演算部１ｂは、ユーザＡを示す情報に対応する認証情報Ｘの更新要求を受け付ける（ステップＳ３）。演算部１ｂは、ステップＳ１，Ｓ２により生成された情報を参照することで、ユーザＡを示す情報に対応する認証情報（本例では、認証情報Ｘ）が認証装置２に配布された状態であると判断する。このため、演算部１ｂは、認証情報Ｘの更新を保留する。演算部１ｂは、認証装置２により認証情報Ｘが利用されなくなったことを確認する（ステップＳ４）。
【００２３】
具体的には、演算部１ｂは、次のようにしてステップＳ４の確認を実行し得る。第１には、認証情報Ｘを用いた認証を行わなくなった旨の通知を認証装置２から受けることで当該確認を行ってもよい。第２には、演算部１ｂは認証情報Ｘを用いた認証を行っているか否かを認証装置２に対して定期または不定期に問い合わせてもよい。
【００２４】
なお、認証装置２において、認証情報Ｘを用いた認証が行われなくなる場合には、例えば次のような場合が考えられる。第１には、例えば認証装置２で認証情報Ｘを用いた認証が所定時間以上行われず、認証装置２で認証情報Ｘを破棄する場合である。第２には、例えば認証装置２を経由してサーバ装置にアクセスしていたクライアント装置が、ユーザＡのログアウトなどにより当該サーバ装置へのアクセスを終了したことで、認証情報Ｘを用いた認証が行われなくなる場合である。
【００２５】
演算部１ｂは、ユーザＡを示す情報に対応する認証情報Ｘが認証装置２により利用されなくなったことが確認されると、ステップＳ３の更新要求を受けた認証情報Ｘの更新を行う（ステップＳ５）。このとき、認証装置２では配布済の認証情報Ｘが用いられなくなくなるのだから、その後、認証装置２は認証情報Ｘを用いた認証を再度行おうとするとき、情報処理装置１から（更新後の）認証情報Ｘを取得することになる。
【００２６】
情報処理装置１によれば、演算部１ｂにより、認証装置２からの要求に応じて認証情報Ｘが認証装置２に配布される。演算部１ｂにより、ユーザＡを示す情報に対して認証情報が配布されているか否かを示す情報が生成される。演算部１ｂにより、ユーザＡを示す情報に対応する認証情報Ｘの更新要求が受け付けられると、生成された情報に基づいて、ユーザＡを示す情報に対して認証情報が配布されていない場合は更新要求を受けた認証情報Ｘが更新される。また、演算部１ｂにより、ユーザＡを示す情報に対して認証情報が何れかの認証装置に配布されている場合は当該認証装置により当該認証情報が用いられなくなったことが確認されてから更新要求を受けた認証情報Ｘが更新される。
【００２７】
これにより、認証装置２，３により利用される認証情報の整合を維持しながら、認証情報を迅速に更新できる。具体的には、次の通りである。
情報処理装置１は、認証装置２，３で用いられる認証情報を集中管理する。このため、認証情報を更新したいときは情報処理装置１が保持する認証情報を更新すればよい。ところが、例えば、更新前の認証情報Ｘが認証装置２に配布済の場合がある。その後、仮に認証装置３からの要求に応じて更新後の認証情報Ｘが認証装置３に配布されると、認証装置２は更新前の情報、認証装置３は更新後の情報をそれぞれ用いて認証を行うことになる。すなわち、認証装置２，３により認証に用いられる認証情報に不整合が生じてしまう。すると、例えば、同じユーザであるにも関わらず、認証装置２を経由すれば所定のサーバ装置（または、サービス）にアクセスできるが、認証装置３を経由すると当該サーバ装置（または、当該サービス）にアクセスできないという事態が生じ得る。
【００２８】
このような事態を回避するために、例えば、各認証装置で利用される全ユーザの認証情報が利用されなくなったタイミングで管理装置の認証情報を更新することも考え得る。しかし、当該タイミングまで待機していると、認証情報を更新するまでに時間を要するという問題がある。
【００２９】
具体的には、上述の例において、ユーザＡに対する認証情報Ｘが認証装置２に配布され、ユーザＢに対する認証情報Ｙが認証装置３に配布されている場合を考える。この場合、例えば、認証情報Ｘを更新するために、認証情報Ｙが利用されなくなるまで待機するものとすると、認証情報Ｘを更新するまでに時間がかかり得る。認証情報Ｘが認証装置２により利用されなくなったとしても、認証情報Ｙが認証装置３により利用された状態であると、認証情報Ｘの更新を行えないからである。この問題は、ユーザの数が多くなるほど深刻である。ユーザの数が多くなるほど、認証装置２，３を介したアクセス数も多くなり、配布された各ユーザの認証情報が認証装置２，３により利用されなくなるまでの時間も長引く可能性が高くなるからである。
【００３０】
この場合、ユーザＡに対する認証情報Ｘを更新するために、ユーザＢに対する認証情報Ｙが認証装置３により利用されなくなるまで待機するのは余計である。認証情報Ｘの更新の影響はユーザＡのサービス利用に対して及ぶものであり、ユーザＢのサービス利用に対して影響を及ぼすものではないからである。そこで、情報処理装置１では、ユーザＡに対する認証情報Ｘの更新要求があった場合は、ユーザＡに対する認証情報の配布を受けた認証装置２で当該認証情報が利用されなくなったことが確認できたタイミングで、記憶部１ａに記憶された認証情報Ｘの更新を行う。また、ユーザＡに対して認証情報が配布されていなければ、当該確認を行わずに記憶部１ａに記憶された認証情報Ｘの更新を行う。このようにして、認証装置２，３により利用される認証情報の整合を維持しながら、認証情報を迅速に更新できる。
【００３１】
［第２の実施の形態］
図２は、第２の実施の形態の情報処理システムを示す図である。第２の実施の形態の情報処理システムは、管理サーバ１００、中継装置２００，２００ａ，２００ｂ、業務サーバ３００，３００ａ，４００，４００ａを含む。中継装置２００は、ファイアウォール１１に接続されている。ファイアウォール１１はネットワーク１０に接続されている。例えば、ネットワーク１０はＬＡＮ（Local Area Network）でもよいし、インターネットやＷＡＮ（Wide Area Network）などの広域ネットワークでもよい。
【００３２】
ファイアウォール１１は、ネットワーク１０側（外部側）と中継装置２００側（内部側）との間の通信（例えば、ＩＰ（Internet Protocol）パケット）を監視し、所定のルールに合致した通信のみを許可し、所定のルールに合致しない通信を拒否する。
【００３３】
管理サーバ１００、中継装置２００，２００ａ，２００ｂおよび業務サーバ３００，３００ａは、ネットワーク２０に接続されている。中継装置２００ｂおよび業務サーバ４００，４００ａは、ネットワーク３０に接続されている。例えば、ネットワーク２０，３０はＬＡＮである。ネットワーク２０，３０は、同一拠点のネットワークでもよいし、異なる拠点（例えば、本社と支社）のネットワークでもよい。
【００３４】
管理サーバ１００は、ユーザごとのアクセス制御の情報を一元管理するサーバコンピュータである。管理サーバ１００は、中継装置２００，２００ａ，２００ｂにアクセス制御の情報を提供する。なお、管理サーバ１００をネットワーク２０以外のネットワーク（例えば、ネットワーク３０）に接続してもよい。
【００３５】
中継装置２００，２００ａ，２００ｂは、通信データを中継するスイッチである。中継装置２００，２００ａ，２００ｂは、異なるネットワークセグメント間のルーティングを行うＬ３（Layer 3）スイッチまたはルータでもよい。中継装置２００，２００ａ，２００ｂは、管理サーバ１００と通信して、ユーザごとのアクセス制御の情報を取得し、当該情報に基づいてアクセス制御を行う。中継装置２００，２００ａ，２００ｂは、コンピュータによって実現されてもよい。
【００３６】
業務サーバ３００，３００ａ，４００，４００ａは、業務アプリケーションを実行するサーバコンピュータである。業務サーバ３００，３００ａ，４００，４００ａは業務アプリケーションによるサービスをクライアント５００，５００ａ，６００，６００ａに提供する。例えば、業務サーバ３００，３００ａ，４００，４００ａはＷｅｂサーバ機能を有する。クライアント５００，５００ａ，６００，６００ａからは、例えばＷｅｂブラウザと呼ばれるソフトウェアを用いて、業務サーバ３００，３００ａ，４００，４００ａが提供するサービスを利用できる。
【００３７】
その場合、ファイアウォール１１では、ＨＴＴＰ（HyperText Transfer Protocol）やＨＴＴＰＳ（HTTP over Secure Socket Layer）などに対応するアプリケーションポートの通信を許可しておく。そうすれば、クライアント５００，５００ａと業務サーバ３００，３００ａ，４００，４００ａとの間で、ＨＴＴＰのリクエストやレスポンスを送受信できる。ＦＴＰ（File Transfer Protocol）なども同様である。
【００３８】
ユーザは、クライアント５００，５００ａ，６００，６００ａを操作して第２の実施の形態の情報処理システムにアクセスできる。クライアント５００，５００ａ，６００，６００ａは、クライアントコンピュータである。クライアント５００，５００ａ，６００，６００ａは、携帯電話機やスマートデバイス（例えば、スマートフォンやタブレット端末）などの電子装置でもよい。
【００３９】
クライアント５００，５００ａは、アクセスポイント１２を介してネットワーク１０に接続し、情報処理システムにアクセスする。アクセスポイント１２は無線通信を中継する中継装置である。アクセスポイント１２は移動通信網を介してネットワーク１０に接続する無線基地局でもよい。クライアント６００，６００ａは、中継装置２００ａに接続されている。クライアント６００，６００ａは、他のネットワークを介して中継装置２００ａに接続されてもよい。
【００４０】
例えば、クライアント５００からサービスを利用する場合を考える。例えば、ユーザはクライアント５００で動作するＷｅｂブラウザ上で、利用したい業務アプリケーションのＵＲＬ（Uniform Resource Locator）を指定する。クライアント５００はＵＲＬ中のＦＱＤＮ（Fully Qualified Domain Name）を、ネットワーク１０に接続されたＤＮＳ（Domain Name System）サーバに問い合わせることで、ＦＱＤＮに対応するＩＰアドレスを解決し得る。Ｗｅｂブラウザは、解決したＩＰアドレスを宛先ＩＰアドレスとしたリクエストを送信する。こうして、クライアント５００から業務サーバが提供するサービスを利用できる。例えば、クライアント６００，６００ａからサービスを利用する場合も同様である。ＦＱＤＮでアクセス先を指定する場合、クライアント６００，６００ａからアクセス可能なネットワークセグメントにＤＮＳサーバを設けることが考えられる。
【００４１】
管理クライアント７００は、管理サーバ１００に対する各種の設定を行えるクライアントコンピュータである。例えば、管理クライアント７００は、システムの管理者によって利用される。
【００４２】
ここで、一例として、第２の実施の形態の情報処理システムで用いるＩＰアドレスを次の通りとする。ネットワーク２０のネットワークアドレスは“１９２．１６８．１０．０／２４”である。ネットワーク３０のネットワークアドレスは“１９２．１６８．２０．０／２４”である。中継装置２００は“１９２．１６８．１０．１”である。中継装置２００ａは“１９２．１６８．１０．２”である。中継装置２００ｂは“１９２．１６８．２０．１”である。ただし、中継装置２００ｂがネットワーク２０，３０の間のルーティングをする場合にはネットワーク２０側のＩＰアドレスを有してもよい。管理サーバ１００は“１９２．１６８．１０．１０”である。業務サーバ３００は“１９２．１６８．１０．１０１”である。業務サーバ３００ａは“１９２．１６８．１０．１０２”である。業務サーバ４００は“１９２．１６８．２０．１０１”である。業務サーバ４００ａは“１９２．１６８．２０．１０２”である。
【００４３】
なお、ＩＰｖ４（Internet Protocol version 4）による通信を例示するが、ＩＰｖ６（Internet Protocol version 6）の場合も同様である。その場合、ＩＰｖ４で示したアドレスに代えてＩＰｖ６のアドレスを用いることができる。
【００４４】
ネットワーク１０がインターネットであれば、ファイアウォール１１は各業務サーバに対する宛先ＩＰアドレスをグローバルアドレスで受け付けることも考えられる。その場合、ファイアウォール１１は、当該宛先アドレスをネットワーク２０，３０上の各業務サーバのＩＰアドレスへと変換することが考えられる。この変換はＮＡＴ（Network Address Translation）と呼ばれることがある。
【００４５】
または、例えばＶＰＮ（Virtual Private Network）の技術を用いて、クライアント５００，５００ａに、所定のＩＰアドレス（例えば、ネットワーク２０のＩＰアドレス）を割り当ててもよい。そして、各業務サーバのＩＰアドレスを宛先に指定したリクエストを発行させてもよい。その場合、例えば、クライアント５００，５００ａにＶＰＮクライアントのソフトウェアを実行させる。例えば、ＶＰＮクライアントと通信してＩＰアドレスを割り当てるＶＰＮサーバをファイアウォール１１と中継装置２００との間などに設ける。ＶＰＮクライアントはリクエストを含むＩＰパケットを、所定のプロトコルを用いてカプセル化してＶＰＮサーバへ送る。ＶＰＮサーバは、カプセル化を解除して得たリクエストを中継装置２００に転送する。ファイアウォール１１に代えて、ＵＴＭ（Unified Threat Management）装置などを用いてＶＰＮを実装してもよい。
【００４６】
図３は、第２の実施の形態の管理サーバのハードウェア例を示す図である。管理サーバ１００は、プロセッサ１０１、ＲＡＭ１０２、ＨＤＤ（Hard Disk Drive）１０３、通信部１０４、画像信号処理部１０５、入力信号処理部１０６、ディスクドライブ１０７および機器接続部１０８を有する。各ユニットが管理サーバ１００のバスに接続されている。業務サーバ３００，３００ａ，４００，４００ａおよびクライアント５００，５００ａ，６００，６００ａも管理サーバ１００と同様のユニットを用いて実現できる。
【００４７】
プロセッサ１０１は、管理サーバ１００の情報処理を制御する。プロセッサ１０１は、マルチプロセッサであってもよい。プロセッサ１０１は、例えばＣＰＵ、ＭＰＵ（Micro Processing Unit）、ＤＳＰ（Digital Signal Processor）、ＡＳＩＣ（Application Specific Integrated Circuit）、ＦＰＧＡ（Field Programmable Gate Array）またはＰＬＤ（Programmable Logic Device）である。プロセッサ１０１は、ＣＰＵ、ＭＰＵ、ＤＳＰ、ＡＳＩＣ、ＦＰＧＡ、ＰＬＤのうちの２以上の要素の組合せであってもよい。
【００４８】
ＲＡＭ１０２は、管理サーバ１００の主記憶装置である。ＲＡＭ１０２は、プロセッサ１０１に実行させるＯＳ（Operating System）のプログラムやアプリケーションプログラムの少なくとも一部を一時的に記憶する。また、ＲＡＭ１０２は、プロセッサ１０１による処理に用いる各種データを記憶する。
【００４９】
ＨＤＤ１０３は、管理サーバ１００の補助記憶装置である。ＨＤＤ１０３は、内蔵した磁気ディスクに対して、磁気的にデータの書き込みおよび読み出しを行う。ＨＤＤ１０３には、ＯＳのプログラム、アプリケーションプログラム、および各種データが格納される。管理サーバ１００は、フラッシュメモリやＳＳＤ（Solid State Drive）などの他の種類の補助記憶装置を備えてもよく、複数の補助記憶装置を備えてもよい。
【００５０】
通信部１０４は、ネットワーク２０を介して他のコンピュータや中継装置２００，２００ａ，２００ｂなどと通信を行えるインタフェースである。通信部１０４は、有線インタフェースでもよいし、無線インタフェースでもよい。
【００５１】
画像信号処理部１０５は、プロセッサ１０１からの命令に従って、管理サーバ１００に接続されたディスプレイ１３に画像を出力する。ディスプレイ１３としては、ＣＲＴ（Cathode Ray Tube）ディスプレイや液晶ディスプレイなどを用いることができる。
【００５２】
入力信号処理部１０６は、管理サーバ１００に接続された入力デバイス１４から入力信号を取得し、プロセッサ１０１に出力する。例えば、入力デバイス１４としては、マウスやタッチパネルなどのポインティングデバイス、キーボードなどを用いることができる。
【００５３】
ディスクドライブ１０７は、レーザ光などを利用して、光ディスク１５に記録されたプログラムやデータを読み取る駆動装置である。光ディスク１５として、例えば、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）などを使用できる。例えば、ディスクドライブ１０７は、プロセッサ１０１からの命令に従って、光ディスク１５から読み取ったプログラムやデータをＲＡＭ１０２またはＨＤＤ１０３に格納する。
【００５４】
機器接続部１０８は、管理サーバ１００に周辺機器を接続するための通信インタフェースである。例えば、機器接続部１０８にはメモリ装置１６やリーダライタ装置１７を接続することができる。メモリ装置１６は、機器接続部１０８との通信機能を搭載した記録媒体である。リーダライタ装置１７は、メモリカード１８へのデータの書き込み、またはメモリカード１８からのデータの読み出しを行う装置である。メモリカード１８は、カード型の記録媒体である。例えば、機器接続部１０８は、プロセッサ１０１からの命令に従って、メモリ装置１６またはメモリカード１８から読み取ったプログラムやデータをＲＡＭ１０２またはＨＤＤ１０３に格納する。
【００５５】
図４は、第２の実施の形態の中継装置のハードウェア例を示す図である。中継装置２００は、プロセッサ２０１、ＲＡＭ２０２、ＲＯＭ（Read Only Memory）２０３、スイッチ部２０４およびポート部２０５を有する。中継装置２００ａ，２００ｂも中継装置２００と同様のユニットを用いて実現できる。
【００５６】
プロセッサ２０１は、ファームウェアプログラムを実行する。プロセッサ２０１は、マルチプロセッサであってもよい。プロセッサ２０１は、例えばＣＰＵ、ＭＰＵ、ＤＳＰ、ＡＳＩＣ、ＦＰＧＡまたはＰＬＤである。プロセッサ２０１は、ＣＰＵ、ＭＰＵ、ＤＳＰ、ＡＳＩＣ、ＦＰＧＡ、ＰＬＤのうちの２以上の要素の組合せであってもよい。
【００５７】
ＲＡＭ２０２は、ファームウェアプログラムやデータを一時的に記憶する。
ＲＯＭ２０３は、ファームウェアプログラムやデータを予め記憶している。ＲＯＭ２０３は、フラッシュメモリなど、書き換え可能な不揮発性メモリであってもよい。
【００５８】
スイッチ部２０４は、ポート部２０５の各ポートで受信されたフレームを取得し、プロセッサ２０１に出力する。スイッチ部２０４は、中継すると判定されたフレームをプロセッサ２０１から取得する。スイッチ部２０４は、当該フレームに含まれる宛先ＭＡＣ（Media Access Control）アドレスに基づき、当該フレームを出力するポートを判定する。スイッチ部２０４は転送先のポートを判定するための転送テーブルを保持してもよい。ネットワーク層でルーティングを行う場合には、フレーム内のＩＰパケットに含まれる宛先ＩＰアドレスから、ＡＲＰ（Address Resolution Protocol）などを用いて、ＭＡＣアドレスおよび転送先ポートを解決してもよい。スイッチ部２０４は当該フレームを判定したポートに対して出力する。
【００５９】
ポート部２０５は、ファイアウォール１１やネットワーク２０を介して、管理サーバ１００などの他の装置と通信する複数のポートを有する。例えば、ポート部２０５の一部がファイアウォール１１と所定のケーブルにより直接または間接に接続される。また、ポート部２０５の他の一部がネットワーク２０と所定のケーブルにより直接または間接に接続される。
【００６０】
図５は、第２の実施の形態のソフトウェア例を示す図である。図５に示す各ユニットの一部または全部は、管理サーバ１００および中継装置２００，２００ａ，２００ｂのプロセッサが実行するプログラムのモジュールであってもよい。また、図５に示す各ユニットの一部または全部は、管理サーバ１００および中継装置２００，２００ａ，２００ｂが備えるＡＳＩＣやＦＰＧＡなどの電子回路であってもよい。なお、図５ではファイアウォール１１やアクセスポイント１２および管理クライアント７００の図示を省略している。管理サーバ１００は、記憶部１１０および管理部１２０を有する。
【００６１】
記憶部１１０は、管理部１２０の処理に用いられる情報を記憶する。当該情報は、ユーザ管理テーブル、グループ管理テーブル、ユーザ制御テーブル、グループ制御テーブルおよび接続管理テーブルを含む。ユーザ管理テーブルは、ユーザの基本情報を登録した情報である。例えば、ユーザの基本情報は、ユーザＩＤ（IDentifier）、パスワードおよび複数クライアントを用いた同時接続（以下では多重接続ということがある）の可否などを示す情報を含む。
【００６２】
グループ管理テーブルは、ユーザと当該ユーザが所属するグループ（例えば、組織内の部署など）との対応関係を含む。ユーザ制御テーブルは、アクセス制限の条件をユーザごとに登録した情報である。グループ制御テーブルは、アクセス制限の条件をグループごとに登録した情報である。接続管理テーブルは、中継装置２００，２００ａ，２００ｂにおけるユーザごとのアクセス状態を管理するための情報である。例えば、記憶部１１０はＲＡＭ１０２やＨＤＤ１０３を用いて実装できる。
【００６３】
管理部１２０は、中継装置２００，２００ａ，２００ｂからネットワークログインの認証の依頼を受信する。ここで、ネットワークログインとは、ネットワーク２０，３０に接続するために行われるログインである。以下の説明では単にログインという場合、ネットワークログインを指すものとする。すると、管理部１２０は、記憶部１１０に記憶された情報に基づいて、ログイン処理を実行する。管理部１２０は、ログイン処理の結果に応じて、セッション情報を生成する。管理部１２０は、生成されたセッション情報をログイン処理の依頼元の中継装置に提供する。
【００６４】
ここで、セッション情報はアクセス元のクライアントからアクセス先のサーバに対するアクセス許否の認証に用いられる情報である。例えば、クライアントのＩＰアドレスやＭＡＣアドレスなどを用いてクライアントを認証し得る。セッション情報は、第１の実施の形態における認証情報の一例である。セッション情報は、中継することが許容されたＩＰアドレスの組合せを登録したアクセス制御のための情報ということもできる。
【００６５】
中継装置２００は、記憶部２１０およびアクセス制御部２２０を有する。記憶部２１０は、アクセス制御部２２０の処理に用いられる情報を記憶する。当該情報には、セッション管理テーブルが含まれる。セッション管理テーブルは、管理サーバ１００から提供されたセッション情報が登録されるテーブルである。例えば、記憶部２１０はＲＡＭ２２０を用いて実装できる。
【００６６】
アクセス制御部２２０は、クライアント５００，５００ａからログイン用の情報を受信する。アクセス制御部２２０は、当該ログイン用の情報を管理サーバ１００に送信してログイン処理を依頼する。ログイン用の情報は、ユーザＩＤおよびパスワードを含む。また、ログイン用の情報は、クライアントのアドレス情報（ＩＰアドレスやＭＡＣアドレス）などを含んでもよい。
【００６７】
アクセス制御部２２０は、ログイン用の情報を入力するためのＧＵＩ（Graphical User Interface）をクライアント５００，５００ａに提供してもよい。例えば、中継装置２００がＷｅｂサーバ機能を備えれば、当該ＧＵＩをＷｅｂページ（ログインページ）としてクライアント５００，５００ａに提供できる。
【００６８】
あるいは、ログインページを提供するＷｅｂサーバを別個に設けてもよい。そして、ログイン処理前に業務サーバを宛先に指定したアクセスをクライアント５００，５００ａから受け付けた場合、ログインページのＵＲＬへアクセス先をリダイレクトさせてもよい。更に、アクセス制御部２２０は当該ログインページで入力されたユーザＩＤやパスワードを受信してもよい。
【００６９】
アクセス制御部２２０は、ログイン処理の結果に応じたセッション情報を管理サーバ１００から受信し、記憶部２１０に記憶されたセッション管理テーブルに登録する。そして、アクセス制御部２２０は、ログイン処理後、業務サーバ３００，３００ａ，４００，４００ａ宛のリクエストを中継するとき、記憶部２１０に記憶されたセッション管理テーブルに基づいて、当該リクエストを中継するか否かの認証を行う。この認証を、前述のログインに対して、アクセス認証と呼べる。ログインを第１段階の認証といえば、アクセス認証を第２段階の認証ということもできる。当該リクエストを中継する場合、アクセス制御部２２０は、スイッチ部２０４に当該リクエストを出力する。スイッチ部２０４は、当該リクエストの宛先を参照し、所定のポートから当該リクエストを送出する。当該リクエストを中継しない場合、アクセス制御部２２０は当該リクエストを破棄する。
【００７０】
中継装置２００ａは、記憶部２１０ａおよびアクセス制御部２２０ａを有する。中継装置２００ｂは、記憶部２１０ｂおよびアクセス制御部２２０ｂを有する。ここで、記憶部２１０ａ，２１０ｂは記憶部２１０と同様に、セッション管理テーブルを記憶する。また、アクセス制御部２２０ａはアクセス制御部２２０と同様に、記憶部２１０ａに記憶されたセッション管理テーブルに基づいて業務サーバ３００，３００ａ，４００，４００ａに対するアクセス制御を行う。また、アクセス制御部２２０ｂはアクセス制御部２２０と同様に、記憶部２１０ｂに記憶されたセッション管理テーブルに基づいて業務サーバ３００，３００ａ，４００，４００ａに対するアクセス制御を行う。
【００７１】
図６は、第２の実施の形態のユーザ管理テーブルの例を示す図である。ユーザ管理テーブル１１１は、記憶部１１０に格納される。ユーザ管理テーブル１１１には、ユーザＩＤ、パスワード、多重接続設定および閉塞フラグの項目を含む。
【００７２】
ユーザＩＤの項目には、ユーザＩＤが登録される。パスワードの項目には、パスワードが登録される。多重接続設定の項目には、多重接続が許容されているか否かを示す情報が登録される。例えば、多重接続が許容されている場合には“可”という情報が、多重接続が許容されていない場合には“不可”という情報が、多重接続設定の項目に登録される。
【００７３】
閉塞フラグの項目には、当該ユーザの新規のログインが許容されているか否かを示す情報が登録される。閉塞とは当該ユーザについて新規のログインが許容されていない状態を指す。この場合、ログインが許容されている状態を、閉塞されていない状態ということができる。ログインが許容されている状態を、閉塞されている状態ということができる。閉塞の状態では、既存のログイン状態は維持され得る。閉塞フラグの項目には、ログインが許容されていない場合（すなわち、閉塞された状態の場合）には“ｔｒｕｅ”が登録される。一方、ログインが許容されている状態（すなわち、閉塞されていない状態の場合）には“ｆａｌｓｅ”が登録される。
【００７４】
例えば、ユーザ管理テーブル１１１には、ユーザＩＤが“Ｕ０００１”、パスワードが“ｐａｓｓ１”、多重接続設定が“可”、閉塞フラグが“ｆａｌｓｅ”という情報が登録されている。これは、ユーザＩＤ“Ｕ０００１”に対してログイン用のパスワードとして“ｐａｓｓ１”が設定されていること、当該ユーザの多重接続が許容されていることを示す。また、当該ユーザについて、新規のログインが許容されている状態（閉塞されていない状態）であることを示す。
【００７５】
以下ではユーザＩＤ“Ｕ０００１”のユーザをユーザＡと呼ぶことがある。ユーザＩＤ“Ｕ０００２”のユーザをユーザＢと呼ぶことがある。ユーザＩＤ“Ｕ０００３”のユーザをユーザＣと呼ぶことがある。
【００７６】
図７は、第２の実施の形態のグループ管理テーブルの例を示す図である。グループ管理テーブル１１２は、記憶部１１０に格納される。グループ管理テーブル１１２には、グループＩＤ、メンバおよび接続禁止サーバの項目が含まれる。
【００７７】
グループＩＤの項目には、グループＩＤが登録される。ここで、グループとはユーザの集合である。例えば、ユーザの集合は組織や部署単位に定義され得る。メンバの項目には、グループに属するユーザのユーザＩＤが登録される。メンバの項目には、グループに属するグループのグループＩＤが登録されてもよい。すなわち、グループを階層的に捉えて、相対的に上位のグループに相対的に下位のグループが属するような定義も可能である。下位のグループに属するメンバは、上位のグループにも属することになる。接続禁止サーバの項目には、メンバからの接続を禁止するアクセス先を示す情報が登録される。
【００７８】
例えば、グループ管理テーブル１１２には、グループＩＤが“Ｇ０００１”、メンバが“Ｕ０００１”および“Ｕ０００２”、接続禁止サーバが“１９２．１６８．１０．１０”という情報が登録される。これは、グループＩＤ“Ｇ０００１”のグループには、ユーザＡ，Ｂが属していることを示す。また、当該グループに属するユーザＡ，Ｂからの管理サーバ１００へのアクセスを禁止することを示す。
【００７９】
図８は、第２の実施の形態のユーザ制御テーブルの例を示す図である。ユーザ制御テーブル１１３は、記憶部１１０に格納される。ユーザ制御テーブル１１３には、ＲＯＬＥ、ユーザＩＤ、端末ＩＰアドレス、端末ＭＡＣアドレスおよびＡＣＬ（Access Control List）の項目を含む。
【００８０】
ＲＯＬＥの項目には、レコード（１行分のデータ単位）を識別するためのＲＯＬＥ番号が登録される。例えば、“ＲＯＬＥ１”という場合、ユーザ制御テーブル１１３のＲＯＬＥの項目にＲＯＬＥ番号“１”が設定されたレコードを示す。ＲＯＬＥという用語をユーザ制御テーブル１１３のある１つのレコードを指す用語として用いることがある。
【００８１】
ユーザＩＤの項目には、ユーザＩＤが登録される。端末ＩＰアドレスの項目には、クライアントのＩＰアドレスが登録される。端末ＭＡＣアドレスの項目には、クライアントのＭＡＣアドレスが登録される。ＡＣＬの項目には、アクセスが許容された業務サーバのＩＰアドレスのリストが登録される。接続許可ＩＰアドレスの項目には、１つのＲＯＬＥにつき複数のＩＰアドレスを登録できる。ＡＣＬの項目を細分化した“１”、“２”、“３”、“４”の番号は便宜的に付したものである。更に多数のアクセス先サーバが存在する場合には、５以上のＩＰアドレスが登録されてもよい。
【００８２】
ユーザ制御テーブル１１３には、各レコードにおいて情報が登録されていない項目もある。その場合にはハイフン記号“−”を表記している。端末ＩＰアドレスの項目で“−”が登録されている場合は、任意の端末ＩＰアドレスに対する設定であることを示す。端末ＭＡＣアドレスの項目で“−”が登録されている場合は、任意のＭＡＣアドレスに対する設定であることを示す。
【００８３】
例えば、ユーザ制御テーブル１１３には、ＲＯＬＥが“１”、ユーザＩＤが“Ｕ０００１”、端末ＩＰアドレスが“１９２．１６８．１０．１１”、端末ＭＡＣアドレスが“ＭＡＣ１”、ＡＣＬが“１９２．１６８．１０．１０１”、“１９２．１６８．１０．１０２”、“１９２．１６８．２０．１０１”、“１９２．１６８．２０．１０２”という情報が登録されている。
【００８４】
これは、ユーザＩＤ“Ｕ０００１”のユーザＡが、ＩＰアドレス“１９２．１６８．１０．１１”、ＭＡＣアドレス“ＭＡＣ１”であるクライアントからアクセスする場合、当該ＡＣＬのＩＰアドレスへのアクセスが許容されることを示す。この場合、業務サーバ３００，３００ａ，４００，４００ａへのアクセスが許容されていることになる。
【００８５】
これに対し、“ＲＯＬＥ２”では、同一のユーザＩＤ“Ｕ０００１”およびアクセス元のＩＰアドレス“１９２．１６８．１０．１１”に対して、ＡＣＬが“１９２．１６８．１０．１０１”、“１９２．１６８．２０．１０１”である。
【００８６】
これは、ユーザＩＤ“Ｕ０００１”のユーザＡが、ＩＰアドレス“１９２．１６８．１０．１１”であるクライアントからアクセスする場合、当該ＡＣＬのＩＰアドレスへのアクセスが許容されることを示す。この場合、業務サーバ３００，４００へのアクセスが許容されていることになる。“ＲＯＬＥ２”では、“ＲＯＬＥ１”に比べて、ＭＡＣアドレスの一致を課していない点が異なる。なお、ＩＰアドレス“１９２．１６８．１０．１１”およびＭＡＣアドレス“ＭＡＣ１”の両方がログイン用の情報から検出される場合は、“ＲＯＬＥ２”よりも“ＲＯＬＥ１”が優先して適用される。
【００８７】
また、“ＲＯＬＥ３”では、同一のユーザＩＤ“Ｕ０００１”に対して、ＡＣＬが“１９２．１６８．１０．１０１”という情報が登録されている。この場合、業務サーバ３００へのアクセスが許容されていることになる。“ＲＯＬＥ３”では、“ＲＯＬＥ１”や“ＲＯＬＥ２”に比べて、ＩＰアドレスおよびＭＡＣアドレスの一致を課していない点が異なる。なお、ＩＰアドレス“１９２．１６８．１０．１１”およびＭＡＣアドレス“ＭＡＣ１”の両方がログイン用の情報から検出される場合は、“ＲＯＬＥ３”よりも“ＲＯＬＥ１”が優先して適用される。ＩＰアドレス“１９２．１６８．１０．１１”のみがログイン用の情報から検出される場合は、“ＲＯＬＥ３”よりも“ＲＯＬＥ２”が優先して適用される。それ以外の場合に“ＲＯＬＥ３”が適用される。
【００８８】
このように、ユーザ制御テーブル１１３にはユーザごとのＲＯＬＥが登録される。１ユーザに対して複数のＲＯＬＥを登録してもよい。また、ＡＣＬにはネットワークアドレスなどを用いてアクセスを許容するＩＰアドレスの範囲を登録してもよい。
【００８９】
１つの業務サーバで（例えば、提供するサービスごとに）複数のＩＰアドレスを利用することもある。その場合には、当該１つの業務サーバの複数のＩＰアドレスのうち、アクセスを許容したいＩＰアドレスのみをＡＣＬに登録すればよい。あるいは、ＩＰアドレスとＴＣＰ（Transmission Control Protocol）のポート番号との組合せを用いて、１つの業務サーバ内の複数のサービスを区別することもある。その場合は、ＩＰアドレスとＴＣＰのポート番号との組合せをＡＣＬに登録すればよい。
【００９０】
図９は、第２の実施の形態のグループ制御テーブルの例を示す図である。グループ制御テーブル１１４は、記憶部１１０に格納される。グループ制御テーブル１１４には、ＲＯＬＥ、グループＩＤ、接続許可時間帯および接続許可中継装置の項目が含まれる。
【００９１】
ＲＯＬＥの項目には、ＲＯＬＥ番号が登録される。グループＩＤの項目には、グループＩＤが登録される。接続許可時間帯の項目には、ＡＣＬで示されるアクセス先へのアクセスを許容する時間帯が登録される。接続許可中継装置の項目には、アクセス元として許容される中継装置のＩＰアドレスが登録される。接続許可時間帯の項目および接続許可中継装置の項目において、設定なしの場合にはハイフン記号“−”を表記している。ハイフン記号の場合はアクセス元として全ての中継装置が許容されていることを示す。
【００９２】
例えば、グループ制御テーブル１１４には、ＲＯＬＥが“１０１”、グループＩＤが“Ｇ０００１”、接続許可時間帯が“９：００−２０：００”、接続許可中継装置が“−”という情報が登録される。これは、グループＩＤ“Ｇ０００１”のグループに属するユーザについて、ＡＣＬで示されるアクセス先へのアクセスを許容する時間帯が９時から２０時の間であることを示す。
【００９３】
一方、グループ制御テーブル１１４には、“ＲＯＬＥ１０２”のレコードが登録されている。“ＲＯＬＥ１０２”は、“ＲＯＬＥ１０１”と同じグループ（グループＩＤ“Ｇ０００１”）に属するユーザについて、ＡＣＬで示されるアクセス先へのアクセスを許容する時間帯が２０時から２４時の間であることを示す。ただし、“ＲＯＬＥ１０２”では、接続許可中継装置が“１９２．１６８．１０．２”が設定されている。すなわち、２０時から２４時の時間帯において、中継装置２００ａのみを介したアクセスが許容されていることになる。
【００９４】
このように、接続許可時間帯と接続許可中継装置との設定内容を組合せることで、アクセスを許容する時間と、アクセスを許容する場所とを制限することができる。
図１０は、第２の実施の形態の接続管理テーブルの例を示す図である。接続管理テーブル１１５は、記憶部１１０に格納される。接続管理テーブル１１５は、ユーザＩＤ、端末ＩＰアドレス、中継装置ＩＰアドレスおよび適用ＲＯＬＥの項目を含む。
【００９５】
ユーザＩＤの項目には、ユーザＩＤが登録される。端末ＩＰアドレスの項目には、クライアントのＩＰアドレスが登録される。中継装置ＩＰアドレスの項目には、ログイン処理の依頼を行った中継装置のＩＰアドレスが登録される。適用ＲＯＬＥの項目には、ログイン処理された結果、適用されるＲＯＬＥを示す情報が登録される。ここで、適用されるＲＯＬＥとは、管理サーバ１００によりログイン処理の依頼元の中継装置に提供されるＲＯＬＥである。ＲＯＬＥの提供を受けた後、当該中継装置は、当該ＲＯＬＥに基づくアクセス認証を行えるようになる。接続管理テーブル１１５は、中継装置に対するセッション情報（あるいは、ＲＯＬＥ）の配布状況を示す情報ということもできる。
【００９６】
例えば、接続管理テーブル１１５には、ユーザＩＤが“Ｕ０００１”、端末ＩＰアドレスが“５０．２２３．３．４”、中継装置ＩＰアドレスが“１９２．１６８．１０．１”、適用ＲＯＬＥが“ＲＯＬＥ１，１０１”という情報が登録されている。
【００９７】
これは、ユーザＩＤ“Ｕ０００１”のユーザＡがＩＰアドレス“５０．２２３．３．４”のクライアントを用いて、中継装置２００（ＩＰアドレス“１９２．１６８．１０．１”）を介した業務サーバへアクセスが可能であることを示す。また、アクセス認証のために適用されるＲＯＬＥが“ＲＯＬＥ１”および“ＲＯＬＥ１０１”であることを示す。“ＲＯＬＥ１０１”が適用される理由は、ユーザＡの属するグループがグループＩＤ“Ｇ０００１”のグループだからである。
【００９８】
ここで、ＩＰアドレス“５０．２２３．３．４”は、例えばクライアント５００のＩＰアドレスである。当該ＩＰアドレスがグローバルアドレスである場合、当該ＩＰアドレスは“クライアント５００に対応するＩＰアドレス”でもよい。例えば、当該ＩＰアドレスは、クライアント５００がインターネットに接続する際に経由するルータ（例えば、アクセスポイント１２）などのＩＰアドレスでもよい。クライアント５００側の当該ルータがクライアント５００のＩＰアドレスを変換する（ＮＡＴ）ことも考えられるからである。すなわち、“クライアント５００を示すＩＰアドレス”または“クライアント５００のＩＰアドレス”というとき、クライアント５００に直接的に示すＩＰアドレスおよびクライアント５００を間接的に示すＩＰアドレスの両方を含む。
【００９９】
また、例えば接続管理テーブル１１５には、ユーザＩＤが“Ｕ０００１”、端末ＩＰアドレスが“１９２．１６８．１０．１１”、中継装置ＩＰアドレスが“１９２．１６８．１０．２”、適用ＲＯＬＥが“ＲＯＬＥ１，１０１”という情報が登録されている。
【０１００】
これは、ユーザＩＤ“Ｕ０００１”のユーザＡが、ＩＰアドレス“１９２．１６８．１０．１１”のクライアントを用いて、中継装置２００ａ（ＩＰアドレス“１９２．１６８．１０．２”）を介した業務サーバへのアクセスが可能であることを示す。また、アクセス制御のために適用されるＲＯＬＥが“ＲＯＬＥ１”および“ＲＯＬＥ１０１”であることを示す。ここで、ＩＰアドレス“１９２．１６８．１０．１１”は、例えばクライアント６００のＩＰアドレスである。
【０１０１】
例えば、接続管理テーブル１１５には、ユーザＩＤ“Ｕ０００２”のユーザＢおよびユーザＩＤ“Ｕ０００３”のユーザＣに対しても同様のレコードが登録されている。レコードに登録された各情報の意味は上述した通りである。ここで、ユーザＢはクライアント５００ａを利用しているとする。接続管理テーブル１１５において、ＩＰアドレス“５０．２２３．５．５”はクライアント５００ａのＩＰアドレスである。また、ユーザＣはクライアント６００ａを利用しているとする。接続管理テーブル１１５において、ＩＰアドレス“１９２．１６８．１０．１２”はクライアント６００ａのＩＰアドレスである。
【０１０２】
１つのクライアントに対して、２つのレコードが接続管理テーブル１１５に登録されることもある。例えば、クライアント６００，６００ａについて２つ目のレコードが次のように登録されている。
【０１０３】
例えば、接続管理テーブル１１５には、ユーザＩＤが“Ｕ０００１”、端末ＩＰアドレスが“１９２．１６８．１０．１１”、中継装置ＩＰアドレスが“１９２．１６８．２０．１”、適用ＲＯＬＥが“ＲＯＬＥ１，１０１”という情報が登録されている。
【０１０４】
これは、ユーザＩＤ“Ｕ０００１”のユーザＡが、クライアント６００（ＩＰアドレス“１９２．１６８．１０．１１”）を用いて、中継装置２００ｂ（ＩＰアドレス“１９２．１６８．２０．１”）を介した業務サーバへのアクセスが可能であることを示す。また、アクセス制御のために適用されるＲＯＬＥが“ＲＯＬＥ１，１０１”であることを示す。
【０１０５】
また、例えば接続管理テーブル１１５には、ユーザＩＤが“Ｕ０００３”、端末ＩＰアドレスが“１９２．１６８．１０．１２”、中継装置ＩＰアドレスが“１９２．１６８．２０．１”、適用ＲＯＬＥが“ＲＯＬＥ６”という情報が登録されている。
【０１０６】
これは、ユーザＩＤ“Ｕ０００３”のユーザＣが、クライアント６００ａ（ＩＰアドレス“１９２．１６８．１０．１２”）を用いて、中継装置２００ｂ（ＩＰアドレス“１９２．１６８．２０．１”）を介した業務サーバへのアクセスが可能であることを示す。またアクセス制御のために適用されるＲＯＬＥが“ＲＯＬＥ６，１０２”であることを示す。“ＲＯＬＥ１０２”が適用される理由は、ユーザＣの属するグループがグループＩＤ“Ｇ０００２”のグループだからである。
【０１０７】
なお、接続管理テーブル１１５では、中継装置ＩＰアドレス以外を用いて、中継装置を登録してもよい。例えば、中継装置２００，２００ａ，２００ｂそれぞれに所定の識別名称を予め付与しておく。そして、接続管理テーブル１１５には、中継装置ＩＰアドレスの項目に代えて、当該識別名称を設定する項目を設けてもよい。
【０１０８】
図１１は、第２の実施の形態の同期制御テーブルの例を示す図である。同期制御テーブル１１６は、記憶部１１０に格納される。同期制御テーブル１１６は、同期範囲および変更内容の項目を含む。
【０１０９】
同期範囲の項目には、設定内容を同期させる範囲を示す情報が登録される。変更内容の項目には、ユーザ管理テーブル１１１、グループ管理テーブル１１２、ユーザ制御テーブル１１３およびグループ制御テーブル１１４の各項目に対する設定変更の内容を示す情報が登録される。例えば、同期制御テーブル１１６には、同期範囲が“なし”、変更内容が“ユーザの追加”という情報が登録される。これは、新規のユーザの追加を行う場合には、同期制御を行わなくてよいことを示している。
【０１１０】
また、例えば同期制御テーブル１１６には、同期範囲が“ユーザ”、変更内容が“ユーザの削除”、“ユーザパスワード”、“ユーザロール”、“ＡＣＬ”および“多重ログイン”という情報が登録される。これは、既存ユーザの設定の削除、ユーザパスワードの変更、ユーザロール（ＲＯＬＥ）の設定変更、ＡＣＬの設定変更および多重ログインの可否の設定変更を行う場合には、ユーザ単位の同期制御を行うことを示す。ユーザ単位の同期制御とは、管理サーバ１００や中継装置２００，２００ａ，２００ｂが保持する情報の内容をユーザ単位に同期させるための制御である。
【０１１１】
なお、既存ユーザの設定の削除とは、ユーザ管理テーブル１１１およびユーザ制御テーブル１１３から何れかの既存ユーザのエントリを削除することである。ユーザパスワードの変更とは、ユーザ管理テーブル１１１において何れかのユーザのパスワードを変更することである。ユーザロールの設定変更とは、グループ管理テーブル１１２におけるユーザの所属グループを変更したり、ユーザ制御テーブル１１３の何れかのエントリの内容を変更したりすることである。ＡＣＬの設定変更とは、ユーザ制御テーブル１１３のＡＣＬの内容を変更することである。多重ログインの可否の設定変更とは、ユーザ管理テーブル１１１で多重接続設定を変更することである。
【０１１２】
また、例えば同期制御テーブル１１６には、同期範囲が“ユーザグループ”、変更内容が“接続許可時間帯”、“接続許可中継装置の追加／変更”および“接続禁止サーバ”という情報が登録される。これは、接続許可時間帯の設定変更、接続許可中継装置の追加／変更および接続禁止サーバの設定変更を行う場合には、グループ単位の同期制御を行うことを示す。グループ単位の同期制御とは、管理サーバ１００や中継装置２００，２００ａ，２００ｂが保持する情報の内容をグループ単位に同期させるための制御である。
【０１１３】
なお、接続許可時間帯の設定変更とは、グループ制御テーブル１１４において、接続許可時間を変更することである。接続許可中継装置の追加／変更とは、グループ制御テーブル１１４において、接続許可中継装置の設定を追加／変更することである。接続禁止サーバの設定変更とは、グループ管理テーブル１１２において、接続禁止サーバの設定を追加／変更することである。
【０１１４】
また、例えば同期制御テーブル１１６には、同期範囲が“全ユーザ”、変更内容が“システムポリシー”および“中継装置の削除”という情報が登録される。これは、システムポリシーの変更および中継装置の削除を行う場合には、全ユーザ単位の同期制御を行うことを示す。全ユーザ単位の同期制御とは、管理サーバ１００や中継装置２００，２００ａ，２００ｂが保持する情報の内容を全ユーザで同期させるための制御である。
【０１１５】
なお、システムポリシーの変更とは、第２の実施の形態の情報処理システム全体の運用に関するポリシー設定の変更である。例えば、同期制御テーブル１１６自体の設定内容を変更する場合が考えられる。中継装置の削除とは、グループ制御テーブル１１４から何れかの接続許可中継装置の設定を完全に削除することである。
【０１１６】
図１２は、第２の実施の形態のセッション管理テーブルの例を示す図である。セッション管理テーブル２１１は、記憶部２１０に格納される。セッション管理テーブル２１１ａは、記憶部２１０ａに格納される。セッション管理テーブル２１１ｂは、記憶部２１０ｂに格納される。セッション管理テーブル２１１，２１１ａ，２１１ｂは、項番、端末ＩＰアドレス、接続許可時間帯およびＡＣＬの項目を含む。
【０１１７】
項番の項目には、レコードを識別するための番号が登録される。端末ＩＰアドレスの項目には、クライアントのＩＰアドレスが登録される。接続許可時間帯の項目には、ＡＣＬを有効とする時間帯が登録される。ＡＣＬの項目には、中継を許容する業務サーバのＩＰアドレスが登録される。ＡＣＬの項目を細分化した“１”、“２”、“３”、“４”の番号は、ユーザ制御テーブル１１３と同様に便宜的に付したものである。セッション管理テーブル２１１，２１１ａ，２１１ｂには、各レコードにおいて情報が登録されていない箇所もある。その箇所にはハイフン記号“−”を表記している。
【０１１８】
例えば、セッション管理テーブル２１１には、項番が“１”、端末ＩＰアドレスが“５０．２２３．３．４”、接続許可時間帯が“９：００−２０：００”、ＡＣＬが“１９２．１６８．１０．１０１”という情報が登録されている。これは、送信元／宛先ＩＰアドレスの組が“５０．２２３．３．４”、“１９２．１６８．１０．１０１”である通信データの中継を９時から２０時の間に許容することを示す。送信元ＩＰアドレス“５０．２２３．３．４”、宛先ＩＰアドレス“１９２．１６８．１０．１０１”の場合（上り）も、送信元ＩＰアドレス“１９２．１６８．１０．１０１”、宛先ＩＰアドレス“５０．２２３．３．４”の場合（下り）も中継を許容する。
【０１１９】
また、例えばセッション管理テーブル２１１には、項番が“２”、端末ＩＰアドレスが“５０．２２３．５．５”、接続許可時間帯が“９：００−２０：００”、ＡＣＬが“１９２．１６８．１０．１０１”、“１９２．１６８．１０．１０２”という情報が登録されている。これは、送信元／宛先ＩＰアドレスの組が“５０．２２３．５．５”、“１９２．１６８．１０．１０１”である通信データの中継を９時から２０時の間に許容することを示す。また、送信元／宛先ＩＰアドレスの組が“５０．２２３．５．５”、“１９２．１６８．１０．１０２”である通信データの中継を９時から２０時の間に許容することを示す。
【０１２０】
セッション管理テーブル２１１ａ，２１１ｂの設定内容に関しても同様である。ここで、セッション管理テーブル２１１，２１１ａ，２１１ｂは、接続管理テーブル２１３で例示した接続状態である場合に、中継装置２００，２００ａ，２００ｂが保持するセッション情報群に相当している。１レコードが１つのセッション情報である。
【０１２１】
なお、セッション管理テーブル２１１，２１１ａ，２１１ｂはユーザＩＤやパスワードの項目を含んでもよい。管理サーバ１００は、ユーザＩＤやパスワードを含むセッション情報を中継装置２００，２００ａ，２００ｂに提供してもよい。このようにすれば、例えば、中継装置２００はセッション管理テーブル２１１に登録された端末ＩＰアドレスからアクセスを受け付けたとき、当該端末ＩＰアドレスに対するユーザＩＤをアクセスログに記録できる。
【０１２２】
また、セッション管理テーブル２１１，２１１ａ，２１１ｂは、ＭＡＣアドレスの項目を含んでもよい。管理サーバ１００は端末ＭＡＣアドレスを含むセッション情報を中継装置２００，２００ａ，２００ｂに提供してもよい。例えば、中継装置２００ａにおけるクライアント６００などの識別（認証）にＭＡＣアドレス（あるいは、ＩＰアドレスとＭＡＣアドレスとの組合せ）を用いたい場合も考えられるからである。
【０１２３】
図１３は、第２の実施の形態の通信データの例を示す図である。図１３では、第２の実施の形態の情報処理システムで送受信される通信データを例示している。フレーム４０は、イーサネットフレーム（イーサネットおよびＥｔｈｅｒｎｅｔは登録商標）の例である。フレーム４０は、プリアンブル、宛先ＭＡＣアドレス、送信元ＭＡＣアドレス、タイプ、ペイロード、ＦＣＳ（Frame Check Sequence）のフィールドを含む。
【０１２４】
プリアンブルは同期用の信号を含むフィールドである。宛先ＭＡＣアドレスはＯＳＩ参照モデルの第２層（データリンク層）の経路選択に用いられる宛先のＭＡＣアドレスが設定されるフィールドである。送信元ＭＡＣアドレスは送信元のＭＡＣアドレスが設定されるフィールドである。タイプは上位層プロトコル（例えば、ＩＰ）を示す情報が設定されるフィールドである。ペイロードは上位層プロトコルで扱われるデータの本体が設定されるフィールドである。ペイロードはＩＰパケット５０を含む。ＦＣＳはフレームエラーを検出するための情報が設定されるフィールドである。
【０１２５】
ＩＰパケット５０は、送信元ＩＰアドレス、宛先ＩＰアドレスおよびユーザデータのフィールドを含む。送信元ＩＰアドレスは、ＯＳＩ参照モデルの第３層（ネットワーク層）の経路選択に用いられる送信元のＩＰアドレスが設定されるフィールドである。宛先ＩＰアドレスは、宛先のＩＰアドレスが設定されるフィールドである。ユーザデータは、通信データ本体が設定されるフィールドである。データのフィールドは、ユーザデータ６０を含む。なお、ＩＰパケット５０はデータグラムと呼ばれることもある。
【０１２６】
ユーザデータ６０は、各中継装置や各サーバなどの処理で用いられるデータを含む。例えば、何れかのクライアントが何れかの中継装置に対してログイン用の情報を送信する場合、ユーザデータ６０にはユーザＩＤおよびパスワードが含まれ得る。また、何れかの中継装置が管理サーバ１００に認証依頼などを行う場合、ユーザデータ６０にはクライアントのＩＰアドレスやＭＡＣアドレスなどが含まれ得る。ユーザデータ６０に含まれるユーザＩＤ、パスワードおよび各種アドレス情報（例えば、ＩＰアドレスやＭＡＣアドレス）などは、ＯＳＩ参照モデルの第７層（アプリケーション層）で用いられる情報でもよい。
【０１２７】
次に、第２の実施の形態における各処理の手順を説明する。以下では、クライアント５００が中継装置２００などを介して業務サーバにアクセスする場合を主に例示するが、他のクライアントおよび他の中継装置を用いる場合も同様の手順である。まず、ネットワークログインの手順を説明する。
【０１２８】
図１４は、第２の実施の形態のログイン処理の例を示すフローチャートである。以下、図１４に示す処理をステップ番号に沿って説明する。
（ステップＳ１１）アクセス制御部２２０は、クライアント５００からログイン用の情報（ログイン情報）を受信する。例えば、ユーザＡは、クライアント５００上のＷｅｂブラウザを用いてユーザＩＤやパスワードを入力するためのＷｅｂページ（ログインページ）へアクセスする。例えば、ユーザＡは自身のユーザＩＤ“Ｕ０００１”およびパスワード“ｐａｓｓ１”を当該ログインページに入力する。クライアント５００は、入力された情報を含むフレームを中継装置２００へ宛てて送信する。アクセス制御部２２０は当該フレームを受信する。フレーム内のＩＰパケットには送信元ＩＰアドレスおよび送信元ＭＡＣアドレスが含まれる。この場合、送信元ＩＰアドレスは“５０．２２３．３．４”である。送信元ＭＡＣアドレスは所定のＭＡＣアドレスである。アクセス制御部２２０は、これらのアドレス情報も抽出し、ログイン情報に加える。
【０１２９】
（ステップＳ１２）アクセス制御部２２０は、ログイン情報を含むログイン要求を管理サーバ１００に送信する。ログイン情報は、ＩＰパケットのユーザデータ部分に格納されて管理サーバ１００に送信される。管理部１２０は中継装置２００からログイン要求を受信する。
【０１３０】
（ステップＳ１３）管理部１２０は、記憶部１１０に記憶されたユーザ管理テーブル１１１を参照して、ログインの照合を行う。ログインの照合は、（１）当該ユーザのログインが閉塞されていないことの照合、（２）ユーザＩＤとパスワードとの照合および（３）ログイン要求の送信元の中継装置の照合を含む。（１）の照合は、ユーザ管理テーブル１１１の閉塞フラグが“ｆａｌｓｅ”であれば照合成功である。（２）の照合は、ログイン要求に含まれるユーザＩＤとパスワードとの組合せをユーザ管理テーブル１１１の設定と照合することで行える。（３）の照合は、ログイン要求（のフレームに含まれるＩＰパケット）に設定された送信元ＩＰアドレスを、グループ制御テーブル１１４の設定と照合することで行える。（３）では照合を行う時間帯も考慮する。例えば、グループ制御テーブル１１４には、グループＩＤ“Ｇ０００１”に対して、２つの時間帯で異なる接続許可中継装置が登録されている。管理部１２０は、現時刻が属する時間帯の接続許可中継装置を抽出して照合を行う。接続許可中継装置の設定がない場合には、任意のＩＰアドレスとの照合が成功する。ユーザＩＤが属するグループのグループＩＤは、グループ管理テーブル１１２から得られる。（１）〜（３）の照合に成功すると、処理をステップＳ１４に進める。（１）〜（３）の何れかの照合に失敗すると、処理をステップＳ１９に進める。ステップＳ１４に進む場合、管理部１２０は（３）の照合で用いたグループ制御テーブル１１４のＲＯＬＥを保持する。
【０１３１】
（ステップＳ１４）管理部１２０は、記憶部１１０に記憶されたユーザ制御テーブル１１３を参照して、ＡＣＬを検索する。検索のキーは、ログイン要求（のＩＰパケットのデータ部分）に含まれるユーザＩＤ、送信元ＩＰアドレスおよび送信元ＭＡＣアドレスである。管理部１２０は、少なくともユーザＩＤが一致するレコードがあれば、該当のレコードを検索結果として抽出する。検索結果が複数件になる場合もある。その場合は、一致するキーが最大のものを１件抽出して検索結果とする。本例の場合は、ユーザＩＤ“Ｕ０００１”、クライアント５００のＩＰアドレス“５０．２２３．３．４”（および送信元ＭＡＣアドレス）を取得している。この場合、“ＲＯＬＥ３”のレコードが検索結果として得られることになる。
【０１３２】
（ステップＳ１５）管理部１２０は、ステップＳ１４においてＡＣＬを検索できたか否かを判定する。検索できた場合、処理をステップＳ１６に進める。検索できなかった場合、処理をステップＳ１９に進める。
【０１３３】
（ステップＳ１６）管理部１２０は、処理中のユーザにつき多重接続の制約があるか否かを判定する。多重接続の制約がある場合、処理をステップＳ１９に進める。多重接続の制約がない場合、処理をステップＳ１７に進める。多重接続の制約がある場合とは次の場合である。すなわち、（１）処理中のユーザにつきユーザ管理テーブル１１１の多重接続設定が“不可”であり、かつ、（２）当該ユーザにつき認証依頼で受け付けた送信元ＩＰアドレスとは別の端末ＩＰアドレスのレコードが接続管理テーブル１１５に登録済の場合である。（１）、（２）の何れか一方が満たされていない場合は、多重接続の制約はないと判定する。
【０１３４】
（ステップＳ１７）管理部１２０は、接続管理テーブル１１５を更新する。具体的には、管理部１２０はログイン要求で受け付けたユーザＩＤ、送信元ＩＰアドレス（端末ＩＰアドレス）およびステップＳ１３，Ｓ１４の処理で取得されたレコードのＲＯＬＥ番号（適用ＲＯＬＥ）を接続管理テーブル１１５に登録する。また、ログイン要求（のフレームに含まれるＩＰパケットのヘッダ部分）には、送信元ＩＰアドレスとして中継装置２００のＩＰアドレスが設定されている。管理部１２０は、中継装置２００のＩＰアドレス（中継装置ＩＰアドレス）も接続管理テーブル１１５に登録する。
【０１３５】
（ステップＳ１８）管理部１２０は、ステップＳ１３，Ｓ１４で取得されたＲＯＬＥに基づいて、セッション情報を生成する。セッション情報は、端末ＩＰアドレスおよびＡＣＬの情報を含む。また、セッション情報は、接続許可時間帯の情報を含む。ここで、管理部１２０は、該当のユーザＩＤが属するグループのグループＩＤに対して接続禁止サーバがグループ管理テーブル１１２に設定されている場合は、接続禁止のＩＰアドレスをＡＣＬから除外してセッション情報を生成する。管理部１２０は、生成されたセッション情報とログイン成功とを中継装置２００に応答する。そして、処理をステップＳ２０に進める。
【０１３６】
（ステップＳ１９）管理部１２０は、ログイン失敗を中継装置２００に応答する。
（ステップＳ２０）アクセス制御部２２０は、ログイン要求に対する応答を管理サーバ１００から受信し、当該応答に基づいてログイン成功であるか否かを判定する。ログイン成功である場合、処理をステップＳ２１に進める。ログイン失敗である場合、処理をステップＳ２３に進める。
【０１３７】
（ステップＳ２１）アクセス制御部２２０は、ログイン成功とともに受信したセッション情報を記憶部２１０に記憶されたセッション管理テーブル２１１に登録する。例えば、セッション管理テーブル２１１に項番“１”のレコードが登録される。
【０１３８】
（ステップＳ２２）アクセス制御部２２０は、クライアント５００にログイン成功を応答する。そして、処理を終了する。
（ステップＳ２３）アクセス制御部２２０は、クライアント５００にログイン失敗を応答する。そして、処理を終了する。
【０１３９】
このようにして、管理サーバ１００および中継装置２００は、ネットワークログイン処理を行う。ステップＳ１８では、受け付けた送信元ＩＰアドレスと一致する端末ＩＰアドレスのレコードが存在しない場合でも、対応するユーザにつき所定のＲＯＬＥ（端末ＩＰアドレスが設定されていないＲＯＬＥ）を抽出してセッション情報を生成する。このため、例えば、クライアント５００のＩＰアドレスが動的に割り当てられている場合にも、当該所定のＲＯＬＥを適用することができる。具体的には、クライアント５００が移動通信を介して通信する場合やクライアント６００に固定のＩＰアドレスを割り当てない場合など、ＤＨＣＰ（Dynamic Host Configuration Protocol）を用いてクライアントに動的にＩＰアドレスが割り当てられることもある。すなわち、クライアントに静的ＩＰアドレスが割り当てられている場合に限らず、動的ＩＰアドレスが割り当てられている場合にもクライアントからのアクセスを制限できる。
【０１４０】
なお、ステップＳ１８では、ユーザ制御テーブル１１３のＲＯＬＥにおいて、端末ＩＰアドレスが未設定のものを用いてセッション情報を生成する際に、中継装置２００から取得されたクライアント５００のＩＰアドレスを管理部１２０が設定するものとした。一方、アクセス制御部２２０が当該設定の処理を行ってもよい。具体的には、管理部１２０は、“ＲＯＬＥ３”について端末ＩＰアドレスを未設定の状態でセッション情報を生成し、中継装置２００に送る。そして、ステップＳ２１においてアクセス制御部２２０の責任によりステップＳ１１で抽出された送信元ＩＰアドレス（クライアント５００のＩＰアドレス）を当該セッション情報に設定し、セッション管理テーブル２１１に登録する。
【０１４１】
また、ユーザ管理テーブル１１１でパスワードを管理するものとしたが、ユーザ制御テーブル１１３でパスワードを管理してもよい。そうすれば、同一ユーザであってもＲＯＬＥごとに異なるパスワードをログイン用に利用できる。この場合、管理部１２０は、ステップＳ１４においてＡＣＬを検索する際にパスワードもキーに用いる。
【０１４２】
次に、中継装置２００によるアクセス認証の手順を説明する。中継装置２００についてのみ説明するが、中継装置２００ａ，２００ｂについても同様の手順である。
図１５は、第２の実施の形態のアクセス認証の例を示すフローチャートである。以下、図１５に示す処理をステップ番号に沿って説明する。
【０１４３】
（ステップＳ３１）アクセス制御部２２０は、中継対象の通信データを受信する。例えば、この通信データはクライアント５００により業務サーバ３００へ宛てて送信されたリクエストである。その場合、当該リクエストの宛先ＩＰアドレスは“１９２．１６８．１０．１０１”である。また、当該リクエストの送信元ＩＰアドレスは“５０．２２３．３．４”である。アクセス制御部２２０は、通信データのＩＰパケットから送信元ＩＰアドレスを抽出する。
【０１４４】
（ステップＳ３２）アクセス制御部２２０は、記憶部２１０に記憶されたセッション管理テーブル２１１を参照して、当該送信元ＩＰアドレスに対応するセッション情報があるか否かを判定する。送信元ＩＰアドレスに対応するセッション情報がある場合、処理をステップＳ３８に進める。送信元ＩＰアドレスに対応するセッション情報がない場合、処理をステップＳ３３に進める。
【０１４５】
（ステップＳ３３）アクセス制御部２２０は、当該送信元ＩＰアドレスが接続管理テーブル１１５に登録済であるか否かを問い合わせるための確認要求を管理サーバ１００に送信する。この確認要求をログインの確認要求と呼ぶことがある。このように呼ぶ理由は次の通りである。図１４で説明したログイン処理に成功していれば（ログイン済であれば）、管理サーバ１００は接続管理テーブル１１５に当該送信元ＩＰアドレスを登録しているはずである。このため、当該送信元ＩＰアドレスが接続管理テーブル２１３に登録済であるか否かの確認は、結果的にログイン済か否かを確認することになるからである。当該確認要求に対する管理サーバ１００の処理手順は後述する。
【０１４６】
（ステップＳ３４）アクセス制御部２２０は、ログインの確認要求に対する応答を管理サーバ１００から受信する。当該応答には、ログイン済であるか否かの確認結果が含まれる。また、確認結果がログイン済である場合、適用ＲＯＬＥに対応するセッション情報が当該応答に含まれる。セッション情報は、ステップＳ３１で抽出された送信元ＩＰアドレスとＡＣＬと接続許可時間帯との組合せを含む。
【０１４７】
（ステップＳ３５）アクセス制御部２２０は、当該応答に基づいてログイン済であるか否かを判定する。ログイン済である場合、処理をステップＳ３６に進める。ログイン済でない場合、処理をステップＳ３７に進める。
【０１４８】
（ステップＳ３６）アクセス制御部２２０は、受信されたセッション情報をセッション管理テーブル２１１に登録する。そして、処理をステップＳ３８に進める。
（ステップＳ３７）アクセス制御部２２０は、クライアント５００のアクセスをログインページにリダイレクトさせる。例えば、クライアント５００から受信されたＨＴＴＰのリクエスト（ステップＳ３１のリクエスト）を、ログインページのＵＲＬを指定したリクエストに置き換えて転送する。ログインページの提供は中継装置２００が行ってもよいし、他のＷｅｂサーバが行ってもよい。すると、クライアント５００のＷｅｂブラウザにはログインページが表示され、ユーザＩＤやパスワード（ログイン用の情報）の入力がユーザに促される。そして、処理を終了する。ユーザＩＤおよびパスワードを受け付けた後の手順は図１４のログイン処理の手順となる。この場合、ステップＳ３１で受信した通信データの中継は行われないことになる。例えば、当該通信データをＲＡＭなどに格納して中継を保留しておき、ログインに成功した後に、中継を行うかを再度判断するようにしてもよい。
【０１４９】
（ステップＳ３８）アクセス制御部２２０は、セッション管理テーブル２１１を参照して、ステップＳ３１で抽出された送信元／宛先ＩＰアドレス間の中継が許容されているか否かを判定する。中継が許容されている場合、処理をステップＳ３９に進める。中継が許容されていない場合、処理をステップＳ４０に進める。
【０１５０】
（ステップＳ３９）アクセス制御部２２０は、ステップＳ３１で受信した通信データをスイッチ部２０４に出力する。スイッチ部２０４は宛先ＩＰアドレスに対して通信データを転送する（通信データが中継される）。そして、処理を終了する。
【０１５１】
（ステップＳ４０）アクセス制御部２２０は、ステップＳ３１で受信した通信データを破棄する。すなわち、当該通信データを中継しない。そして、処理を終了する。
このようにして、中継装置２００は通信データの中継を行う。中継装置２００は、通信データに含まれる送信元ＩＰアドレスおよび宛先ＩＰアドレスの組合せと、セッション管理テーブル２１１とを照合して、通信データを中継するか否かを判定する。通信データを中継しない場合には、当該宛先ＩＰアドレスへのアクセスが許可されていない旨をクライアント５００に通知してもよい。
【０１５２】
また、ステップＳ３３，Ｓ３４のように管理サーバ１００にログインの確認要求を行う理由は、１つのクライアントが複数の中継装置を介して異なる業務サーバにアクセスする可能性があるからである。例えば、クライアント６００，６００ａは中継装置２００ａ，２００ｂの両方を経由して業務サーバ４００，４００ａにアクセスする可能性がある。ログインの確認要求を行うことで、ユーザが中継装置２００ａでログイン操作を行った後、中継装置２００ｂで再度のログイン操作を当該ユーザに課さずに済む。すなわち、再度のログイン操作を課す場合よりもユーザの手間を省ける。
【０１５３】
次に、ステップＳ３３，Ｓ３４の間で実行される管理サーバ１００の処理手順を説明する。
図１６は、第２の実施の形態のログイン確認例を示すフローチャートである。以下、図１６に示す処理をステップ番号に沿って説明する。
【０１５４】
（ステップＳ４１）管理部１２０は、ステップＳ３３の確認要求を中継装置２００から受信する。確認要求には確認対象のクライアントのＩＰアドレスが含まれる。
（ステップＳ４２）管理部１２０は、記憶部１１０に記憶された接続管理テーブル１１５を参照して、当該ＩＰアドレスが登録済であるか否かを判定する。登録済である場合、処理をステップＳ４３に進める。登録済でない場合、処理をステップＳ４５に進める。接続管理テーブル１１５の端末ＩＰアドレスの項目に、当該ＩＰアドレスが設定されたレコードが存在する場合、登録済である。一方、接続管理テーブル１１５の端末ＩＰアドレスの項目に当該ＩＰアドレスが設定されたレコードが存在しない場合、登録済でない。
【０１５５】
（ステップＳ４３）管理部１２０は、接続管理テーブル１１５を更新する。具体的には、管理部１２０は、確認要求で受け付けたクライアントのＩＰアドレス（端末ＩＰアドレス）を含むレコードを接続管理テーブル１１５に追加する。追加されるレコードは、ステップＳ４２で登録済と判断した根拠となるレコードのユーザＩＤおよび適用ＲＯＬＥの設定値を含む。また、追加されるレコードは、確認要求の送信元ＩＰアドレスである中継装置２００のＩＰアドレス（中継装置ＩＰアドレス）を含む。具体的には、確認要求（のフレームに含まれるＩＰパケットのヘッダ部分）は送信元ＩＰアドレスとして中継装置２００のＩＰアドレスを含む。このＩＰアドレスを当該レコードの中継装置ＩＰアドレスの項目に設定する。
【０１５６】
（ステップＳ４４）管理部１２０は、ユーザ制御テーブル１１３およびグループ制御テーブル１１４に基づいて、セッション情報を生成する。具体的には、ステップＳ４３で新たなレコードに設定した適用ＲＯＬＥに対応する端末ＩＰアドレス、ＡＣＬおよび接続許可時間帯の組合せをセッション情報とする。そして、管理部１２０は、確認要求に対して、ログイン済である旨を中継装置２００に応答する。当該応答には、生成されたセッション情報が含まれる。そして、処理を終了する。
【０１５７】
（ステップＳ４５）管理部１２０は、未ログインである旨を中継装置２００に応答する。そして、処理を終了する。
このようにして、管理サーバ１００は中継装置２００からの確認要求に対してログイン確認の処理を実行する。次に、図１４〜１６の手順を実行する管理サーバ１００および中継装置２００，２００ａ，２００ｂの通信の具体例を説明する。
【０１５８】
図１７は、第２の実施の形態の通信の具体例（その１）を示す図である。以下、図１７に示す処理をステップ番号に沿って説明する。ステップＳＴ１０１の直前では、接続管理テーブル１１５およびセッション管理テーブル２１１のエントリ（登録されたレコード）はないものとする。また、以下の通信が行われる時間帯は、９時から２０時の時間帯に含まれるとする。
【０１５９】
（ステップＳＴ１０１）クライアント５００は、ログインページでユーザＡにより入力されたログイン用の情報（ログイン情報）を中継装置２００に送信する。ログイン情報には、ユーザＩＤ“Ｕ０００１”およびパスワード“ｐａｓｓ１”が含まれる。中継装置２００はログイン情報を受信する。ログイン情報は、図１３で説明したフレームを用いて中継装置２００に送られる。
【０１６０】
（ステップＳＴ１０２）中継装置２００は、当該フレームから送信元ＩＰアドレス“５０．２２３．３．４”および送信元ＭＡＣアドレスを抽出する。中継装置２００は送信元ＩＰアドレスおよび送信元ＭＡＣアドレスを、ステップＳＴ１０１で受信したログイン情報に加える。すなわち、抽出した送信元ＩＰアドレスおよび送信元ＭＡＣアドレスをＩＰパケットのデータ部分に設定した新たなフレームを生成する。中継装置２００は、当該フレームを管理サーバ１００に送信する。このフレームはログイン要求に相当する。ログイン要求は、ユーザＩＤ、パスワード、ステップＳＴ１０１で受信したフレームの送信元ＩＰアドレスおよび送信元ＭＡＣアドレスを含む。管理サーバ１００はログイン要求を受信する。
【０１６１】
（ステップＳＴ１０３）管理サーバ１００は、ユーザ管理テーブル１１１を参照して、ユーザＡについて閉塞状態でないことを確認する。管理サーバ１００は、ログイン要求に含まれるユーザＩＤおよびパスワードを、ユーザ管理テーブル１１１の登録内容と照合する。ユーザ管理テーブル１１１には、ユーザＩＤ“Ｕ０００１”とパスワード“ｐａｓｓ１”との組が登録されている。このため本照合は成功する。また、グループ管理テーブル１１２によれば、ユーザＩＤ“Ｕ０００１”はグループＩＤ“Ｇ０００１”のグループに属している。そして、グループ制御テーブル１１４によれば、９時から２０時の時間帯において、当該グループでは任意の中継装置を経由したアクセスが許容されている。よって、アクセス元の中継装置の照合も成功する。更に、ユーザＩＤ“Ｕ０００１”、送信元ＩＰアドレス“５０．２２３．３．４”に対して、ユーザ制御テーブル１１３にはユーザＩＤ“Ｕ０００１”、端末ＩＰアドレス“−”、ＭＡＣアドレス“−”の“ＲＯＬＥ３”が存在する。管理サーバ１００は適用ＲＯＬＥとして“ＲＯＬＥ３”を特定する。また、ユーザ管理テーブル１１１によれば、ユーザＡには多重接続の制約はない（多重接続設定が“可”であるため）。よって、管理サーバ１００は“ＲＯＬＥ３”を用いて送信元ＩＰアドレス“５０．２２３．３．４”および接続許可時間帯“９：００−２０：００”を含むセッション情報を生成し、ログイン成功の通知とともに、中継装置２００に送信する。中継装置２００はセッション情報と認証成功の通知とを受信する。また、管理サーバ１００は接続管理テーブル１１５の更新も行う。具体的には、ユーザＩＤ“Ｕ０００１”、端末ＩＰアドレス“５０．２２３．３．４”、中継装置ＩＰアドレス“１９２．１６８．１０．１”、適用ＲＯＬＥ“ＲＯＬＥ３，１０１”のレコードを接続管理テーブル２１３に追加する。
【０１６２】
（ステップＳＴ１０４）中継装置２００は、受信したセッション情報をセッション管理テーブル２１１に登録する。この場合、セッション管理テーブル２１１の項番“１”で例示したレコードが登録されることになる。中継装置２００は、ログイン成功の通知をクライアント５００に送信する。クライアント５００はログイン成功の通知を受信する。
【０１６３】
（ステップＳＴ１０５）クライアント５００は、業務サーバ３００へ宛てたリクエストを送信する。例えば、リクエストの宛先ＩＰアドレスは“１９２．１６８．１０．１０１”である。また、送信元ＩＰアドレスは“５０．２２３．３．４”である。中継装置２００は当該リクエストを受信する。
【０１６４】
（ステップＳＴ１０６）中継装置２００は、受信したリクエストのＩＰパケットに含まれる送信元／宛先ＩＰアドレスの組をセッション管理テーブル２１１の登録内容と照合する。セッション管理テーブル２１１には、ステップＳＴ１０４で登録された項番“１”のレコードが存在する。すなわち、当該リクエストの中継は許容されている。よって、中継装置２００は業務サーバ３００に対して当該リクエストを転送する。業務サーバ３００は当該リクエストを受信する。
【０１６５】
（ステップＳＴ１０７）業務サーバ３００は、受信したリクエストに応じた処理を実行する。業務サーバ３００は、処理結果に応じたレスポンスをクライアント５００に送信する。当該レスポンスは、中継装置２００を介してクライアント５００に送信される。前述のように中継装置２００は、業務サーバ３００からクライアント５００への通信についても、セッション管理テーブル２１１に基づいて中継が許容されていると判断する。よって、中継装置２００は当該レスポンスを中継する。クライアント５００は当該レスポンスを受信する。
【０１６６】
（ステップＳＴ１０８）クライアント５００は、業務サーバ３００ａへ宛てたリクエストを送信する。当該リクエストのＩＰパケットに含まれる宛先ＩＰアドレスは“１９２．１６８．１０．１０２”である。送信元ＩＰアドレスは“５０．２２３．３．４”である。中継装置２００は当該リクエストを受信する。
【０１６７】
（ステップＳＴ１０９）中継装置２００は、受信したリクエストのＩＰパケットに含まれる送信元／宛先ＩＰアドレスの組を、セッション管理テーブル２１１の登録内容と照合する。この時点でセッション管理テーブル２１１には、送信元ＩＰアドレス“５０．２２３．３．４”を含むレコードは存在する。しかし、対応するＡＣＬには宛先ＩＰアドレス“１９２．１６８．１０．１０２”は含まれていない。すなわち、当該リクエストの中継は許容されていない。よって、中継装置２００は当該リクエストの中継を行わずに、当該リクエストを破棄する。
【０１６８】
このように、クライアント５００はネットワークログインを経て、“ＲＯＬＥ３”のＡＣＬに登録された業務サーバ３００にアクセス可能となる。一方、”ＲＯＬＥ３”のＡＣＬで他の業務サーバについてはアクセスが許されていない。このため、中継装置２００により業務サーバ３００以外の業務サーバに対するクライアント５００からのアクセスは制限される。
【０１６９】
次に、ネットワークログインを経ずに、クライアント５００から業務サーバ３００へのアクセスを受け付けた場合の通信を例示する。
図１８は、第２の実施の形態の通信の具体例（その２）を示す図である。以下、図１８に示す処理をステップ番号に沿って説明する。ステップＳＴ１１１の直前では、接続管理テーブル１１５およびセッション管理テーブル２１１のエントリはないものとする。また、以下の通信が行われる時間帯は、９時から２０時の時間帯に含まれるとする。
【０１７０】
（ステップＳＴ１１１）クライアント５００は、業務サーバ３００へ宛てたリクエストを送信する。当該リクエストはファイアウォール１１を介して中継装置２００へ転送される。中継装置２００はリクエストを受信する。中継装置２００により受信されるリクエストのＩＰパケットに含まれる宛先ＩＰアドレスは“１９２．１６８．１０．１０１”である。送信元ＩＰアドレスは“５０．２２３．３．４”である。
【０１７１】
（ステップＳＴ１１２）中継装置２００は、受信したリクエストのＩＰパケットに含まれる送信元／宛先ＩＰアドレスの組を、セッション管理テーブル２１１の登録内容と照合する。セッション管理テーブル２１１には、この時点でエントリはない。すなわち、送信元ＩＰアドレス“５０．２２３．３．４”を含むレコードは存在しない。よって、中継装置２００は、ログインの確認要求を管理サーバ１００に送信する。当該確認要求（ＩＰパケットのデータ部分）には送信元ＩＰアドレス“５０．２２３．３．４”が含まれる。管理サーバ１００は確認要求を受信する。
【０１７２】
（ステップＳＴ１１３）管理サーバ１００は、確認要求に含まれる送信元ＩＰアドレスを、接続管理テーブル１１５の登録内容と照合する。接続管理テーブル１１５には、この時点でエントリはない。すなわち、送信元ＩＰアドレス“５０．２２３．３．４”を含むレコードは存在しない。よって、管理サーバ１００は、未ログインである旨を中継装置２００に応答する。中継装置２００は当該応答を受信する。
【０１７３】
（ステップＳＴ１１４）中継装置２００は、受信したリクエストをログインページへリダイレクトさせる。中継装置２００がログインページを提供可能な場合には、例えば、当該ログインページのデータをクライアント５００に提供する。クライアント５００はログインページのデータを受信する。他のＷｅｂサーバが提供するログインページにリダイレクトさせてもよい。すると、クライアント５００のＷｅｂブラウザはログインページをユーザＡに提示する。
【０１７４】
（ステップＳＴ１１５）クライアント５００は、ログインページでユーザＡにより入力されたログイン用の情報を中継装置２００に送信する。当該ログイン用の情報には、ユーザＩＤ“Ｕ０００１”およびパスワード“ｐａｓｓ１”が含まれる。中継装置２００はログイン情報（フレーム）を受信する。
【０１７５】
（ステップＳＴ１１６）中継装置２００は、受信したフレームから送信元ＩＰアドレス“５０．２２３．３．４”および送信元ＭＡＣアドレスを抽出する。中継装置２００は、抽出された送信元ＩＰアドレスおよび送信元ＭＡＣアドレスをＩＰパケットのデータ部分に設定した新たなフレーム（ログイン要求）を生成し、管理サーバ１００に送信する。管理サーバ１００はログイン要求を受信する。ログイン要求にはユーザＩＤおよびパスワードも含まれる。
【０１７６】
（ステップＳＴ１１７）管理サーバ１００は、図１７のステップＳＴ１０３と同様にして、セッション情報を生成する。また、接続管理テーブル１１５に新たなレコードを追加する。管理サーバ１００は、生成されたセッション情報とログイン成功の通知とを中継装置２００に送信する。中継装置２００はセッション情報とログイン成功の通知とを受信する。
【０１７７】
（ステップＳＴ１１８）中継装置２００は、図１７のステップＳＴ１０４と同様に、管理サーバ１００から受信したセッション情報をセッション管理テーブル２１１に登録する。中継装置２００は、ログイン成功の通知をクライアント５００に送信する。クライアント５００はログイン成功の通知を受信する。
【０１７８】
以後、図１７のステップＳＴ１０５以降と同様の手順により、クライアント５００から業務サーバ３００へのアクセスが可能となる。次に、ユーザＡがクライアント５００，６００の両方を用いてネットワークログインを行う場合の通信を例示する。
【０１７９】
図１９は、第２の実施の形態の通信の具体例（その３）を示す図である。以下、図１９に示す処理をステップ番号に沿って説明する。ステップＳＴ１２１の直前では、接続管理テーブル１１５およびセッション管理テーブル２１１，２１１ａのエントリはないものとする。また、以下の通信が行われる時間帯は９時から２０時の時間帯に含まれるとする。
【０１８０】
（ステップＳＴ１２１）クライアント５００は、ログインページでユーザＡにより入力されたログイン情報を中継装置２００に送信する。当該ログイン情報には、ユーザＩＤ“Ｕ０００１”およびパスワード“ｐａｓｓ１”が含まれる。中継装置２００はログイン情報（フレーム）を受信する。
【０１８１】
（ステップＳＴ１２２）中継装置２００は、受信したフレームから送信元ＩＰアドレス“５０．２２３．３．４”および送信元ＭＡＣアドレスを抽出する。中継装置２００は、抽出した送信元ＩＰアドレスおよび送信元ＭＡＣアドレスをＩＰパケットのデータ部分に設定した新たなフレーム（ログイン要求）を生成し、管理サーバ１００に送信する。管理サーバ１００はログイン要求を受信する。ログイン要求にはユーザＩＤおよびパスワードも含まれる。
【０１８２】
（ステップＳＴ１２３）管理サーバ１００は、図１７のステップＳＴ１０３と同様にして、セッション情報を生成する。また、接続管理テーブル１１５にレコードを追加する。具体的には、ユーザＩＤ“Ｕ０００１”、端末ＩＰアドレス“５０．２２３．３．４”、中継装置ＩＰアドレス“１９２．１６８．１０．１”、適用ＲＯＬＥ“ＲＯＬＥ３，１０１”のレコードである。管理サーバ１００は、生成したセッション情報とログイン成功の通知とを中継装置２００に送信する。中継装置２００はセッション情報とログイン成功の通知とを受信する。
【０１８３】
（ステップＳＴ１２４）中継装置２００は、図１７のステップＳＴ１０４と同様に、管理サーバ１００から受信したセッション情報をセッション管理テーブル２１１に登録する。中継装置２００は、ログイン成功の通知をクライアント５００に送信する。クライアント５００はログイン成功の通知を受信する。
【０１８４】
（ステップＳＴ１２５）クライアント６００は、ログインページでユーザＡにより入力されたログイン情報を中継装置２００ａに送信する。当該ログイン情報には、ユーザＩＤ“Ｕ０００１”およびパスワード“ｐａｓｓ１”が含まれる。中継装置２００ａはログイン情報（フレーム）を受信する。
【０１８５】
（ステップＳＴ１２６）中継装置２００ａは、受信したフレームから送信元ＩＰアドレス“１９２．１６８．１０．１１”および送信元ＭＡＣアドレス“ＭＡＣ１”を抽出する。中継装置２００ａは、抽出した送信元ＩＰアドレスおよび送信元ＭＡＣアドレスをＩＰパケットのデータ部分に設定した新たなフレーム（ログイン要求）を生成し、管理サーバ１００に送信する。管理サーバ１００はログイン要求を受信する。ログイン要求にはユーザＩＤおよびパスワードも含まれる。
【０１８６】
（ステップＳＴ１２７）管理サーバ１００は、ユーザ管理テーブル１１１を参照して、ユーザＡについて閉塞状態でないことを確認する。管理サーバ１００は、ログイン要求に含まれるユーザＩＤおよびパスワードを、ユーザ管理テーブル１１１の登録内容と照合する。ユーザ管理テーブル１１１には、ユーザＩＤ“Ｕ０００１”とパスワード“ｐａｓｓ１”との組が登録されている。このため、本照合は成功する。また、グループ管理テーブル１１２によれば、ユーザＩＤ“Ｕ０００１”はグループＩＤ“Ｇ０００１”のグループに属している。そして、グループ制御テーブル１１４によれば、９時から２０時の時間帯において、当該グループでは任意の中継装置を経由したアクセスが許容されている。よって、アクセス元の中継装置の照合も成功する。更に、ユーザＩＤ“Ｕ０００１”、送信元ＩＰアドレス“１９２．１６８．１０．１１”、送信元ＭＡＣアドレス“ＭＡＣ１”を含むレコードとして、ユーザ制御テーブル１１３には“ＲＯＬＥ１”が存在する。管理サーバ１００は適用ＲＯＬＥとして“ＲＯＬＥ１”を特定する。更に、接続管理テーブル１１５にはステップＳＴ１２３で“ＲＯＬＥ３”のレコードが既に追加されている。これに対し、ユーザ管理テーブル１１１によればユーザＩＤ“Ｕ０００１”は多重接続設定が“可”である。よって、管理サーバ１００は“ＲＯＬＥ１”での新たな接続が許容されている（すなわち、多重接続の制約がない）と判断する。
【０１８７】
（ステップＳＴ１２８）管理サーバ１００は、ユーザ制御テーブル１１３の“ＲＯＬＥ１”およびグループ制御テーブル１１４の“ＲＯＬＥ１０１”を用いてセッション情報を生成し、ログイン成功の通知とともに、中継装置２００ａに送信する。中継装置２００ａはセッション情報とログイン成功の通知とを受信する。管理サーバ１００は接続管理テーブル１１５の更新も行う。具体的には、ユーザＩＤ“Ｕ０００１”、端末ＩＰアドレス“１９２．１６８．１０．１１”、中継装置ＩＰアドレス“１９２．１６８．１０．２”、適用ＲＯＬＥ“ＲＯＬＥ１，１０１”のレコードを接続管理テーブル１１５に追加する。
【０１８８】
（ステップＳＴ１２９）中継装置２００ａは、管理サーバ１００から受信したセッション情報をセッション管理テーブル２１１ａに登録する（項番“１”のレコード）。中継装置２００ａは、ログイン成功の通知をクライアント６００に送信する。クライアント６００はログイン成功の通知を受信する。
【０１８９】
このようにして、ユーザ管理テーブル１１１の設定により、多重接続を許容するか否かを制御できる。ユーザ管理テーブル１１１において、ユーザＡ（“Ｕ０００１”）は多重接続設定が“可”である。このため、ユーザＡはクラアント５００，６００の両方を用いて業務サーバにアクセス可能となる。これに対し、ユーザＢ（“Ｕ０００２”）は多重接続設定が“不可”である。このため、ユーザＢに対しては複数のクライアントを用いたアクセスは許容されていないことになる。
【０１９０】
また、このように多重接続した場合にも、クライアント５００，６００からアクセス可能な業務サーバの範囲は、クライアント５００，６００の通信を中継する中継装置２００，２００ａそれぞれにより制限されることになる。アクセス可能な業務サーバの範囲は、クライアント５００，６００で相違し得る。このように、１ユーザが複数のクライアントを利用する場合にもクライアント単位のアクセス制御を行える。
【０１９１】
次に、クライアント６００から中継装置２００ａ，２００ｂを介したアクセスを行う場合を例示する。
図２０は、第２の実施の形態の通信の具体例（その４）を示す図である。以下、図２０に示す処理をステップ番号に沿って説明する。ステップＳＴ１３１の直前では、接続管理テーブル１１５およびセッション管理テーブル２１１，２１１ａ，２１１ｂのエントリはないものとする。また、以下の通信が行われる時間帯は、９時から２０時の時間帯に含まれるとする。
【０１９２】
（ステップＳＴ１３１）クライアント６００は、ログインページでユーザＡにより入力されたログイン情報を中継装置２００ａに送信する。当該ログイン情報には、ユーザＩＤ“Ｕ０００１”およびパスワード“ｐａｓｓ１”が含まれる。中継装置２００ａはログイン用の情報（フレーム）を受信する。
【０１９３】
（ステップＳＴ１３２）中継装置２００ａは、受信したフレームから送信元ＩＰアドレス“１９２．１６８．１０．１１”および送信元ＭＡＣアドレス“ＭＡＣ１”を抽出する。中継装置２００ａは、抽出した送信元ＩＰアドレスおよび送信元ＭＡＣアドレスをＩＰパケットのデータ部分に設定した新たなフレーム（ログイン要求）を生成し、管理サーバ１００に送信する。管理サーバ１００はログイン要求を受信する。ログイン要求にはユーザＩＤおよびパスワードも含まれる。
【０１９４】
（ステップＳＴ１３３）管理サーバ１００は、ユーザＩＤとパスワードの照合などを行う。管理サーバ１００は、ユーザ制御テーブル１１３およびグループ制御テーブル１１４を参照して“ＲＯＬＥ１”および“ＲＯＬＥ１０１”に対応するセッション情報を生成する。“ＲＯＬＥ１”が選択される理由は、ユーザＩＤ“Ｕ０００１”、端末ＩＰアドレス“１９２．１６８．１０．１１”および送信元ＭＡＣアドレス“ＭＡＣ１”を含み、これらがログイン要求に含まれる情報に一致するからである。“ＲＯＬＥ１０１”が選択される理由は、ユーザＩＤ“Ｕ０００１”はグループＩＤ“Ｇ０００１”のグループに属し、当該グループに対する９時から２０時の時間帯の“ＲＯＬＥ１０１”がグループ制御テーブル１１４から選択されたからである。また、接続管理テーブル１１５にレコードを追加する。具体的には、“Ｕ０００１”、端末ＩＰアドレス“１９２．１６８．１０．１１”、中継装置ＩＰアドレス“１９２．１６８．１０．２”、適用ＲＯＬＥ“ＲＯＬＥ１，１０１”のレコードである。管理サーバ１００は、生成したセッション情報とログイン成功の通知とを中継装置２００ａに送信する。中継装置２００ａはセッション情報とログイン成功の通知とを受信する。
【０１９５】
（ステップＳＴ１３４）中継装置２００ａは、管理サーバ１００から受信したセッション情報をセッション管理テーブル２１１ａに登録する（項番“１”のレコード）。中継装置２００ａは、ログイン成功の通知をクライアント６００に送信する。クライアント６００はログイン成功の通知を受信する。
【０１９６】
（ステップＳＴ１３５）クライアント６００は、業務サーバ４００へ宛てたリクエストを送信する。当該リクエストは中継装置２００ａへ転送される。当該リクエストのＩＰパケットに含まれる宛先ＩＰアドレスは“１９２．１６８．２０．１０１”である。送信元ＩＰアドレスは“１９２．１６８．１０．１１”である。中継装置２００ａは当該リクエストを受信する。
【０１９７】
（ステップＳＴ１３６）中継装置２００ａは、受信したリクエストのＩＰパケットに含まれる送信元／宛先ＩＰアドレスの組を、セッション管理テーブル２１１ａの登録内容と照合する。セッション管理テーブル２１１ａには、ステップＳＴ１３４で登録された項番“１”のレコードが存在する。項番“１”のレコードでは、端末ＩＰアドレス“１９２．１６８．１０．１１”に対し、ＡＣＬに“１９２．１６８．２０．１０１”がある。すなわち、当該リクエストの中継は許容されている。よって、中継装置２００ａは業務サーバ４００に対して当該リクエストを転送する。業務サーバ４００への通信経路には、中継装置２００ｂが存在している。中継装置２００ｂは当該リクエストを受信する。
【０１９８】
（ステップＳＴ１３７）中継装置２００ｂは、受信したリクエストのＩＰパケットに含まれる送信元／宛先ＩＰアドレスの組を、セッション管理テーブル２１１ｂの登録内容と照合する。セッション管理テーブル２１１ｂには、この時点でエントリはない。すなわち、送信元ＩＰアドレス“１９２．１６８．１０．１１”を含むレコードは存在しない。よって、中継装置２００ｂは、ログインの確認要求を管理サーバ１００に送信する。当該確認要求（ＩＰパケットのデータ部分）にはクライアント６００のＩＰアドレス“１９２．１６８．１０．１１”が含まれる。管理サーバ１００は確認要求を受信する。なお、中継装置２００ｂは、ステップＳＴ１３６で受信したリクエストを保留する（例えば、ＲＡＭに格納する）。
【０１９９】
（ステップＳＴ１３８）管理サーバ１００は、確認要求に含まれる送信元ＩＰアドレスを、接続管理テーブル１１５の登録内容と照合する。接続管理テーブル１１５には、ステップＳＴ１３３で登録されたレコードが存在する。このレコードの端末ＩＰアドレスは“１９２．１６８．１０．１１”である。これは確認対象のクライアント６００のＩＰアドレスと一致するので、管理サーバ１００はログイン済であると判断する。管理サーバ１００は、当該レコードから適用ＲＯＬＥ“ＲＯＬＥ１，１０１”を特定する。管理サーバ１００は、ユーザ制御テーブル１１３の“ＲＯＬＥ１”とグループ制御テーブル１１４の“ＲＯＬＥ１０１”とを参照して、セッション情報を生成する。管理サーバ１００は、生成したセッション情報とログイン済の通知とを中継装置２００ｂに送信する。中継装置２００ｂはセッション情報とログイン済の通知とを受信する。管理サーバ１００は、接続管理テーブル１１５にレコードを追加する。具体的には、ユーザＩＤ“Ｕ０００１”、端末ＩＰアドレス“１９２．１６８．１０．１１”、中継装置ＩＰアドレス“１９２．１６８．２０．１”、適用ＲＯＬＥ“ＲＯＬＥ１，１０１”のレコードである。
【０２００】
（ステップＳＴ１３９）中継装置２００ｂは、管理サーバ１００から受信したセッション情報をセッション管理テーブル２１１ｂに登録する（項番“１”のレコード）。中継装置２００ｂは、ステップＳＴ１３７で中継を保留したリクエストのＩＰパケットに含まれる送信元／宛先ＩＰアドレスの組を、セッション管理テーブル２１１ｂの登録内容と照合する。この時点でセッション管理テーブル２１１ｂには項番“１”のレコードが存在する。項番“１”のレコードでは、端末ＩＰアドレス“１９２．１６８．１０．１１”に対し、ＡＣＬに“１９２．１６８．２０．１０１”が含まれる。すなわち、当該リクエストの中継は許容されている。よって、中継装置２００ｂは業務サーバ４００に対して当該リクエストを転送する。業務サーバ４００は当該リクエストを受信する。
【０２０１】
（ステップＳＴ１４０）業務サーバ４００は、受信したリクエストに応じた処理を実行する。業務サーバ４００は、処理結果に応じたレスポンスをクライアント６００に送信する。当該レスポンスは中継装置２００ｂ，２００ａの順に経由してクライアント６００に転送される。クライアント６００は当該レスポンスを受信する。
【０２０２】
このようにして、クライアント６００は、中継装置２００ａ，２００ｂを介して業務サーバ４００にアクセスできる。すなわち、１つのクライアントから複数の中継装置を介して業務サーバにアクセスする場合にも、最初の中継装置に適用されたＲＯＬＥを用いて、適正にアクセス制御を行える。このとき、中継装置２００ｂはユーザＡに対してログイン情報を再度入力させずに済むので、ユーザＡによる重複した情報を入力する手間を省ける。また、ログイン処理を重複して行わずに済む。
【０２０３】
次に、ネットワークログインに対するログアウトの手順を説明する。
図２１は、第２の実施の形態のログアウト処理の例を示すフローチャートである。以下、図２１に示す処理をステップ番号に沿って説明する。
【０２０４】
（ステップＳ６１）アクセス制御部２２０は、クライアント５００からログアウト要求を受信する。
（ステップＳ６２）アクセス制御部２２０は、ログアウト要求のＩＰパケットに含まれる送信元ＩＰアドレスを抽出する。ここでは、抽出される送信元ＩＰアドレスは、“５０．２２３．３．４”である。アクセス制御部２２０は、抽出したクライアント５００のＩＰアドレスをＩＰパケットのデータ部分に含めたログアウト要求を生成し、管理サーバ１００に送信する。
【０２０５】
（ステップＳ６３）管理部１２０は、中継装置２００が送信したログアウト要求を受信する。
（ステップＳ６４）管理部１２０は、記憶部１１０に記憶された接続管理テーブル１１５を参照し、ログアウト要求（ＩＰパケットのデータ部分）に含まれるクライアント５００のＩＰアドレスが、端末ＩＰアドレスの項目に設定されたレコードを検索する。管理サーバ１００は、検索されたレコードに含まれる中継装置ＩＰアドレスおよび適用ＲＯＬＥの設定を取得する。管理サーバ１００は、当該中継装置ＩＰアドレスを宛先として、当該適用ＲＯＬＥに対応するセッション情報を削除するように指示する。例えば、クライアント５００からのログアウト要求では、端末ＩＰアドレス“５０．２２３．３．４”を含むセッション情報をセッション管理テーブルから削除するように指示する。当該削除の指示は、複数の中継装置に対して行われることもある。また、管理サーバ１００は、接続管理テーブル１１５上から検索されたレコードを削除する。例えば、クライアント５００からのログアウト要求では、端末ＩＰアドレス“５０．２２３．３．４”の全レコードが接続管理テーブル１１５から削除されることになる。
【０２０６】
（ステップＳ６５）アクセス制御部２２０は、管理サーバ１００からの指示に基づいて、記憶部２１０に記憶されたセッション管理テーブル２１１のレコード（セッション情報）を削除する。例えば、アクセス制御部２２０は、端末ＩＰアドレス“５０．２２３．３．４”を含むレコードをセッション管理テーブル２１１から削除する。
【０２０７】
（ステップＳ６６）アクセス制御部２２０は、セッション情報の削除が完了した旨を管理サーバ１００に応答する。
（ステップＳ６７）管理部１２０は、ステップＳ６４で削除の指示を行った中継装置から削除完了の応答を受信する。複数の中継装置に対して削除の指示を行った場合には、管理部１２０は複数の中継装置から削除完了の応答を受信する。
【０２０８】
（ステップＳ６８）管理部１２０は、指示を行った全ての中継装置から削除完了の応答を受信するとログアウト完了を中継装置２００に応答する。
（ステップＳ６９）アクセス制御部２２０は、管理サーバ１００から当該応答を受信すると、ログアウト完了をクライアントに応答する。
【０２０９】
このようにして、管理サーバ１００および中継装置２００はログアウト処理を実行する。管理サーバ１００は、１つの中継装置からあるクライアントのログアウト要求を受信すると、当該クライアントに係るセッション情報を保持する全ての中継装置に対してセッション情報の削除を指示する。このため、各中継装置に余計なセッション情報が残留することを防げる。次に、ログアウト処理における通信の具体例を説明する。
【０２１０】
図２２は、第２の実施の形態の通信の具体例（その５）を示す図である。以下、図２２に示す処理をステップ番号に沿って説明する。ステップＳＴ１４１の直前では、セッション管理テーブル２１１ａ，２１１ｂには、それぞれ項番“１”のレコードが存在するものとする。接続管理テーブル１１５には、ユーザＩＤ“Ｕ０００１”、端末ＩＰアドレス“１９２．１６８．１０．１１”、中継装置ＩＰアドレス“１９２．１６８．１０．２”、適用ＲＯＬＥ“ＲＯＬＥ１，１０１”のレコードが存在するものとする。また、接続管理テーブル１１５には、ユーザＩＤ“Ｕ０００１”、端末ＩＰアドレス“１９２．１６８．１０．１１”、中継装置ＩＰアドレス“１９２．１６８．２０．１”、適用ＲＯＬＥ“ＲＯＬＥ１，１０１”のレコードが存在するものとする。
【０２１１】
（ステップＳＴ１４１）クライアント６００は、中継装置２００ａ宛にログアウト要求を送信する。中継装置２００ａはログアウト要求を受信する。中継装置２００ａが受信するログアウト要求には、ＩＰパケットの送信元ＩＰアドレスとしてクライアント６００のＩＰアドレス“１９２．１６８．１０．１１”が含まれる。
【０２１２】
（ステップＳＴ１４２）中継装置２００ａは、当該送信元ＩＰアドレスを抽出する。中継装置２００ａは、抽出されたクライアント６００のＩＰアドレスをＩＰパケットのデータ部分に含めたログアウト要求を生成して管理サーバ１００に送信する。管理サーバ１００は当該ログアウト要求を受信する。
【０２１３】
（ステップＳＴ１４３）管理サーバ１００は、接続管理テーブル１１５を参照して、当該ＩＰアドレスが端末ＩＰアドレスの項目に設定されたレコードを検索する。ここでは、端末ＩＰアドレスの項目の設定値が“１９２．１６８．１０．１１”である上記の２つのレコードが存在している。管理サーバ１００は、これらのレコードから２つの中継装置ＩＰアドレス“１９２．１６８．１０．２”、“１９２．１６８．２０．１”を取得する。管理サーバ１００は、端末ＩＰアドレス“１９２．１６８．１０．１１”を含むセッション情報の削除を中継装置２００ａに指示する。
【０２１４】
（ステップＳＴ１４４）管理サーバ１００は、端末ＩＰアドレス“１９２．１６８．１０．１１”を含むセッション情報の削除を中継装置２００ｂに指示する。ただし、ステップＳＴ１４４の指示はステップＳＴ１４３と同時または逆の順序で行われてもよい。
【０２１５】
（ステップＳＴ１４５）管理サーバ１００は、ステップＳＴ１４３で検索された２つのレコード（エントリ）を接続管理テーブル１１５から削除する。
（ステップＳＴ１４６）中継装置２００ａは、管理サーバ１００からの削除指示に基づいて、セッション管理テーブル２１１ａから端末ＩＰアドレス“１９２．１６８．１０．１１”のレコードを削除する。そして、中継装置２００ａは削除完了を管理サーバ１００に応答する。管理サーバ１００は当該応答を受信する。
【０２１６】
（ステップＳＴ１４７）中継装置２００ｂは、管理サーバ１００からの削除指示に基づいて、セッション管理テーブル２１１ｂから端末ＩＰアドレス“１９２．１６８．１０．１１”のレコードを削除する。そして、中継装置２００ｂは削除完了を管理サーバ１００に応答する。管理サーバ１００は当該応答を受信する。
【０２１７】
（ステップＳＴ１４８）管理サーバ１００は、ステップＳＴ１４２のログアウト要求に対してログアウト完了を中継装置２００ａに応答する。中継装置２００ａは当該応答を受信する。
【０２１８】
（ステップＳＴ１４９）中継装置２００ａは、ステップＳＴ１４１のログアウト要求に対してログアウト完了をクライアント６００に応答する。クライアント６００は当該応答を受信する。
【０２１９】
このようにして、管理サーバ１００および中継装置２００ａ，２００ｂはログアウト処理を実行する。例えば、図２０で説明したように、クライアント６００から中継装置２００ａ，２００ｂの両方を経由した業務サーバへのアクセスも格納である。このような場合にも、クライアント６００からの１回のログアウト要求で、中継装置２００ａ，２００ｂの両方が保持するセッション情報を適正に消去できる。これによって、クライアント６００からのユーザＡに関するログインセッションを終了させることができる。
【０２２０】
図２３は、第２の実施の形態のセッション管理の例を示すフローチャートである。以下、図２３に示す処理をステップ番号に沿って説明する。
（ステップＳ７１）アクセス制御部２２０は、記憶部２１０に記憶されたセッション管理テーブル２１１を監視する。
【０２２１】
（ステップＳ７２）アクセス制御部２２０は、セッション管理テーブル２１１に登録されたセッション情報のうち、接続許可時間帯を超過したセッション情報があるか否かを判定する。接続許可時間帯を超過したセッション情報がある場合、処理をステップＳ７３に進める。接続許可時間帯を超過したセッション情報がない場合、処理をステップＳ７１に進める。例えば、アクセス制御部２２０は、中継装置２００が備えるＲＴＣ（Real Time Clock）の時刻と、セッション管理テーブル２１１の各レコード（セッション情報）の接続許可時間帯とを比較することで、当該判定を行える。
【０２２２】
（ステップＳ７３）アクセス制御部２２０は、ステップＳ７２で接続許可時間帯を超過したと判断されたセッション情報をセッション管理テーブル２１１から削除する。例えば、セッション管理テーブル２１１の項番“１”のセッション情報は接続許可時間帯が９時から２０時である。よって、アクセス制御部２２０は、２０時を超えると、当該項番“１”のセッション情報を削除する。
【０２２３】
（ステップＳ７４）アクセス制御部２２０は、セッション情報を削除した旨を管理サーバ１００に通知する。当該通知には、削除したセッション情報に含まれる端末ＩＰアドレスの情報が含まれる。セッション情報を削除した旨の通知は、接続許可時間帯の終端時刻（期限）に達した旨の通知ということもできる。
【０２２４】
（ステップＳ７５）アクセス制御部２２０は、ステップＳ７４の通知に対して、削除したセッション情報と同一の端末ＩＰアドレスを含む次の時間帯のセッション情報を管理サーバ１００から受信したか否かを判定する。受信した場合、処理をステップＳ７６に進める。受信していない場合、処理をステップＳ７１に進める。例えば、セッション管理テーブル２１１から項番“１”のレコードを削除した場合、アクセス制御部２２０は、次の時間帯のセッション情報として（グループ制御テーブル１１４に含まれる）“ＲＯＬＥ１０２”の内容を含むセッション情報を管理サーバ１００から受信し得る。
【０２２５】
（ステップＳ７６）アクセス制御部２２０は、受信した次の時間帯のセッション情報をセッション管理テーブル２１１に登録する。そして、処理をステップＳ７１に進める。
このようにして、中継装置２００は、接続許可時間帯を超過したセッション情報を削除する。すると、ユーザが次に中継装置２００を介したアクセスを試みるとき、当該ユーザに対して再度の認証が課されることになる。これにより、接続許可時間帯を超過したアクセスを制限することができる。なお、ステップＳ７４において、アクセス制御部２２０は、ユーザを示す情報とともに接続許可時間帯が終了した旨を管理サーバ１００に通知してもよい。
【０２２６】
更に、管理サーバ１００において、管理部１２０は、セッション情報の削除の通知、または接続許可時間帯が終了した旨の通知を受け付けると、接続管理テーブル１１５から当該通知元に対応するレコードを削除する。また、管理部１２０は、削除の通知があったセッション情報に関するユーザのグループＩＤにつき次の時間帯のレコードをグループ制御テーブル１１４から検索する。次の時間帯のレコードとは削除の通知があったセッション情報に含まれる時間帯の次の時間帯を接続許可時間帯に含むレコードである。このとき、管理部１２０は、接続許可中継装置の照合も行う。例えば、管理部１２０は、当該ユーザについてネットワークログインを行った際のログイン要求元の中継装置のＩＰアドレスを記憶部１１０に格納しておく。そして、格納されたＩＰアドレスと次の時間帯とを含むレコードをグループ制御テーブル１１４から検索する。
【０２２７】
管理部１２０は、何れかのレコードが検索された場合は、当該レコードに基づいてセッション情報を新たに生成し、中継装置２００に提供する。何れのレコードも検索されない場合は、管理部１２０は次の時間帯のセッション情報の提供を行わない。管理部１２０は、新たなセッション情報を中継装置２００に提供した場合、当該セッション情報の配布状況を接続管理テーブル１１５に登録する。何れのレコードも検索されない場合は、接続管理テーブル１１５から削除されたセッション情報に対応するレコードを削除する。
【０２２８】
このようにすれば、次の時間帯のＡＣＬを適用する場合に、ユーザに対して再度のログイン操作を課さずに済む。
図２４は、第２の実施の形態のアクセス可能範囲の例（その１）を示す図である。図２４では、ユーザＡ，Ｂ，Ｃそれぞれが１２時の時点で、クライアント５００，５００ａ，６００ａを用いてアクセスできる業務サーバを例示している。図８〜１０および図１２で例示した各テーブル内容が管理サーバ１００および中継装置２００，２００ａ，２００ｂに保持されている場合である。
【０２２９】
この場合、ユーザＡはクライアント５００を用いて業務サーバ３００にアクセス可能である。クライアント５００のリクエストを中継する中継装置２００がセッション管理テーブル２１１の項番“１”のセッション情報（“ＲＯＬＥ３”のＡＣＬを含む）を保持するからである。
【０２３０】
また、ユーザＢはクライアント５００ａを用いて業務サーバ３００，３００ａにアクセス可能である。クライアント５００ａのリクエストを中継する中継装置２００がセッション管理テーブル２１１の項番“２”のセッション情報（“ＲＯＬＥ５”のＡＣＬを含む）を保持するからである。
【０２３１】
更に、ユーザＣはクライアント６００ａを用いて業務サーバ４００，４００ａにアクセス可能である。クライアント６００ａのリクエストを中継する中継装置２００ａがセッション管理テーブル２１１ａの項番“２”のセッション情報（“ＲＯＬＥ６”のＡＣＬを含む）を保持するからである。また、当該リクエストを中継する中継装置２００ｂがセッション管理テーブル２１１ｂの項番“２”のセッション情報（“ＲＯＬＥ６”のＡＣＬを含む）を保持するからである。
【０２３２】
図２５は、第２の実施の形態のアクセス可能範囲の例（その２）を示す図である。図２５では、ユーザＡがクライアント５００，６００を用いてアクセスできる業務サーバを例示している。図８〜１０および図１２で例示した各テーブル内容が管理サーバ１００および中継装置２００，２００ａ，２００ｂに保持されている場合である。
【０２３３】
この場合、ユーザＡはクライアント５００を用いて業務サーバ３００にアクセス可能である。クライアント５００のリクエストを中継する中継装置２００がセッション管理テーブル２１１の項番“１”のセッション情報（“ＲＯＬＥ３”のＡＣＬを含む）を保持するからである。
【０２３４】
また、ユーザＡはクライアント６００を用いて業務サーバ３００，３００ａ，４００，４００ａにアクセス可能である。クライアント６００のリクエストを中継する中継装置２００ａがセッション管理テーブル２１１ａの項番“１”のセッション情報（“ＲＯＬＥ１”のＡＣＬを含む）を保持するからである。また、当該リクエストを中継する中継装置２００ｂがセッション管理テーブル２１１ｂの項番“１”のセッション情報（“ＲＯＬＥ１”のＡＣＬを含む）を保持するからである。
【０２３５】
このようにして、第２の実施の形態の情報処理システムでは、ユーザごとおよび、ユーザが利用するクライアントごとにアクセス可能な業務サーバの範囲を制限することができる。
【０２３６】
図２６は、第２の実施の形態のアクセス可能範囲の例（その３）を示す図である。図２６では、グループ制御テーブル１１４における“ＲＯＬＥ１０１”および“ＲＯＬＥ１０２”によるアクセス可能範囲の違いを示している。例えば、“ＲＯＬＥ１”、“ＲＯＬＥ３”および“ＲＯＬＥ１０１”によれば、９時から２０時の時間帯において、ユーザＡは、クライアント５００を用いて業務サーバ３００にアクセス可能である。また、９時から２０時の時間帯において、ユーザＡは、クライアント６００を用いて業務サーバ３００，３００ａ，４００，４００ａにアクセス可能である。
【０２３７】
他方、“ＲＯＬＥ１０２”によれば、２０時から２４時の時間帯では、中継装置２００ａを介したアクセスのみが許容されることになる。したがって、ユーザＡは、例えばクライアント６００を用いて業務サーバ３００，３００ａ，４００，４００ａにアクセス可能である。しかし、２０時から２４時の時間帯では、クライアント５００を用いて業務サーバ３００にアクセスすることはできない。このように、アクセスされる時間帯に応じて、アクセス元の中継装置を制限することができる。
【０２３８】
第２の実施の形態の情報処理システムのように、アクセス元とアクセス先との認証を行う中継装置の要求に応じて、要求元の中継装置に当該認証用のセッション情報を配布する場合、管理サーバ１００側での制御情報の更新が問題となる。ここで、制御情報は、ユーザ管理テーブル１１１、グループ管理テーブル１１２、ユーザ制御テーブル１１３およびグループ制御テーブル１１４を含む。
【０２３９】
クライアントが業務サービスを利用している間は、セッション情報が各中継装置によって保持される。このため、ポリシーの一貫性を保つためには、各中継装置によって保持されるセッション情報が、各中継装置から全て削除（全ユーザのログアウト状態の同期がとれた際）に行うことが考えられる。しかし、全ユーザがログアウト状態となるようなタイミングを待ち合わせていると、制御情報の更新までに時間がかかるおそれがある。
【０２４０】
そこで、第２の実施の形態では図１１の同期制御テーブル１１６で示したように、制御情報の変更内容を、ポリシーの一貫性を保ちたい範囲（同期範囲）ごとに４段階に区分する。具体的には、前述のように同期範囲なし、ユーザ、ユーザグループおよび全ユーザである。以下では、同期制御テーブル１１６に基づく、制御情報の更新の手順を説明する。
【０２４１】
図２７は、第２の実施の形態の制御情報の更新例を示すフローチャートである。以下、図２７に示す処理をステップ番号に沿って説明する。
（ステップＳ８１）管理部１２０は、制御情報の更新内容を受け付ける。
【０２４２】
（ステップＳ８２）管理部１２０は、同期制御テーブル１１６に基づいて、受け付けた更新内容が同期制御の対象であるか否かを判定する。同期制御の対象である場合、処理をステップＳ８３に進める。同期制御の対象でない場合、処理をステップＳ８８に進める。例えば、同期制御テーブル１１６を参照して、更新内容が同期範囲なしに対応するものであれば、同期制御の対象ではない。同期制御テーブル１１６の例によれば、ユーザの追加は同期範囲なしに対応する更新内容である。他方、同期範囲がユーザ、ユーザグループおよび全ユーザに該当する更新内容であった場合は、同期制御の対象である。
【０２４３】
（ステップＳ８３）管理部１２０は、同期制御テーブル１１６を参照して、更新内容に応じた同期範囲を特定する。同期制御テーブル１１６の例によれば、ユーザの削除、ユーザパスワードの更新などは同期範囲がユーザである。同様に、例えば、接続許可時間帯の更新および接続許可中継装置の追加／変更などは同期範囲がユーザグループである。同様に、例えば、システムポリシーの変更や中継装置の削除は同期範囲が全ユーザである。
【０２４４】
（ステップＳ８４）管理部１２０は、同期範囲に含まれるユーザについて、何れかの中継装置にセッション情報が配布されているか否かを判定する。配布されている場合、処理をステップＳ８５に進める。配布されていない場合、処理をステップＳ８８に進める。管理部１２０は、接続管理テーブル１１５に基づいて当該判定を行える。同期範囲がユーザグループである場合、管理部１２０は、グループ管理テーブル１１２を参照して、同期制御の対象のグループに属するユーザのユーザＩＤを取得できる。なお、セッション情報が配布されているか否かの判定は、ユーザがログインしているか否かの判定ということもできる。ユーザがログイン状態である場合に、セッション情報が中継装置に保持されるからである。
【０２４５】
（ステップＳ８５）管理部１２０は、同期範囲において新規のネットワークログインを不可とする（閉塞状態とする）。例えば、同期範囲がユーザであれば、更新対象の制御情報に対応するユーザによる新規のネットワークログインを不可とする。例えば、同期範囲がユーザグループであれば、更新対象の制御情報に対応するグループに属する全ユーザによる新規のネットワークログインを不可とする。例えば、同期範囲が全ユーザであれば、全ユーザによる新規のネットワークログインを不可とする。管理部１２０は、閉塞対象のユーザについて、ユーザ管理テーブル１１１の閉塞フラグに“ｔｒｕｅ”を設定する。
【０２４６】
（ステップＳ８６）管理部１２０は、同期範囲におけるセッション情報の配布状況を監視しながら待機する。接続管理テーブル１１５には、各ユーザに対するセッション情報の配布状況が記録されている。また、接続管理テーブル１１５に記録されたエントリは、前述のようにユーザのログアウトによって削除される。よって、管理部１２０は、接続管理テーブル１１５に基づいて、同期範囲におけるセッション情報の配布状況を監視し得る。例えば、同期範囲がユーザであれば、同一ユーザについてセッション情報の配布状況を監視する。同期範囲がユーザグループであれば、同一グループに属する複数のユーザについてセッション情報の配布状況を監視する。ユーザが属するグループはグループ管理テーブル１１２に基づいて把握できる。同期範囲が全ユーザであれば、全ユーザについてセッション情報の配布状況を監視する。
【０２４７】
（ステップＳ８７）管理部１２０は、ステップＳ８３で特定された同期範囲で、ログアウト状態の同期が完了したことを検出する。例えば、同期範囲がユーザであれば、接続管理テーブル１１５において、当該ユーザのエントリがなくなったときにログアウト状態の同期が完了したことになる。同期範囲がユーザグループであれば、接続管理テーブル１１５において、対象のグループに属する全てのユーザのエントリがなくなったときにログアウト状態の同期が完了したことになる。同期範囲が全ユーザであれば、接続管理テーブル１１５において、全ユーザのエントリがなくなったときにログアウト状態の同期が完了したことになる。
【０２４８】
（ステップＳ８８）管理部１２０は、ステップＳ８１で受け付けた更新内容を制御情報に反映させる。
（ステップＳ８９）管理部１２０は、ステップＳ８８の処理により、更新前の情報が残っている場合には、当該更新前の情報を削除する。
【０２４９】
（ステップＳ９０）管理部１２０は、ステップＳ８５の閉塞を行っている場合、当該閉塞を解除する。具体的には、管理部１２０は、ユーザ管理テーブル１１１において、ステップＳ８５で閉塞フラグに“ｔｒｕｅ”を設定した箇所を“ｆａｌｓｅ”に更新する。ステップＳ８５の閉塞を行っていない場合は、当該ステップＳ９０をスキップしてよい。
【０２５０】
このようにして、管理部１２０は、更新内容に応じた範囲でログアウト状態の同期をとってから制御情報の更新を行う。また、管理部１２０は、同期制御の対象となる範囲でログイン状態のユーザが存在する場合には、当該ユーザからの新規のネットワークログインを不可とする。これにより、同期制御の対象となる範囲内でのログアウト状態の同期を迅速に行える。
【０２５１】
なお、ステップＳ８７において、接続管理テーブル１１５に登録されたエントリは、前述したように例えば次の場合に削除される。第１には、ユーザのログアウト要求を受信したときである。第２には、中継装置２００，２００ａ，２００ｂにおいてタイムアウトなどにより何れかのユーザのセッション情報が削除されたときである。この場合、管理サーバ１００は、中継装置２００，２００ａ，２００ｂから当該ユーザのセッション情報が削除された旨の通知を受信する。第３には、中継装置２００，２００ａ，２００ｂからセッション情報に登録された期限（接続許可時間帯の終端の時間）に達した旨の通知を受けた場合である。次に、第２の実施の形態の制御情報の更新のための通信例を説明する。
【０２５２】
図２８は、第２の実施の形態の制御情報の第１の更新例を示す図である。以下、図２８に示す処理をステップ番号に沿って説明する。
（ステップＳＴ１６１）クライアント５００は、ユーザＡのログイン要求を、中継装置２００を介して、管理サーバ１００に送信する。管理サーバ１００は、当該ログイン要求を受信する。
【０２５３】
（ステップＳＴ１６２）管理サーバ１００は、ユーザＡに関するログイン処理を行い、中継装置２００を介してログイン成功をクライアント５００に応答する。このとき、管理サーバ１００は、ユーザＡに対応するセッション情報を中継装置２００に配布する。
【０２５４】
（ステップＳＴ１６３）管理サーバ１００は、管理クライアント７００から制御情報の更新要求を受け付ける。当該更新要求は、ユーザＩＤ“Ｕ０００１”（ユーザＡ）の“ＲＯＬＥ２，３”においてＡＣＬに業務サーバ３００ａ（“１９２．１６８．１０．１０２”）を追加する更新を示すとする。同期制御テーブル１１６によれば、ＡＣＬを変更する際にはユーザ単位に同期を行うことになっている。
【０２５５】
（ステップＳＴ１６４）管理サーバ１００は、ユーザＡについて新規のログインを閉塞させる。
（ステップＳＴ１６５）クライアント６００は、ユーザＡのログイン要求を、中継装置２００ａを介して管理サーバ１００に送信する。管理サーバ１００は、当該ログイン要求を受信する。
【０２５６】
（ステップＳＴ１６６）管理サーバ１００では、ユーザＡの新規ネットワークログインは閉塞されている。よって、管理サーバ１００は、中継装置２００ａを介してクライアント６００にログイン失敗を応答する。
【０２５７】
図２９は、第２の実施の形態の制御情報の第１の更新例（続き）を示す図である。以下、図２９に示す処理をステップ番号に沿って説明する。
（ステップＳＴ１７１）クライアント５００は、中継装置２００を介して、管理サーバ１００にユーザＡのログアウト要求を送信する。管理サーバ１００は、ログアウト処理を行う。ログアウト処理の結果、中継装置２００は、管理サーバ１００から配布されたユーザＡのセッション情報を削除する。
【０２５８】
（ステップＳＴ１７２）管理サーバ１００は、ユーザＡに対して、何れの中継装置にもセッション情報が配布されていないことを検出する。すなわち、当該グループに対して、ログアウト状態の同期が完了したことを検出する。
【０２５９】
（ステップＳＴ１７３）管理サーバ１００は、ステップＳＴ１６３で受け付けた更新内容を制御情報に反映させる。
（ステップＳＴ１７４）管理サーバ１００は、更新内容の反映を行ったことを管理クライアント７００に通知する。
【０２６０】
（ステップＳＴ１７５）管理サーバ１００は、ユーザＡに関する閉塞状態を解除する。これにより、ユーザＡの新規のネットワークログインが可能となる。
（ステップＳＴ１７６）クライアント６００は、ユーザＡのログイン要求を、中継装置２００ａを介して、管理サーバ１００に送信する。管理サーバ１００は、当該ログイン要求を受信すると、ログイン処理を行う。
【０２６１】
（ステップＳＴ１７７）管理サーバ１００は、中継装置２００ａを介して、クライアント６００にログイン成功を応答する。
このようにして、管理サーバ１００は、ユーザ単位にログアウト状態の同期を検出してから、当該ユーザに関する制御情報を更新する。
【０２６２】
図３０は、第２の実施の形態の制御情報の第２の更新例を示す図である。以下、図３０に示す処理をステップ番号に沿って説明する。
（ステップＳＴ１８１）クライアント５００は、ユーザＡのログイン要求を、中継装置２００を介して、管理サーバ１００に送信する。管理サーバ１００は、当該ログイン要求を受信する。
【０２６３】
（ステップＳＴ１８２）管理サーバ１００は、ユーザＡに関するログイン処理を行い、中継装置２００を介してログイン成功をクライアント５００に応答する。このとき、管理サーバ１００は、ユーザＡに対応するセッション情報を中継装置２００に配布する。
【０２６４】
（ステップＳＴ１８３）クライアント５００ａは、ユーザＢのログイン要求を、中継装置２００を介して、管理サーバ１００に送信する。管理サーバ１００は、当該ログイン要求を受信する。
【０２６５】
（ステップＳＴ１８４）管理サーバ１００は、ユーザＢに関するログイン処理を行い、中継装置２００を介してログイン成功をクライアント５００ａに応答する。このとき、管理サーバ１００は、ユーザＢに対応するセッション情報を中継装置２００に配布する。
【０２６６】
（ステップＳＴ１８５）管理サーバ１００は、管理クライアント７００から制御情報の更新要求を受け付ける。当該更新要求は、グループＩＤ“Ｇ０００１”の“ＲＯＬＥ１０１”における接続許可時間帯の変更であるとする。同期制御テーブル１１６によれば、接続許可時間帯を変更する際には、ユーザグループ単位に同期を行うことになっている。
【０２６７】
（ステップＳＴ１８６）管理サーバ１００は、グループＩＤ“Ｇ０００１”のグループに所属するユーザＡ，Ｂについて新規のログインを閉塞させる。
（ステップＳＴ１８７）クライアント６００は、ユーザＡのログイン要求を、中継装置２００ａを介して管理サーバ１００に送信する。管理サーバ１００は、当該ログイン要求を受信する。
【０２６８】
（ステップＳＴ１８８）管理サーバ１００では、ユーザＡの新規ネットワークログインは閉塞されている。よって、管理サーバ１００は、中継装置２００ａを介してクライアント６００にログイン失敗を応答する。
【０２６９】
図３１は、第２の実施の形態の制御情報の第２の更新例（続き）を示す図である。以下、図３１に示す処理をステップ番号に沿って説明する。
（ステップＳＴ１９１）クライアント５００は、中継装置２００を介して、管理サーバ１００にユーザＡのログアウト要求を送信する。管理サーバ１００は、ログアウト処理を行う。ログアウト処理の結果、中継装置２００は、管理サーバ１００から配布されたユーザＡのセッション情報を削除する。
【０２７０】
（ステップＳＴ１９２）クライアント５００ａは、中継装置２００を介して、管理サーバ１００にユーザＢのログアウト要求を送信する。管理サーバ１００は、ログアウト処理を行う。ログアウト処理の結果、中継装置２００は、管理サーバ１００から配布されたユーザＢのセッション情報を削除する。
【０２７１】
（ステップＳＴ１９３）管理サーバ１００は、グループＩＤ“Ｇ０００１”のグループに所属するユーザＡ，Ｂに対して、何れの中継装置にもセッション情報が配布されていないことを検出する。すなわち、当該グループに対して、ログアウト状態の同期が完了したことを検出する。
【０２７２】
（ステップＳＴ１９４）管理サーバ１００は、ステップＳＴ１８５で受け付けた更新内容を制御情報に反映させる。
（ステップＳＴ１９５）管理サーバ１００は、更新内容の反映を行ったことを管理クライアント７００に通知する。
【０２７３】
（ステップＳＴ１９６）管理サーバ１００は、ステップＳＴ１８６の閉塞状態を解除する。これにより、ユーザＡ，Ｂの新規のネットワークログインが可能となる。
（ステップＳＴ１９７）クライアント６００は、ユーザＡのログイン要求を、中継装置２００ａを介して管理サーバ１００に送信する。管理サーバ１００は、当該ログイン要求に応じたログイン処理を行う。
【０２７４】
（ステップＳＴ１９８）管理サーバ１００は、中継装置２００ａを介して、クライアント６００にログイン成功を応答する。
このようにして、管理サーバ１００は、ユーザグループ単位にログアウト状態の同期を検出してから、当該ユーザに関する制御情報を更新する。
【０２７５】
このようにすると、中継装置２００，２００ａ，２００ｂにより認証のために利用されるユーザごとのセッション情報の整合を維持しながら、管理サーバ１００により利用される制御情報（セッション情報の内容を含む）を迅速に更新できる。例えば、中継装置２００，２００ａ，２００ｂにおいて全ユーザに関するセッション情報が利用されなくなったタイミングで管理サーバ１００の制御情報を更新することも考え得る。しかし、当該タイミングまで待機していると、制御情報を更新するまでに時間を要するという問題がある。
【０２７６】
そこで、第２の実施の形態の管理サーバ１００では、ユーザ単位に影響を及ぼす更新内容については、ユーザ単位にログアウト状態の同期をとる。また、複数のユーザ単位（グループ単位）に影響を及ぼす更新内容については、複数のユーザ単位にログアウト状態の同期をとる。１ユーザについてログアウト状態の同期をとるとは、各中継装置が当該ユーザについて配布されていたセッション情報を利用しない状態（例えば、各中継装置で当該セッション情報が破棄された状態）とすることを意味する。また、複数のユーザについてログアウト状態の同期をとるとは、各中継装置が当該複数のユーザについて配布されていたセッション情報を利用しない状態（例えば、各中継装置で当該セッション情報が破棄された状態）とすることを意味する。
【０２７７】
更新の影響が及ぶ範囲に応じて、ユーザ単位または複数のユーザ単位にログアウト状態の同期をとってから制御情報を更新するので、ユーザ単位または複数のユーザ単位で、各中継装置により利用されるセッション情報で不整合が生ずることの防止を図れる。
【０２７８】
また、更新の影響が及ぶ範囲においてのみログアウト状態の同期がとれさえすれば、更新対象のユーザまたはグループに対する制御情報を更新できるので、例えば、全ユーザについてログアウト状態の同期をとる場合よりも迅速な更新を行える。すなわち、更新が頻繁に行われるような場合でも、ポリシーの一貫性を保ちたい範囲ごとに局所的にポリシーを整合させながら、迅速な更新を行える。
【０２７９】
また、更新内容によっては、ログアウト状態の同期をとらずに制御情報の更新を行えるため、更に迅速な更新を行える。更に、更新の影響が及ぶ範囲において、新規のログインを閉塞させることで、ログアウト状態の同期がとれるまでの時間を短縮できる。このとき、更新の影響が及ぶ範囲においてのみ新規のログインを閉塞させるので、当該範囲外のユーザについてはアクセスを中断させずに済む。
【０２８０】
なお、同期制御テーブル１１６の設定内容は、システムの要件などに応じて変更することもできる。更に、管理サーバ１００はその負荷に応じて複数設けてもよい。例えば、ネットワーク２０，３０の両方に設けてもよい。その場合、各管理サーバで、ユーザ管理テーブル１１１、グループ管理テーブル１１２、ユーザ制御テーブル１１３、グループ制御テーブル１１４、接続管理テーブル１１５および同期制御テーブル１１６の設定内容を同期してもよい。
【０２８１】
また、上述したように中継装置２００，２００ａ，２００ｂはＬ３スイッチやルータでもよい。更に、中継装置２００，２００ａ，２００ｂは、業務サーバ３００，３００ａ，４００，４００ａに対するアクセス負荷を分散する負荷分散装置でもよい。あるいは、中継装置２００にファイアウォール１１の機能を集約してもよい。その場合、中継装置２００をファイアウォールと呼ぶことができる。中継装置２００は、ファイアウォールやＶＰＮサーバの機能を組み込んだＵＴＭ装置などのアプライアンス装置でもよい。中継装置２００，２００ａ，２００ｂを管理サーバ１００と同様の構成を有するコンピュータによって実現することもできる。
【０２８２】
［第３の実施の形態］
以下、第３の実施の形態を説明する。前述の第２の実施の形態との相違する事項を主に説明し、共通する事項説明を省略する。
【０２８３】
第２の実施の形態では、制御情報を用いて、クライアント５００，５００ａ，６００，６００ａからの各業務サーバへのアクセスを制限する場合を例示した。第３の実施の形態では、管理サーバ１００に対する制御情報の入力の方法を提供する。
【０２８４】
ここで、第３の実施の形態の情報処理システムおよび各装置のハードウェア例／ソフトウェア例は、図２〜５で説明した第２の実施の形態の情報処理システムおよび各装置のハードウェア例／ソフトウェア例と同様であるため説明を省略する。また、第３の実施の形態の各装置についても第２の実施の形態と同一の名称・符号を用いる。次に、第３の実施の形態で管理サーバ１００へのデータ入力に用いられるフォーマットを例示する。
【０２８５】
図３２は、第３の実施の形態のアクセス元情報の例を示す図である。アクセス元情報は、アクセス元に関する情報であり、次の情報を含む。第１には、ユーザ情報８１０およびユーザグループ情報８２０である。第２には、場所情報８４０および拠点情報８５０である。第３には、ユーザ端末情報８７０およびユーザ端末グループ情報８８０である。
【０２８６】
ユーザ情報８１０には、ユーザ単位の情報が登録される。ユーザ情報８１０は、ユーザＩＤ、氏名、パスワード、割当ロールＩＤおよび多重ログイン設定の情報を含む。ここで、割当ロールＩＤは、１つのユーザに関するユーザ情報を識別するための識別情報である。それ以外の情報は、第２の実施の形態で説明したユーザ管理テーブル１１１の設定項目と同様である。
【０２８７】
ユーザグループ情報８２０には、ユーザグループ単位の情報が登録される。ユーザグループ情報８２０は、グループＩＤ（Group ID）、グループ（Group）名、割当ロールＩＤ、メンバリストおよび接続禁止サーバの情報を含む。ここで、グループＩＤは、ユーザグループのグループＩＤである。グループ名は、ユーザグループのグループ名である。割当ロールＩＤは、１つのグループに関するユーザグループ情報を識別するために付与される識別情報である。メンバリストは、第２の実施の形態で説明したグループ管理テーブル１１２のメンバの設定項目と同様である。
【０２８８】
管理部１２０は、ユーザ情報８１０およびユーザグループ情報に基づいて、ユーザ展開情報８３０を生成する。ユーザ展開情報８３０は、ユーザＩＤおよび割当ロールリストの情報を含む。ユーザ展開情報８３０における割当ロールリストは、ユーザＩＤに対応付けられた割当ロールＩＤのリストである。ユーザＩＤに対応付けられた割当ロールＩＤは、ユーザ情報８１０およびユーザグループ情報８２０に含まれる割当ロールＩＤから得られる。例えば、あるユーザが２つのユーザグループに属することもある。その場合、割当ロールリストには、ユーザＩＤに対応する割当ロールＩＤ（ユーザ情報８１０から得られる）および当該ユーザＩＤをメンバリストに含む２つのグループのグループＩＤに対応する２つの割当ロールＩＤ（ユーザグループ情報８２０から得られる）が設定されることになる。
【０２８９】
場所情報８４０には、中継装置単位の情報が登録される。場所情報８４０は、中継装置ＩＤ、場所名、ＩＰアドレスおよび割当ロールＩＤの情報を含む。中継装置ＩＤは、中継装置ごとの識別情報である。場所名は、中継装置の設置場所の名称である。ＩＰアドレスは、中継装置のＩＰアドレスである。割当ロールＩＤは、１つの中継装置の場所情報を識別するための識別情報である。
【０２９０】
拠点情報８５０には、拠点（中継装置が設定された場所の集合）単位の情報が登録される。拠点情報８５０は、拠点ＩＤ、拠点名、割当ロールＩＤおよび中継装置リストの情報を含む。拠点ＩＤは、拠点ごとの識別情報である。拠点名は、拠点の名称である。割当ロールＩＤは、１つの拠点の拠点情報を識別するための識別情報である。中継装置リストは、当該拠点に設置された中継装置の中継装置ＩＤのリストである。
【０２９１】
管理部１２０は、場所情報８４０および拠点情報８５０に基づいて、場所展開情報８６０を生成する。場所展開情報８６０は、中継装置ＩＤおよび割当ロールリストの情報を含む。場所展開情報８６０における割当ロールリストは、中継装置ＩＤに対応付けられた割当ロールＩＤのリストである。中継装置ＩＤに対応付けられた割当ロールＩＤは、場所情報８４０および拠点情報８５０に含まれる割当ロールＩＤから得られる。例えば、割当ロールリストには、ある中継装置ＩＤに対応する割当ロールＩＤ（場所情報８４０から得られる）および当該中継装置ＩＤを中継装置リストに含む拠点の拠点ＩＤに対応する割当ロールＩＤ（拠点情報８５０から得られる）が設定されることになる。
【０２９２】
ユーザ端末情報８７０には、ユーザ端末（クライアント）単位の情報が登録される。ユーザ端末情報８７０は、ユーザ端末ＩＤ、ユーザ端末名、ＭＡＣアドレス、ＩＰアドレスおよび割当ロールＩＤの情報を含む。ユーザ端末ＩＤは、クライアントごとの識別情報である。ユーザ端末名は、クライアントの名称である。ＭＡＣアドレスは、クライアントのＭＡＣアドレスである。ＩＰアドレスは、クライアントのＩＰアドレスである。割当ロールＩＤは、１つのクライアントに関するユーザ端末情報を識別するための識別情報である。
【０２９３】
ユーザ端末グループ情報８８０には、ユーザ端末グループ（ユーザ端末Ｇ（Group）ということがある）単位の情報が登録される。ユーザ端末グループ情報８８０は、ユーザ端末ＧＩＤ、ユーザ端末Ｇ名、割当ロールＩＤおよびユーザ端末リストの情報を含む。ユーザ端末ＧＩＤは、ユーザ端末グループごとの識別情報である。ユーザ端末Ｇ名は、ユーザ端末グループの名称である。割当ロールＩＤは、１つのユーザ端末グループのユーザ端末グループ情報を識別するための識別情報である。ユーザ端末リストは、当該ユーザ端末グループに含まれるクライアントのユーザ端末ＩＤのリストである。
【０２９４】
管理部１２０は、ユーザ端末情報８７０およびユーザ端末グループ情報８８０に基づいて、ユーザ端末展開情報８９０を生成する。ユーザ端末展開情報８９０は、ユーザ端末ＩＤおよび割当ロールリストの情報を含む。ユーザ端末展開情報８９０における割当ロールリストは、ユーザ端末ＩＤに対応付けられた割当ロールＩＤのリストである。ユーザ端末ＩＤに対応付けられた割当ロールＩＤは、ユーザ端末情報８７０およびユーザ端末グループ情報８８０に含まれる割当ロールＩＤから得られる。例えば、割当ロールリストには、あるユーザ端末ＩＤに対応する割当ロールＩＤ（ユーザ端末情報８７０から得られる）および当該ユーザ端末ＩＤをユーザ端末リストに含むユーザ端末グループのユーザ端末ＧＩＤに対応する割当ロールＩＤ（ユーザ端末グループ情報８８０から得られる）が設定されることになる。
【０２９５】
図３３は、第３の実施の形態のアクセス先情報の例を示す図である。アクセス先情報は、アクセス先に関する情報であり、サービス情報９１０、サービスグループ情報９２０およびＡＣＬ情報９３０を含む。サービス情報９１０には、各業務サーバによって提供されるサービス単位の情報が登録される。サービス情報９１０は、サービスＩＤ、サービス名、ＩＰアドレス、ポート番号およびＵＲＬの情報を含む。ここで、サービスＩＤは、サービスを識別するための識別情報である。サービス名は、サービスの名称である。ＩＰアドレスは、当該サービスを提供するサーバのＩＰアドレスである。ポート番号は、業務サーバが当該サービスを提供するために用いられるポートの番号である。ＵＲＬは、当該サービスへアクセスするために指定するＵＲＬである。
【０２９６】
サービスグループ情報９２０には、サービスグループ単位の情報が登録される。サービスグループ情報９２０は、サービスＧＩＤ、サービスＧ名、サービスリストの情報を含む。サービスＧＩＤは、サービスグループの識別情報である。サービスＧ名は、サービスグループの名称である。サービスリストは、当該サービスグループに含まれるサービスのサービスＩＤのリストである。
【０２９７】
ＡＣＬ情報９３０は、ＡＣＬの情報が登録される。ＡＣＬ情報９３０は、適用ロールＩＤ、適用ロール名および可能サービスリストの情報を含む。適用ロールＩＤは、１つのＡＣＬ情報を識別するための識別情報である。適用ロール名は、当該ＡＣＬ情報の名称である。可能サービスリストは、サービス情報９１０およびサービスグループ情報９２０に含まれるサービスＩＤおよびサービスＧＩＤの組合せ（サービスＩＤまたはサービスＧＩＤの何れか１つでもよい）である。
【０２９８】
図３４は、第３の実施の形態の時間情報の例を示す図である。時間情報は、アクセスを許容する時間に関する情報であり、次の情報を含む。第１には、時間帯パターン情報９４０である。第２には、曜日パターン情報９５０である。第３には、期日パターン情報９６０である。
【０２９９】
時間帯パターン情報９４０は、時間帯パターンＩＤ、時間帯パターン名および１日のアクセス可能時間帯の情報を含む。時間帯パターンＩＤは、１つの時間帯パターン情報を識別するための識別情報である。時間帯パターン名は、当該時間帯パターン情報の名称である。１日のアクセス可能時間帯は、業務サービスへのアクセスを許容する時間帯である。１日のアクセス可能時間帯は、第２の実施の形態のグループ制御テーブル１１４における接続許可時間帯に相当する。
【０３００】
曜日パターン情報９５０は、曜日パターンＩＤ、曜日パターン名および各曜日のアクセス可能時間帯の情報を含む。曜日パターンＩＤは、１つの曜日パターン情報を識別するための識別情報である。曜日パターン名は、当該曜日パターン情報の名称である。各曜日のアクセス可能時間帯は、業務サービスへのアクセスを許容する曜日ごとの時間帯である。例えば、月曜日の９時から１８時、火曜日の８時から１９時などのように、曜日ごとにアクセスを許容する時間帯のリストを設定可能である。
【０３０１】
期日パターン情報９６０は、期日パターンＩＤ、期日パターン名および各期日（年月日を指定した日付）のアクセス可能時間帯の情報を含む。期日パターンＩＤは、１つの期日パターン情報を識別するための識別情報である。期日パターン名は、当該期日パターン情報の名称である。各期日のアクセス可能時間帯は、業務サービスへのアクセスを許容する期日ごとの時間帯である。例えば、２０１２年１１月１日の１０時から１５時、２０１２年１１月２日の７時から１８時などのように期日ごとにアクセスを許容する時間帯のリストを設定可能である。期日の指定方法として、日付の範囲の指定を許容してもよい。例えば、２０１２年１１月１日から２０１２年１１月７日の範囲に対して、９時から１８時のように時間帯を設定可能とすることも考えられる。
【０３０２】
図３５は、第３の実施の形態の関連付け情報の例を示す図である。関連付け情報９７０は、図３２〜３４で示した各情報を関連付けるための情報である。関連付け情報９７０は、ユーザ割当ロールＩＤ、場所割当ロールＩＤ、ユーザ端末割当ロールＩＤ、適用ロールＩＤおよびアクセス可能時間パターンＩＤの情報を含む。
【０３０３】
ユーザ割当ロールＩＤは、ユーザ情報８１０またはユーザグループ情報８２０の何れかに含まれる割当ロールＩＤである。場所割当ロールＩＤは、場所情報８４０または拠点情報８５０の何れかに含まれる割当ロールＩＤである。ユーザ端末割当ロールＩＤは、ユーザ端末情報８７０およびユーザ端末グループ情報８８０の何れかに含まれる割当ロールＩＤである。適用ロールＩＤは、ＡＣＬ情報９３０に含まれる適用ロールＩＤである。アクセス可能時間パターンＩＤは、時間帯パターン情報９４０に含まれる時間帯パターンＩＤ、曜日パターン情報９５０に含まれる曜日パターンＩＤおよび期日パターン情報９６０に含まれる期日パターンＩＤの何れかのＩＤである。
【０３０４】
なお、場所割当ロールＩＤおよびユーザ端末割当ロールＩＤの設定の有無を任意としてもよい。アクセス可能時間パターンＩＤについても設定がない場合は全ての時間帯でアクセスを許容するなどと決定しておき、関連付け情報９７０へのアクセス可能時間パターンＩＤの設定を任意としてもよい。また、図３２〜３４で示した各情報は、例えばｃｓｖ（Comma Separated Values）形式のデータとして、管理サーバ１００に入力されてもよい。
【０３０５】
ここで、図３２〜３５で示した各情報は記憶部１１０に格納される。これらの情報は、システムの管理者により管理サーバ１００に直接入力されてもよいし、管理クライアント７００を用いて管理サーバ１００に入力されてもよい。また、管理部１２０は、第２の実施の形態のユーザ管理テーブル１１１における閉塞フラグ（デフォルトでは“ｆａｌｓｅ”）をユーザＩＤごとに記憶部１１０に格納する。
【０３０６】
次に、第３の実施の形態のログイン処理の手順を説明する。なお、以下では、管理サーバ１００側の処理を説明する。中継装置側の手順は図１４で説明した手順と同様である。また、以下では、管理サーバ１００、中継装置２００およびクライアント５００の間の手順を例示するが、他の中継装置およびクライアントに関しても同様の手順である。
【０３０７】
図３６は、第３の実施の形態のログイン処理の例を示すフローチャートである。以下、図３６に示す処理をステップ番号に沿って説明する。
（ステップＳ９１）管理部１２０は、中継装置２００からログイン要求を受信する。ログイン要求には、前述のように、ユーザＩＤ、パスワード、クライアント５００のＭＡＣアドレス／ＩＰアドレスおよび中継装置２００のＩＰアドレスが含まれ得る。
【０３０８】
（ステップＳ９２）管理部１２０は、当該ユーザＩＤの閉塞フラグが“ｆａｌｓｅ”であることを照合する（閉塞フラグが“ｔｒｕｅ”の場合は照合失敗）。管理部１２０は、ユーザ情報８１０を用いてパスワードを照合する。管理部１２０は、各照合に成功したか否かを判定する。成功した場合、処理をステップＳ９３に進める。失敗した場合、処理をステップＳ９９に進める。
【０３０９】
（ステップＳ９３）管理部１２０は、ユーザ情報８１０および接続管理テーブル１１５に基づいて、多重接続の制約がないか否かを判定する。多重接続の制約がある場合、処理をステップＳ９９に進める。多重接続の制約がない場合、処理をステップＳ９４に進める。多重接続の制約の有無の判定方法は、図１４のステップＳ１６の方法と同様である。ただし、ユーザ管理テーブル１１１の代わりに、ユーザ情報８１０を参照する点が異なる。
【０３１０】
（ステップＳ９４）管理部１２０は、ログイン要求に含まれる各種の情報に基づいて、割当ロールＩＤを取得する。具体的には、管理部１２０は、ユーザ展開情報８３０を参照して、ユーザＩＤに対応するユーザ割当ロールＩＤのリストを得る。また、管理部１２０は、場所情報８４０を参照して、中継装置２００のＩＰアドレスに対応する中継装置ＩＤを得る。管理部１２０は、場所展開情報８６０を参照して中継装置ＩＤに対応する場所割当ロールＩＤのリストを得る。また、管理部１２０は、ユーザ端末情報８７０を参照して、クライアント５００のＭＡＣアドレス／ＩＰアドレスの両方または何れか一方に対応するユーザ端末ＩＤを得る。管理部１２０は、ユーザ端末展開情報８９０を参照して、ユーザ端末ＩＤに対応するユーザ端末割当ロールＩＤのリストを得る。
【０３１１】
（ステップＳ９５）管理部１２０は、ステップＳ９４で取得した各リストのうち、ユーザ割当ロールＩＤ、場所割当ロールＩＤおよびユーザ端末割当ロールＩＤを１つずつ組合せる（複数の組合せを取得し得る）。管理部１２０は、関連付け情報９７０の中から、各組合せに対応する適用ロールＩＤおよびアクセス可能時間パターンＩＤを取得する。何れの組合せに対応する適用ロールＩＤおよびアクセス可能時間パターンＩＤも取得できない場合、処理をステップＳ９９に進めてもよい。
【０３１２】
（ステップＳ９６）管理部１２０は、ログイン要求で取得した情報およびステップＳ９５で取得した適用ロールＩＤおよびアクセス可能時間パターンＩＤに基づいてセッション情報を生成する。ユーザはグループに属することもあるから、セッション情報は、ユーザ単位に登録されたセッション情報およびグループ単位に登録されたセッション情報のように複数生成されることもある。このとき、管理部１２０は、ユーザグループ情報８２０を参照して、接続禁止サーバの設定をＡＣＬから除外し得る。なお、セッション情報の内容は、第２の実施の形態と同様である。
【０３１３】
（ステップＳ９７）管理部１２０は、接続管理テーブル１１５を更新する。すなわち、管理部１２０は、セッション情報の配布状況を接続管理テーブル１１５に登録する。
（ステップＳ９８）管理部１２０は、生成されたセッション情報とログイン成功とを中継装置２００に応答する。そして、処理を終了する。
【０３１４】
（ステップＳ９９）管理部１２０は、ログイン失敗を中継装置２００に応答する。そして、処理を終了する。
なお、ステップＳ９５では、場所割当ロールＩＤおよびユーザ端末割当ロールＩＤの両方または何れか一方を除いて処理を行ってもよい。すなわち、（１）ユーザ割当ロールＩＤのみ、（２）ユーザ割当ロールＩＤと場所割当ロールＩＤとの組合せ、（３）ユーザ割当ロールＩＤとユーザ端末割当ロールＩＤとの組合せ、の何れかを用いて、適用ロールＩＤおよびアクセス可能時間パターンＩＤを関連付け情報９７０から取得してもよい。
【０３１５】
また、ステップＳ９５では、アクセス可能時間パターンＩＤで示されるアクセス許容時間帯に現時刻が含まれている場合に、当該アクセス可能時間パターンＩＤおよび適用ロールＩＤを取得の対象としてもよい。
【０３１６】
このように、第３の実施の形態で示したデータ形式でも、第２の実施の形態と同様に、管理サーバ１００はセッション情報を各中継装置に配布し得る。また、管理サーバ１００はセッション情報の配布状況を、接続管理テーブル１１５を用いて管理し得る。したがって、このようなデータ形式を用いた場合でも、第２の実施の形態と同様にして、制御情報の更新の際の同期制御を行える。特に、第３の実施の形態のデータ形式によれば、例えば、システムの管理者は、ｃｓｖ形式で記述されたファイルの追加、内容の変更、削除などにより、制御情報を容易に更新できる。
【０３１７】
なお、管理部１２０は、関連付け情報９７０に基づいて、ユーザ管理テーブル１１１、グループ管理テーブル１１２、ユーザ制御テーブル１１３およびグループ制御テーブル１１４を生成し、第２の実施の形態の処理を行うこともできる。
【０３１８】
ところで、前述のように、第１の実施の形態の情報処理は、演算部１ｂにプログラムを実行させることで実現できる。また、第２の実施の形態の情報処理は、ＣＰＵ１０１にプログラムを実行させることで実現できる。プログラムは、コンピュータ読み取り可能な記録媒体（例えば、光ディスク１５、メモリ装置１６およびメモリカード１８など）に記録できる。
【０３１９】
プログラムを流通させる場合、例えば、当該プログラムを記録した可搬記録媒体が提供される。また、プログラムを他のコンピュータの記憶装置に格納しておき、ネットワーク経由でプログラムを配布することもできる。コンピュータは、例えば、可搬記録媒体に記録されたプログラムまたは他のコンピュータから受信したプログラムを、記憶装置に格納し、当該記憶装置からプログラムを読み込んで実行する。ただし、可搬記録媒体から読み込んだプログラムを直接実行してもよく、他のコンピュータからネットワークを介して受信したプログラムを直接実行してもよい。
【０３２０】
また、上記の情報処理の少なくとも一部を、ＤＳＰ、ＡＳＩＣ、ＰＬＤなどの電子回路で実現することもできる。
上記については単に本発明の原理を示すものである。更に、多数の変形や変更が当業者にとって可能であり、本発明は上記に示し、説明した正確な構成および応用例に限定されるものではなく、対応する全ての変形例および均等物は、添付の請求項およびその均等物による本発明の範囲とみなされる。
【符号の説明】
【０３２１】
１  情報処理装置
１ａ  記憶部
１ｂ  演算部
２，３  認証装置
【図１】
0005979304.tif 000002
【図２】
0005979304.tif 000003
【図３】
0005979304.tif 000004
【図４】
0005979304.tif 000005
【図５】
0005979304.tif 000006
【図６】
0005979304.tif 000007
【図７】
0005979304.tif 000008
【図８】
0005979304.tif 000009
【図９】
0005979304.tif 000010
【図１０】
0005979304.tif 000011
【図１１】
0005979304.tif 000012
【図１２】
0005979304.tif 000013
【図１３】
0005979304.tif 000014
【図１４】
0005979304.tif 000015
【図１５】
0005979304.tif 000016
【図１６】
0005979304.tif 000017
【図１７】
0005979304.tif 000018
【図１８】
0005979304.tif 000019
【図１９】
0005979304.tif 000020
【図２０】
0005979304.tif 000021
【図２１】
0005979304.tif 000022
【図２２】
0005979304.tif 000023
【図２３】
0005979304.tif 000024
【図２４】
0005979304.tif 000025
【図２５】
0005979304.tif 000026
【図２６】
0005979304.tif 000027
【図２７】
0005979304.tif 000028
【図２８】
0005979304.tif 000029
【図２９】
0005979304.tif 000030
【図３０】
0005979304.tif 000031
【図３１】
0005979304.tif 000032
【図３２】
0005979304.tif 000033
【図３３】
0005979304.tif 000034
【図３４】
0005979304.tif 000035
【図３５】
0005979304.tif 000036
【図３６】
0005979304.tif 000037