(57)【要約】【課題】タイムアウト時間の設定に起因したセキュリティ上の問題の発生を抑える。【解決手段】アクセス制御装置１０は、クライアント３０から第１アクセスを受け付けた場合、前記第１アクセスの中継先のシステムへの最終アクセス時から第１時間の経過後であるときはタイムアウトを発生させ、第２アクセスを受け付けた場合、自装置に対する無操作時間が前記第１時間よりも短い第２時間の経過後であるときはタイムアウトを発生させる。【選択図】図１
2019195119.tif 000002
【特許請求の範囲】
【請求項１】
クライアントから第１アクセスを受け付けた場合、前記第１アクセスの中継先のシステムへの最終アクセス時から第１時間の経過後であるときはタイムアウトを発生させ、第２アクセスを受け付けた場合、自装置に対する無操作時間が前記第１時間よりも短い第２時間の経過後であるときはタイムアウトを発生させるアクセス制御装置。
【請求項２】
前記クライアントから第３アクセスを受け付けた場合、自装置に対する無操作時間が前記第２時間よりも長く、かつ前記第１時間よりも短い第３時間を経過した後にタイムアウトを発生させる請求項１に記載のアクセス制御装置。
【請求項３】
前記第１アクセスは第１システム宛てであり、前記第２アクセスは第２システム宛てである、請求項１または請求項２に記載のアクセス制御装置。
【請求項４】
前記第１アクセスは前記クライアントの第１識別子を含み、前記第２アクセスは前記クライアントの第２識別子を含む、請求項１から請求項３のいずれか１項に記載のアクセス制御装置。
【請求項５】
クライアントを認証する認証装置への最終アクセス時から前記認証装置のタイムアウト時間の経過後である場合、および前記クライアントからのアクセスの中継先のシステムへの最終アクセス時から前記システムのタイムアウト時間の経過後である場合、タイムアウトを発生させるアクセス制御装置。
【請求項６】
前記中継先のシステムに応じてタイムアウト時間を異ならせる請求項５に記載のアクセス制御装置。
【請求項７】
コンピュータに、クライアントから第１アクセスを受け付けた場合、前記第１アクセスの中継先のシステムへの最終アクセス時から第１時間の経過後であるときはタイムアウトを発生させ、第２アクセスを受け付けた場合、自装置に対する無操作時間が前記第１時間よりも短い第２時間の経過後であるときはタイムアウトを発生させる処理を実行させるためのプログラム。
【請求項８】
コンピュータに、クライアントを認証する認証装置への最終アクセス時から前記認証装置のタイムアウト時間を経過した場合、および前記クライアントからのアクセスの中継先のシステムへの最終アクセス時から前記システムのタイムアウト時間を経過した場合、タイムアウトを発生させる処理を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、タイムアウトの発生を制御する技術に関する。
【背景技術】
【０００２】
シングルサインオンによる認証を採用した通信システムでは、一度のクライアントの認証によって、該クライアントが所定の複数のシステムにアクセスすることができる。また、該通信システムでは、クライアントを認証した後のなりすましによる不正を防止するため、所定のタイミングにタイムアウトを発生させることがある。例えば特許文献１は、シングルサインオンを採用した画像形成システムを開示している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−２４８６４７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
タイムアウトが発生するまでの時間（以下「タイムアウト時間」という。）を長くすると、通信システムのセキュリティ機能が低下することがある。よって、タイムアウト時間の設定に起因したセキュリティ上の問題の発生を抑えることが求められる。
【０００５】
そこで、本発明は、タイムアウト時間の設定に起因したセキュリティ上の問題の発生を抑えることを目的の一つとする。
【課題を解決するための手段】
【０００６】
本発明の一実施形態として、クライアントから第１アクセスを受け付けた場合、前記第１アクセスの中継先のシステムへの最終アクセス時から第１時間の経過後であるときはタイムアウトを発生させ、第２アクセスを受け付けた場合、自装置に対する無操作時間が前記第１時間よりも短い第２時間の経過後であるときはタイムアウトを発生させるアクセス制御装置を提供する。
【０００７】
上記アクセス制御装置において、前記クライアントから第３アクセスを受け付けた場合、自装置に対する無操作時間が前記第２時間よりも長く、かつ前記第１時間よりも短い第３時間を経過した後にタイムアウトを発生させてもよい。
【０００８】
上記アクセス制御装置において、前記第１アクセスは第１システム宛てであり、前記第２アクセスは第２システム宛てであってもよい。
【０００９】
上記アクセス制御装置において、前記第１アクセスは前記クライアントの第１識別子を含み、前記第２アクセスは前記クライアントの第２識別子を含んでもよい。
【００１０】
本発明の一実施形態として、クライアントを認証する認証装置への最終アクセス時から前記認証装置のタイムアウト時間の経過後である場合、および前記クライアントからのアクセスの中継先のシステムへの最終アクセス時から前記システムのタイムアウト時間の経過後である場合、タイムアウトを発生させるアクセス制御装置を提供する。
【００１１】
上記アクセス制御装置において、前記中継先のシステムに応じてタイムアウト時間を異ならせてもよい。
【００１２】
本発明の一実施形態として、コンピュータに、クライアントから第１アクセスを受け付けた場合、前記第１アクセスの中継先のシステムへの最終アクセス時から第１時間の経過後であるときはタイムアウトを発生させ、第２アクセスを受け付けた場合、自装置に対する無操作時間が前記第１時間よりも短い第２時間の経過後であるときはタイムアウトを発生させる処理を実行させるためのプログラムを提供する。
【００１３】
本発明の一実施形態として、コンピュータに、クライアントを認証する認証装置への最終アクセス時から前記認証装置のタイムアウト時間を経過した場合、および前記クライアントからのアクセスの中継先のシステムへの最終アクセス時から前記システムのタイムアウト時間を経過した場合、タイムアウトを発生させる処理を実行させるためのプログラム。
【発明の効果】
【００１４】
本願発明によれば、タイムアウト時間の設定に起因したセキュリティ上の問題の発生を抑えることができる。
【図面の簡単な説明】
【００１５】
【図１】本発明の第１実施形態に係る通信システムの全体構成を示すブロック図である。
【図２】本発明の第１実施形態に係るアクセス制御装置の構成を示すブロック図である。
【図３】本発明の第１実施形態に係るテーブルの構成を示す図である。
【図４】本発明の第１実施形態に係るアクセス制御装置が行うテーブルの管理に係る処理を示すフローチャートである。
【図５】本発明の第１実施形態に係るアクセス制御装置が行うクライアントの認証に係る処理を示すフローチャートである。
【図６】本発明の第１実施形態に係るテーブルの構成の一例を示す図である。
【図７】本発明の第１実施形態に係るアクセス制御装置がクライアントを認証した後に行うアクセス制御を示すフローチャートである。
【図８】本発明の第１実施形態に係るテーブルの構成の一例を示す図である。
【図９】本発明の第１実施形態に係るテーブルの構成の一例を示す図である。
【図１０】本発明の第１実施形態に係るテーブルの構成の一例を示す図である。
【図１１】本発明の第１実施形態に係るアクセス制御装置が行う処理の具体例を説明する図である。
【図１２】本発明の第２実施形態に係るテーブルの構成を示す図である。
【図１３】本発明の第２実施形態に係るアクセス制御装置が行うテーブルの管理に係る処理を示すフローチャートである。
【図１４】本発明の第２実施形態に係るアクセス制御装置がクライアントを認証した後に行うアクセス制御を示すフローチャートである。
【図１５】本発明の第２実施形態に係るテーブルの構成の一例を示す図である。
【図１６】本発明の第２実施形態に係るテーブルの構成の一例を示す図である。
【図１７】本発明の第３実施形態に係る通信システムの全体構成を示すブロック図である。
【図１８】本発明の第３実施形態に係るアクセス制御装置の構成を示すブロック図である。
【図１９】本発明の第３実施形態に係るテーブルの構成を示す図である。
【図２０】本発明の第３実施形態に係るアクセス制御装置が行う処理を示すフローチャートである。
【図２１】本発明の第３実施形態に係る通信システムで実行される処理の一例を示すシーケンスチャートである。
【図２２】本発明の第３実施形態に係る通信システムで実行される処理の一例を示すシーケンスチャートである。
【図２３】本発明の第３実施形態に係る通信システムで実行される処理の一例を示すシーケンスチャートである。
【図２４】本発明の第３実施形態に係る通信システムで実行される処理の一例を示すシーケンスチャートである。
【図２５】シングルサインオンを採用した通信システムの全体構成の一例を示すブロック図である。
【図２６】シングルサインオンを採用した通信システムで実行される処理の一例を示すシーケンスチャートである。
【図２７】シングルサインオンを採用した通信システムで実行される処理の一例を示すシーケンスチャートである。
【図２８】シングルサインオンを採用した通信システムで実行される処理の一例を示すシーケンスチャートである。
【図２９】シングルサインオンを採用した通信システムで実行される処理の一例を示すシーケンスチャートである。
【発明を実施するための形態】
【００１６】
以下、本発明を実施するための形態について、いくつかの実施形態として説明する。なお、本発明はこれらの実施形態を種々に変形して実施することが可能である。したがって、本発明は、これらの実施形態に限定して解釈されることはない。以下の説明では、説明を分かりやすくするため、通信の遅延および処理の遅延を考慮しないものとする。
【００１７】
［シングルサインオンを採用した通信システムの課題］
本発明の理解を助けるため、まず、シングルサインオンを採用した通信システムの課題について説明する。
【００１８】
図２５は、シングルサインオンを採用した通信システム９の全体構成の一例を示すブロック図である。通信システム９は、認証装置９０と、第１システム２０Ａと、第２システム２０Ｂと、複数のクライアント３０と、を含む。
【００１９】
認証装置９０は、リバースプロキシ方式に従って、クライアント３０の認証を行う。すなわち、認証装置９０は、クライアント３０からのアクセスを受け付けると、クライアント３０の正当性を確認するための認証処理を行う。認証装置９０は、認証したクライアント３０からのアクセスを、第１システム２０Ａおよび第２システム２０Ｂに中継する。認証装置９０は、クライアント３０からアクセスを受け付けた場合、該クライアント３０の最終アクセス日時からの経過時間がタイムアウト時間未満であるときは認証処理を行わないが、該タイムアウト時間の経過後であるときはタイムアウトを発生させて再認証を要求する。
【００２０】
この種の通信システムに含まれる各システムのタイムアウト時間は、統一されていることが多い（例えば１５分）。各システムに求められるセキュリティ機能を勘案して、個別にタイムアウト時間を設定することができれば、セキュリティ機能を確保しつつユーザの利便性を高める効果が期待できる。しかし、単にタイムアウト時間の設定を変更するだけでは、以下の（課題１）、（課題２）、および（課題３）が生じることを発明者らは見出した。以下、第１システム２０Ａのタイムアウト時間を５分、第２システム２０Ｂのタイムアウト時間を１５分として、（課題１）、（課題２）、および（課題３）を説明する。
【００２１】
（課題１）認証装置９０のタイムアウト時間を５分とした場合
図２６は、通信システム９で実行される処理の一例を示すシーケンスチャートである。認証装置９０は、アクセス日時「２０１８／０３／０１  １０：００：００」（つまり、２０１８年３月１日の１０時００分００秒）に、クライアント３０からアクセスを受け付けると（ステップＳ３０１）、認証処理を行う（ステップＳ３０２）。クライアント３０を認証すると、認証装置９０は、クライアント３０の最終アクセス日時を、「２０１８／０３／０１  １０：００：００」に更新する（ステップＳ３０３）。なお、認証装置９０は、タイマーを用いて時刻を計り、その時刻に基づいて、最終アクセス日時を記録する。認証装置９０は、自装置へのログインを許可した場合に最初に表示されるトップ画面を、クライアント３０へ送信する（ステップＳ３０４）。
【００２２】
その後、認証装置９０が、アクセス日時「２０１８／０３／０１  １０：１０：００」に、クライアント３０から第２システム２０Ｂ宛てのアクセスを受け付けると（ステップＳ３０５）、タイムアウトチェックを行う（ステップＳ３０６）。ここでは、最終アクセス日時「２０１８／０３／０１  １０：００：００」から既に１０分を経過しており、認証装置９０のタイムアウト時間である５分を経過した後である。よって、認証装置９０は、タイムアウトを発生させて、エラー画面をクライアント３０へ送信する（ステップＳ３０７）。
【００２３】
以上のとおり、認証装置９０のタイムアウト時間を第２システム２０Ｂのタイムアウト時間よりも短くした場合、認証装置９０のタイムアウト時間の経過後は、クライアント３０が第２システム２０Ｂにログインすることができない。すなわち、第２システム２０Ｂのタイムアウト時間が、実質的に認証装置９０のタイムアウト時間に短縮されてしまう。
【００２４】
（課題２）認証装置９０のタイムアウト時間を１５分とした場合（その１）
図２７は、通信システム９で実行される処理の一例を示すシーケンスチャートである。ステップＳ３０１〜Ｓ３０４の処理は、（課題１）の場合の処理と同じであるから、説明を省略する。
【００２５】
認証装置９０が、アクセス日時「２０１８／０３／０１  １０：１０：００」に、クライアント３０から第１システム２０Ａ宛てのアクセスを受け付けると（ステップＳ４０１）、タイムアウトチェックを行う（ステップＳ４０２）。ここでは、最終アクセス日時「２０１８／０３／０１  １０：００：００」から未だ１０分しか経過しておらず、認証装置９０のタイムアウト時間である１５分を経過していない。この場合、認証装置９０は、最終アクセス日時を「２０１８／０３／０１  １０：１０：００」に更新する（ステップＳ４０３）。認証装置９０は、第１システム２０Ａにログインを要求する（ステップＳ４０４）。第１システム２０Ａは、この要求に基づいてログイン処理を行い、クライアント３０のログインを許可する（ステップＳ４０５）。第１システム２０Ａは、最終アクセス日時を「２０１８／０３／０１  １０：１０：００」に更新する（ステップ４０６）。第１システム２０Ａは、トップ画面を認証装置９０へ送信する（ステップＳ４０７）。認証装置９０は、トップ画面をクライアント３０へ送信する（ステップＳ４０８）。
【００２６】
以上のとおり、第１システム２０Ａは、認証装置９０への最終アクセス日時からの経過時間が、自システムのタイムアウト時間の経過後であるにもかかわらず、再認証なしにクライアント３０のログインを許可してしまう。その理由は、第１システム２０Ａは、認証装置９０への最終アクセス日時である「２０１８／０３／０１  １０：００：００」を認識しておらず、「２０１８／０３／０１  １０：１０：００」のアクセスを最初のアクセスとして認識するからである。
【００２７】
（課題３）認証装置９０のタイムアウト時間を１５分とした場合（その２）
図２８および図２９は、通信システム９で実行される処理の一例を示すシーケンスチャートである。ステップＳ３０１〜Ｓ３０４の処理は、（課題１）の場合の処理と同じであるから、説明を省略する。
【００２８】
認証装置９０が、アクセス日時「２０１８／０３／０１  １０：０１：００」に、クライアント３０から第１システム２０Ａ宛てのアクセスを受け付けると（ステップＳ５０１）、タイムアウトチェックを行う（ステップＳ５０２）。ここでは、最終アクセス日時「２０１８／０３／０１  １０：００：００」から、未だ１分しか経過しておらず、認証装置９０のタイムアウト時間である１５分を経過していない。この場合、認証装置９０は、最終アクセス日時を「２０１８／０３／０１  １０：０１：００」に更新する（ステップＳ５０３）。認証装置９０は、第１システム２０Ａにログインを要求する（ステップＳ５０４）。第１システム２０Ａは、この要求に基づいてログイン処理を行い、ログインを許可する（ステップＳ５０５）。第１システム２０Ａは、最終アクセス日時を、「２０１８／０３／０１  １０：０１：００」に更新する（ステップＳ５０６）。第１システム２０Ａは、トップ画面を認証装置９０へ送信する（ステップＳ５０７）。第１システム２０Ａは、トップ画面をクライアント３０へ送信する（ステップＳ５０８）。
【００２９】
次に、認証装置９０が、アクセス日時「２０１８／０３／０１  １０：０７：００」に、クライアント３０から第１システム２０Ａ宛てのアクセスを受け付けると（ステップＳ５０９）、タイムアウトチェックを行う（ステップＳ５１０）、ここでは、最終アクセス日時「２０１８／０３／０１  １０：０１：００」から、未だ６分しか経過しておらず、認証装置９０のタイムアウト時間である１５分を経過していない。よって、認証装置９０は、最終アクセス日時を「２０１８／０３／０１  １０：０７：００」に更新する（ステップＳ５１１）。認証装置９０は、第１システム２０Ａにログインを要求する（ステップＳ５１２）。第１システム２０Ａは、この要求に基づいてタイムアウトチェックを行う（ステップＳ５１３）。ここでは、第１システム２０Ａへの最終アクセス日時「２０１８／０３／０１  １０：０１：００」から、既に６分を経過しており、第１システム２０Ａのタイムアウト時間である５分を経過した後である。この場合、第１システム２０Ａは、タイムアウトを発生させ、エラー画面を認証装置９０へ送信する（ステップＳ５１４）。認証装置９０は、エラー画面をクライアント３０へ送信する（ステップＳ５１５）。
【００３０】
次に、認証装置９０が、アクセス日時「２０１８／０３／０１  １０：２０：００」に、クライアント３０から第１システム２０Ａ宛てのアクセスを受け付けると（ステップＳ５１６）、タイムアウトチェックを行う（ステップＳ５１７）。ここでは、最終アクセス日時である「２０１８／０３／０１  １０：０７：００」から、未だ１３分しか経過しておらず、認証装置９０のタイムアウト時間である１５分を経過していない。よって、認証装置９０は、最終アクセス日時を「２０１８／０３／０１  １０：２０：００」に更新する（ステップＳ５１８）。認証装置９０は、第１システム２０Ａにログインを要求する（ステップＳ５１９）。第１システム２０Ａは、この要求に基づいてログイン処理を行い、ログインを許可する（ステップＳ５２０）。第１システム２０Ａは、ステップＳ５１３，Ｓ５１４の処理でタイムアウトを発生させており、「２０１８／０３／０１  １０：２０：００」のアクセスを最初のアクセスと認識するから、ログインを許可する。第１システム２０Ａは、最終アクセス日時を「２０１８／０３／０１  １０：２０：００」に更新する（ステップＳ５２１）。第１システム２０Ａは、トップ画面を認証装置９０へ送信する（ステップＳ５２２）。認証装置９０は、トップ画面をクライアント３０へ送信する（ステップＳ５２３）。
【００３１】
以上のとおり、第１システム２０Ａは、認証装置９０への最終アクセス日時から、自システムのタイムアウト時間の経過後であるにもかかわらず、再認証なしにクライアント３０のログインを許可してしまう。
【００３２】
以下、（課題１）、（課題２）、および（課題３）を解決するための本発明の実施の形態を説明する。
【００３３】
［第１実施形態］
＜構成＞
図１は、本発明の第１実施形態に係る通信システム１の全体構成を示すブロック図である。通信システム１は、アクセス制御装置１０と、第１システム２０Ａと、第２システム２０Ｂと、複数のクライアント３０と、を含む。アクセス制御装置１０は、第１システム２０Ａ、および第２システム２０Ｂの各々と通信回線を介して通信する。アクセス制御装置１０は、複数のクライアント３０の各々と通信回線を介して通信する。通信回線は、例えば、公衆の通信回線（例えばインターネット）、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、または専用回線である。アクセス制御装置１０は、例えば、１台のサーバ装置または複数台のサーバの協働により実現される。
【００３４】
アクセス制御装置１０は、クライアント３０を認証すると、クライアント３０から受け付けたアクセスを、第１システム２０Ａ、または第２システム２０Ｂへ中継する。アクセス制御装置１０は、所定の条件を満たした場合は、タイムアウトを発生させてクライアント３０をログアウトさせる。タイムアウトは、本実施形態では、クライアント３０の認証を無効にすることを意味する。すなわち、アクセス制御装置１０は、タイムアウトの発生後にクライアント３０からのアクセスを受け付けると、クライアント３０に再認証を要求する。タイムアウトを発生させる条件については、後述する。
【００３５】
第１システム２０Ａ、および第２システム２０Ｂは、例えば、それぞれ異なるサーバ装置によって実現されるが、同一のサーバ装置によって実現されてもよい。なお、本実施形態では、認証装置９０の配下のシステムを、第１システム２０Ａ、および第２システム２０Ｂの２つとしているが、３つ以上存在してもよい。第１システム２０Ａは、例えば、金融機関に関するサービスを提供する。第２システム２０Ｂは、第１システム２０Ａとは異なるサービスを提供する。ただし、第１システム２０Ａ、および第２システム２０Ｂが提供するサービスは、問わない。クライアント３０は、例えば、パーソナルコンピュータ、スマートフォン、タブレット型コンピュータまたはその他のコンピュータ装置である。
【００３６】
図２は、アクセス制御装置１０の構成を示すブロック図である。アクセス制御装置１０は、物理的には、プロセッサ１１と、メモリ１２と、第１通信部１３と、第２通信部１４と、を備える。プロセッサ１１は、アクセス制御装置１０の各部を制御する。プロセッサ１１は、アクセス制御部として機能する。プロセッサ１１は、例えば、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、ＦＰＧＡ（Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）で例示される制御回路を含む。また、プロセッサ１１は、時刻を計るタイマーＴを有する。タイマーＴは、本実施形態では現在の日時（絶対時刻）を計る。タイマーＴは、例えばリアルタイムクロックである。
【００３７】
メモリ１２は、データを記憶する。メモリ１２は、例えば、テーブル１２１と、認証情報１２２と、プログラム１２３と、を記憶する。テーブル１２１は、クライアント３０のアクセスを制御するためのデータが格納される。認証情報１２２は、認証処理に用いられる情報を含む。認証情報１２２は、例えば、ユーザＩＤとパスワードとの組を複数含む。プログラム１２３は、プロセッサ１１に所定の機能を実行させるためのプログラムである。
【００３８】
メモリ１２は、例えば、プロセッサ１１がワークエリアとして使用するＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、およびプログラム１２３を記憶するＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）を含む。また、メモリ１２は、光学式記録媒体、磁気記録媒体、及び半導体記録媒体で例示される任意の形式の記録媒体を含みうる。
【００３９】
第１通信部１３は、複数のクライアント３０の各々と通信する。第２通信部１４は、第１システム２０Ａ、および第２システム２０Ｂの各々と通信する。第１通信部１３および第２通信部１４は、有線および無線のいずれによって通信してもよい。第１通信部１３および第２通信部１４は、例えば、通信回路を含む。
【００４０】
図３は、テーブル１２１の構成の一例を示す図である。テーブル１２１は、アクセス制御装置１０、第１システム２０Ａ、および第２システム２０Ｂの各々について、「ユーザＩＤ」、「タイムアウト時間」、「最終アクセス日時」、「短縮フラグ」、および「発生フラグ」を対応付けて格納する。なお、図３には、ある一つのクライアント３０に関する情報のみが示されている。
【００４１】
「ユーザＩＤ」は、クライアント３０のユーザを識別する識別子である。アクセス制御装置１０のユーザを識別するユーザＩＤ「ＵＳＥＲ−１」と、第１システム２０Ａのユーザを識別するユーザＩＤ「ＵＳＥＲ−Ａ１」および「ＵＳＥＲ−Ａ２」と、第２システム２０Ｂのユーザを識別するユーザＩＤ「ＵＳＥＲ−Ｂ１」とは、本実施形態では、同じクライアント３０のユーザに割り当てられている。すなわち、クライアント３０は、認証画面から、ユーザＩＤ「ＵＳＥＲ−１」を用いてアクセス制御装置１０にログインすることができる。また、クライアント３０は、第１システム２０Ａのトップ画面から、ユーザＩＤ「ＵＳＥＲ−Ａ１」または「ＵＳＥＲ−Ａ２」を用いて第１システム２０Ａにログインすることができる。また、クライアント３０は、第２システム２０Ｂのトップ画面から、ユーザＩＤ「ＵＳＥＲ−Ｂ１」を用いて第２システム２０Ｂにログインすることができる。
【００４２】
「タイムアウト時間」は、所定の時点からタイムアウトが発生するまでの時間である。本実施形態では、標準のタイムアウト時間である第１タイムアウト時間（第１時間）を１５分とし、第１タイムアウト時間よりも短縮した第２タイムアウト時間（第２時間）を５分とする。アクセス制御装置１０は、第１タイムアウト時間である「１５分」が適用される。第１システム２０Ａは、ユーザＩＤ「ＵＳＥＲ−Ａ１」（第１識別子）が用いられたときは第１タイムアウト時間である「１５分」が、ユーザＩＤ「ＵＳＥＲ−Ａ２」（第２識別子）が用いられたときは第２タイムアウト時間である「５分」が適用される。第１システム２０Ａは、例えば、より高度なセキュリティが課されるべきユーザほど、タイムアウト時間を短くする。第２システム２０Ｂは、ユーザＩＤ「ＵＳＥＲ−Ｂ１」が用いられたときは第２タイムアウト時間である「５分」が適用される。以上のように、第１システム２０Ａは、クライアント３０から受け付けたアクセスの中継先のシステム、およびユーザによってタイムアウト時間を異ならせる。「最終アクセス日時」は、アクセス制御装置１０、第１システム２０Ａ、および第２システム２０Ｂの各々に最終的にアクセスした最終アクセス時を示す。
【００４３】
「短縮フラグ」は、いずれかのクライアント３０に第２タイムアウト時間が適用される場合は「オン」、適用されない場合は「オフ」となるフラグである。
【００４４】
「発生フラグ」は、タイムアウトが発生する場合は「オン」、発生しない場合は「オフ」となるフラグである。本実施形態では、アクセス制御装置１０に対応付けられた短縮フラグおよび発生フラグが、それぞれオンまたはオフのいずれかとなる。一方、第１システム２０Ａおよび第２システム２０Ｂの各々に対応付けられた短縮フラグおよび発生フラグは、本実施形態では、ブランク（図３において「−」と示す。）である。
【００４５】
＜動作＞
次に、通信システム１の動作を説明する。
【００４６】
（テーブル１２１の管理）
図４は、アクセス制御装置１０が行うテーブル１２１の管理に係る処理を示すフローチャートである。以下の処理は、クライアント３０ごとに行われる。なお、以下の処理の開始前において、短縮フラグおよび発生フラグは、いずれもオフである。
【００４７】
アクセス制御装置１０においてプロセッサ１１は、まず、いずれかのクライアント３０に第２タイムアウト時間を適用するかどうかを判定する（ステップＳ１）。ここでは、プロセッサ１１は、ステップＳ１で「ＹＥＳ」と判定し、テーブル１２１の短縮フラグをオンする（ステップＳ２）。これにより、テーブル１２１は図３に示す状態となる。なお、ステップＳ１で「ＮＯ」と判定した場合は、プロセッサ１１は、短縮フラグをオフとしたまま、図４の処理を終了させる。
【００４８】
ステップＳ２で短縮フラグをオンした場合、プロセッサ１１は、タイマーＴに基づいて、クライアント３０の無操作時間が、第２タイムアウト時間である５分を経過したかどうかを判定する（ステップＳ３）。無操作時間とは、クライアント３０がアクセス制御装置１０に対する操作を行っていない時間の長さをいう。ここにおいて、操作とは、アクセス制御装置１０に対して何らかの命令を発することをいう。クライアント３０は、第１システム２０Ａまたは第２システム２０Ｂを操作する場合、アクセス制御装置１０を経由する。このため、アクセス制御装置１０に対する操作は、アクセス制御装置１０をアクセス先として行われる操作、第１システム１０Ａをアクセス先として行われる操作、および第２システム１０Ｂをアクセス先として行われる操作を含む。アクセス制御装置１０に対する操作の有無は、クライアント３０がユーザにより使用されているかどうかの判定に用いられる。プロセッサ１１は、例えば、クライアント３０に対して最後の操作が行われた日時をメモリ１２に記憶させておき、該日時とタイマーＴが計る日時とを比較し、その差分を無操作時間として算出する。ステップＳ３で「ＮＯ」と判定した場合、プロセッサ１１は待機する。
【００４９】
ステップＳ３で、無操作時間が第２タイムアウト時間である５分を経過したと判定した場合（ステップＳ３；ＹＥＳ）、プロセッサ１１は、テーブル１２１の発生フラグをオンする（ステップＳ４）。これにより、第２タイムアウト時間が適用されるユーザ（本実施形態では、ユーザＩＤ「ＵＳＥＲ−Ａ２」、または「ＵＳＥＲ−Ｂ１」のユーザ）のクライアント３０について、タイムアウトが発生する。
【００５０】
（クライアント３０の認証に係る処理）
図５は、アクセス制御装置１０が行うクライアント３０の認証に係る処理を示すフローチャートである。
【００５１】
アクセス制御装置１０においてプロセッサ１１は、クライアント３０からのアクセスを受け付ける（ステップＳ１１）。次に、プロセッサ１１は、クライアント３０の認証処理を行う（ステップＳ１２）。認証処理は、クライアント３０から受け付けたユーザＩＤとパスワードとの組と、認証情報１２２におけるユーザＩＤとパスワードの組とを照合して、クライアント３０の正当性を確認する処理である。
【００５２】
プロセッサ１１は、認証処理に成功したかどうかを判定する（ステップＳ１３）。ステップＳ１３で「ＹＥＳ」と判定した場合、プロセッサ１１は、クライアント３０のログインを許可する（ステップＳ１４）。次に、プロセッサ１１は、テーブル１２１におけるアクセス制御装置１０の最終アクセス日時を更新する（ステップＳ１５）。例えば、ユーザＩＤ「ＵＳＥＲ−１」を用いて、アクセス日時「２０１８／０３／０１  １０：００：００」にアクセスを受け付けた場合、プロセッサ１１は、テーブル１２１を図６に示す状態に更新する。そして、プロセッサ１１は、図５の処理を終了する。一方、ステップＳ１３で「ＮＯ」と判定した場合、プロセッサ１１はログインを拒否して（ステップＳ１６）、図５の処理を終了する。
【００５３】
（アクセス制御）
図７は、アクセス制御装置１０がクライアント３０を認証した後に行うアクセス制御を示すフローチャートである。
【００５４】
アクセス制御装置１０においてプロセッサ１１は、クライアント３０からのアクセスを受け付ける（ステップＳ２１）。次に、プロセッサ１１は、該クライアント３０に、第２タイムアウト時間を適用するかどうかを判定する（ステップＳ２２）。プロセッサ１１は、クライアント３０がログインに用いたユーザＩＤ、アクセス先のシステム、およびテーブル１２１に基づいて、この判定を行う。例えば、プロセッサ１１は、ユーザＩＤ「ＵＳＥＲ−Ａ２」を用いた第１システム２０Ａ宛てのアクセス（第２アクセス）を受け付けた場合、またはユーザＩＤ「ＵＳＥＲ−Ｂ１」を用いた第２システム２０Ｂ宛てのアクセス（第２アクセス）を受け付けた場合、ステップＳ２２で「ＹＥＳ」と判定する。
【００５５】
次に、プロセッサ１１は、テーブル１２１に基づいて、発生フラグがオンかどうかを判定する（ステップＳ２３）。すなわち、プロセッサ１１は、クライアント３０の無操作時間が、第２タイムアウト時間である５分を経過したかどうかを判定する。ステップＳ２３で「ＮＯ」と判定した場合、プロセッサ１１は、クライアント３０に対し、アクセス先のシステムへのログインを許可する（ステップＳ２４）。この場合、プロセッサ１１は、アクセス先のシステムにログインを要求する。例えば、アクセス日時「２０１８／０３／０１  １０：０３：００」に、ユーザＩＤ「ＵＳＥＲ−Ａ２」を用いたアクセスを受け付けた場合、プロセッサ１１は、第１システム２０Ａへのログインを許可する。そして、プロセッサ１１は、テーブル１２１における最終アクセス日時を更新する（ステップＳ２５）。アクセス日時「２０１８／０３／０１  １０：０３：００」に、ユーザＩＤ「ＵＳＥＲ−Ａ２」を用いたアクセスを受け付けた場合、プロセッサ１１はテーブル１２１を図８に示す状態に更新する。すなわち、プロセッサ１１は、アクセス制御装置１０および第１システム２０Ａの最終アクセス日時を更新する。そして、プロセッサ１１は、図７の処理を終了する。
【００５６】
一方、ステップＳ２３で「ＹＥＳ」と判定した場合、プロセッサ１１はタイムアウトを発生させる（ステップＳ２６）。例えば、アクセス日時「２０１８／０３／０１  １０：０８：００」に、ユーザＩＤ「ＵＳＥＲ−Ａ２」を用いたアクセスを受け付けた場合、プロセッサ１１は第１システム２０Ａについてタイムアウトを発生させて、第１システム２０Ａへのログインを拒否する。この場合、プロセッサ１１は、アクセス先のシステムにログインを要求しない。
【００５７】
次に、プロセッサ１１は、テーブル１２１における最終アクセス日時を更新する（ステップＳ２７）。例えば、アクセス日時「２０１８／０３／０１  １０：０８：００」に、ユーザＩＤ「ＵＳＥＲ−Ａ２」を用いたアクセスを受け付けた場合、プロセッサ１１はテーブル１２１を図９に示す状態に更新する。ここでは、アクセス制御装置１０についてはタイムアウトが発生せず、第１システム２０Ａについてタイムアウトが発生するので、プロセッサ１１はアクセス制御装置１０の最終アクセス日時を更新する。そして、プロセッサ１１は図７の処理を終了する。
【００５８】
一方、ステップＳ２２で第２タイムアウト時間を適用しないと判定した場合、すなわち第１タイムアウト時間を適用すると判定した場合（ステップＳ２２；ＮＯ）、プロセッサ１１はステップＳ２８に処理を進める。例えば、ユーザＩＤ「ＵＳＥＲ−Ａ１」を用いて、第１システム２０Ａ宛てのアクセス（第１アクセス）を受け付けた場合、プロセッサ１１はステップＳ２２で「ＮＯ」と判定する。
【００５９】
この場合、プロセッサ１１は、テーブル１２１に基づいて、アクセス制御装置１０への最終アクセス日時からの経過時間が、第１タイムアウト時間である１５分を経過したかどうかを判定する（ステップＳ２８）。ステップＳ２８で「ＮＯ」と判定した場合、プロセッサ１１は、クライアント３０に対し、アクセス先のシステムへのログインを許可する（ステップＳ２９）。例えば、アクセス日時「２０１８／０３／０１  １０：１０：００」に、ユーザＩＤ「ＵＳＥＲ−Ａ１」を用いたアクセスを受け付けた場合、プロセッサ１１は、第１システム２０Ａへのログインを許可する。
【００６０】
次に、プロセッサ１１は、テーブル１２１における最終アクセス日時を更新する（ステップＳ３０）。例えば、アクセス日時「２０１８／０３／０１  １０：１０：００」に、ユーザＩＤ「ＵＳＥＲ−Ａ２」を用いたアクセスを受け付けた場合、プロセッサ１１は、テーブル１２１を図１０に示す状態に更新する。ここでは、プロセッサ１１は、アクセス制御装置１０と第１システム２０Ａとにおける最終アクセス日時を更新する。そして、プロセッサ１１は、図７の処理を終了する。
【００６１】
一方、ステップＳ２８で「ＹＥＳ」と判定した場合、プロセッサ１１はタイムウトを発生させる（ステップＳ３１）。例えば、ユーザＩＤ「ＵＳＥＲ−Ａ２」を用いて、アクセス日時「２０１８／０３／０１  １０：２０：００」にアクセスを受け付けた場合、プロセッサ１１はアクセス制御装置１０および第１システム２０Ａについてタイムアウトを発生させる。そして、プロセッサ１１は図７の処理を終了する。
【００６２】
以上のとおり、アクセス制御装置１０のタイムアウト時間は、第２システム２０ＢのユーザＩＤ「ＵＳＥＲ−Ａ１」のタイムアウト時間と同じ、第１タイムアウト時間（１５分）に設定されている。よって、アクセス制御装置１０のタイムアウト時間の設定によって、第２システム２０Ｂのタイムアウト時間が実質的に短縮されてしまうことがないため、上述した（課題１）は生じない。
【００６３】
アクセス制御装置１０は、第２タイムアウト時間を適用する場合は、無操作時間が該第２タイムアウト時間を経過した後にタイムアウトを発生させる。これにより、無操作時間が該第２タイムアウト時間を経過した後は、アクセス制御装置１０はアクセス先のシステムにログインを要求しない。よって、上述した（課題２）および（課題３）は発生しない。以上の理由により、アクセス制御装置１０によれば、タイムアウト時間の設定に起因したセキュリティ上の問題の発生を抑えることができる。
【００６４】
さらに、アクセス制御装置１０により、以下の効果を奏する。図１１に示すように、クライアント３０が、ユーザＩＤ「ＵＳＥＲ−Ｂ１」を用いて第２システム２０Ｂにアクセスし、その後、ユーザＩＤ「ＵＳＥＲ−Ａ１」を用いて第１システム２０Ａにアクセスし、再びユーザＩＤ「ＵＳＥＲ−Ｂ１」を用いて第２システム２０Ｂにアクセスする場合を考える。ユーザＩＤ「ＵＳＥＲ−Ａ１」を用いて第１システム２０Ａにアクセスしている時間が、第２タイムアウト時間である５分よりも長い場合、仮に第２システム２０Ｂへの最終アクセス日時を基準にタイムアウトの発生の有無が制御されたときは、第２システム２０Ｂについてタイムアウトが発生する。しかし、アクセス制御装置１０は、無操作時間に基づいてタイムアウトの発生の有無を制御する。第１システム２０Ａへのアクセス中も、アクセス制御装置１０に対する操作は行われている。このため、無操作時間に基づいてタイムアウトの発生が制御されることで、第２システム２０Ｂのタイムアウトの発生頻度が減少する。また、無操作時間が第２タイムアウト時間よりも短い期間においては、なりすましのおそれは少ないと考えられる。以上の理由により、アクセス制御装置１０によれば、ユーザの利便性を向上させる上でも望ましい構成を有する。
【００６５】
［第２実施形態］
本実施形態では、タイムアウト時間を、「５分」、「１０分」、「１５分」の３種類とした場合の実施の形態を説明する。通信システム１の全体構成、および各装置の物理的な構成は、上述した第１実施形態と同じである。以下、第１実施形態との相違点を中心に、本実施形態を説明する。なお、上述した第１実施形態と同じ要素については、同じ符号を付して表す。
【００６６】
図１２は、本実施形態のテーブル１２１の構成を示す図である。なお、図１２には、一のクライアント３０に関する情報のみが示されている。図１２に示すように、テーブル１２１は、アクセス制御装置１０、第１システム２０Ａ、および第２システム２０Ｂの各々について、短縮フラグおよび発生フラグが格納される。一方、アクセス制御装置１０についての短縮フラグおよび発生フラグは、ブランク（図１２において「−」と示す。）である。また、第２システム２０ＢのユーザＩＤ「ＵＳＥＲ−Ｂ１」のユーザには、第２タイムアウト時間より長く、かつ第１タイムアウト時間よりも短い第３タイムアウト時間（第３時間）が適用されるものとする。第３タイムアウト時間は、ここでは１０分である。
【００６７】
（テーブル１２１の管理）
図１３は、アクセス制御装置１０が行うテーブル１２１の管理に係る処理を示すフローチャートである。以下の処理は、ユーザＩＤごとに行われる。なお、以下の処理の開始前において、「短縮フラグ」および「発生フラグ」は、いずれも「オフ」である。
【００６８】
アクセス制御装置１０においてプロセッサ１１は、まず、いずれかのクライアント３０に第１タイムアウト時間（１５分）よりも短縮したタイムアウト時間を適用するかどうかを判定する（ステップＳ４１）。ここでは、プロセッサ１１は、ステップＳ４１で「ＹＥＳ」と判定し、対象の短縮フラグをオンする（ステップＳ４２）。本実施形態では、プロセッサ１１は、テーブル１２１において、第２タイムアウト時間（つまり、５分）および第３タイムアウト時間（つまり、１０分）に対応付けられた短縮フラグをオンする。これにより、テーブル１２１は図１２に示す状態となる。
【００６９】
次に、プロセッサ１１は、タイマーＴに基づいて、クライアント３０の無操作時間が、いずれかの短縮したタイムアウト時間を経過したかどうかを判定する（ステップＳ４３）。プロセッサ１１は、ユーザＩＤ「ＵＳＥＲ−Ａ２」については第２タイムアウト時間である５分を経過したかどうかを判定する。プロセッサ１１は、ユーザＩＤ「ＵＳＥＲ−Ｂ１」については第３タイムアウト時間である１０分を経過したかどうかを判定する。
【００７０】
ステップＳ４３で、無操作時間がいずれかの短縮したタイムアウト時間を経過したと判定した場合（ステップＳ４３；ＹＥＳ）、プロセッサ１１は、テーブル１２１の対象の発生フラグをオンする（ステップＳ４４）。プロセッサ１１は、ユーザＩＤ「ＵＳＥＲ−Ａ２」に対応付けられた発生フラグを、第２タイムアウト時間である５分を経過したときにオンする。また、プロセッサ１１は、ユーザＩＤ「ＵＳＥＲ−Ｂ１」に対応付けられた発生フラグを、第３タイムアウト時間である１０分を経過したときにオンする。
【００７１】
（クライアント３０の認証に係る処理）
アクセス制御装置１０が行うクライアント３０の認証に係る処理は、上述した実施形態と同じであるから説明を省略する。
【００７２】
（アクセス制御）
図１４は、アクセス制御装置１０がクライアント３０を認証した後に行うアクセス制御を示すフローチャートである。以下の処理は、ユーザＩＤごとに行われる。アクセス制御装置１０においてプロセッサ１１は、クライアント３０からのアクセスを受け付ける（ステップＳ５１）。次に、プロセッサ１１は、短縮フラグに基づいて、短縮したタイムアウト時間を適用するかどうかを判定する（ステップＳ５２）。プロセッサ１１は、クライアント３０がログインに用いたユーザＩＤ、アクセス先のシステム、およびテーブル１２１に基づいて、この判定を行う。例えば、プロセッサ１１は、ユーザＩＤ「ＵＳＥＲ−Ａ２」を用いた第１システム２０Ａ宛てのアクセス（第１アクセス）を受け付けた場合、またはユーザＩＤ「ＵＳＥＲ−Ｂ１」を用いた第２システム２０Ｂ宛てのアクセス（第１アクセス）を受け付けた場合、ステップＳ５２で「ＹＥＳ」と判定する。
【００７３】
ステップＳ５２で「ＹＥＳ」と判定した場合、プロセッサ１１は、テーブル１２１に基づいて、対象の発生フラグがオンかどうかを判定する（ステップＳ５３）。ステップＳ５３で「ＮＯ」と判定した場合、プロセッサ１１は、クライアント３０に対し、アクセス先のシステムへのログインを許可する（ステップＳ５４）。そして、プロセッサ１１は、テーブル１２１における最終アクセス日時を更新する（ステップＳ５５）。例えば、アクセス日時「２０１８／０３／０１  １０：０３：００」に、ユーザＩＤ「ＵＳＥＲ−Ａ２」を用いたアクセスを受け付けた場合、プロセッサ１１は、ログインを許可するとともに、テーブル１２１を図１５に示す状態に更新する。アクセス日時「２０１８／０３／０１  １０：０３：００」に、ユーザＩＤ「ＵＳＥＲ−Ｂ１」を用いたアクセスを受け付けた場合、プロセッサ１１は、ログインを許可するとともに、テーブル１２１を図１６に示す状態に更新する。そして、プロセッサ１１は、図１４の処理を終了する。
【００７４】
一方、ステップＳ５３で「ＹＥＳ」と判定した場合、プロセッサ１１はタイムウトを発生させる（ステップＳ５６）。次に、プロセッサ１１は、テーブル１２１における最終アクセス日時を更新する（ステップＳ５７）。ステップＳ５６，Ｓ５７の処理は、ステップＳ２６，Ｓ２７の処理と同じでよい。そして、プロセッサ１１は図１４の処理を終了する。
【００７５】
一方、ステップＳ５２で、プロセッサ１１が短縮したタイムアウト時間を適用しないと判定した場合（ステップＳ５２；ＮＯ）、ステップＳ２８に処理を進める。例えば、プロセッサ１１は、ユーザＩＤ「ＵＳＥＲ−Ａ１」を用いた第１システム２０Ａ宛てのアクセスを受け付けた場合、ステップＳ５２で「ＮＯ」と判定し、ステップＳ２８の処理に進める。ステップＳ２８の処理に進んだ後は、上述した第１実施形態と同様、ステップＳ２８〜Ｓ３１の処理が実行される。
【００７６】
以上のとおり、タイムアウト時間が３種類の場合でも、アクセス制御装置１０は、各システムに設定されたタイムアウト時間に基づいて、タイムアウトの発生を制御することができる。本実施形態では、タイムアウト時間を３種類としたが、タイムアウト時間が４種類以上の場合も、アクセス制御装置１０はタイムアウトの発生を制御することができる。
【００７７】
［第３実施形態］
図１７は、本発明の第３実施形態に係る通信システム２の全体構成を示すブロック図である。通信システム２は、アクセス制御装置４０と、認証装置５０と、第１システム２０Ａと、第２システム２０Ｂと、複数のクライアント３０と、を含む。アクセス制御装置４０は、認証装置５０と通信回線を介して通信する。アクセス制御装置４０は、複数のクライアント３０の各々と通信回線を介して通信する。
【００７８】
アクセス制御装置４０は、認証装置５０により認証されたクライアント３−の第１システム２０Ａおよび第２システム２０Ｂへのアクセスを制御する。認証装置５０は、クライアント３０の正当性を確認するための認証処理を行う。アクセス制御装置４０は、例えば、１台のサーバ装置、または複数台のサーバの協働により実現される。
【００７９】
図１８は、アクセス制御装置４０の物理的な構成を示すブロック図である。アクセス制御装置４０は、プロセッサ４１と、メモリ４２と、第１通信部４３と、第２通信部４４とを備える。アクセス制御装置４０の各部の構成は、アクセス制御装置１０の同名の要素と同じ構成であってよい。プロセッサ４１は、アクセス制御部として機能する。メモリ４２は、テーブル４２１と、プログラム４２２と、を記憶する。テーブル４２１は、クライアント３０のアクセスを制御するためのデータが格納される。プログラム４２２は、プロセッサ４１に所定の機能を実行させるためのプログラムである。
【００８０】
図１９は、テーブル４２１の構成を示す図である。図１９に示すように、テーブル４２１は、アクセス制御装置４０、第１システム２０Ａ、および第２システム２０Ｂの各々について、ユーザＩＤ、タイムアウト時間、および最終アクセス日時を対応付けて格納する。「ユーザＩＤ」は、クライアント３０のユーザを識別する識別子である。「タイムアウト時間」は、所定の時点からタイムアウトが発生するまでの時間である。アクセス制御装置４０は、第１タイムアウト時間である「１５分」が適用される。第１システム２０Ａは、ユーザＩＤ「ＵＳＥＲ−Ａ１」に対応して第１タイムアウト時間である「１５分」が、ユーザＩＤ「ＵＳＥＲ−Ａ２」に対応して第２タイムアウト時間である「５分」が適用される。第２システム２０Ｂは、ユーザＩＤ「ＵＳＥＲ−Ｂ１」に対応して「１５分」が適用される。「最終アクセス日時」は、アクセス制御装置４０、第１システム２０Ａ、および第２システム２０Ｂの各々に最終的にアクセスした最終アクセス時を示す。
【００８１】
図２０は、アクセス制御装置４０が行う処理を示すフローチャートである。
【００８２】
アクセス制御装置４０においてプロセッサ４１は、認証装置５０のタイムアウト時間である第１タイムアウト時間（１５分）をテーブル４２１から取得する（ステップＳ６１）。次に、プロセッサ４１は、認証装置５０の最終アクセス日時をテーブル４２１から取得する（ステップＳ６２）。なお、プロセッサ４１は、認証装置５０からタイムアウト時間および最終アクセス日時の一方又は両方を取得してもよい。
【００８３】
次に、プロセッサ４１は、該最終アクセス日時からの経過時間を算出する（ステップＳ６３）。次に、プロセッサ４１は、経過時間が第１タイムアウト時間未満かどうかを判定する（ステップＳ６４）。プロセッサ４１は、経過時間がタイムアウト時間未満であると判定した場合は（ステップＳ６４；ＹＥＳ）、ステップＳ６５に処理を進める。一方、プロセッサ４１は、経過時間が第１タイムアウト時間の経過後であると判定した場合は（ステップＳ６４；ＮＯ）、タイムアウトを発生させる（ステップＳ７４）。
【００８４】
ステップＳ６５において、プロセッサ４１は、テーブル４２１から、クライアント３０のアクセス先のシステムのタイムアウト時間を取得する。次に、プロセッサ４１は、アクセス先のシステムの最終アクセス日時をテーブル４２１から取得する（ステップＳ６６）。次に、プロセッサ４１は、テーブル４２１から該最終アクセス日時を取得したかどうかを判定する（ステップＳ６７）。ステップＳ６７で「ＹＥＳ」と判定した場合、プロセッサ４１は、該最終アクセス日時からの経過時間を算出する（ステップＳ６８）。次に、プロセッサ４１は、経過時間が該アクセス先のシステムのタイムアウト時間未満かどうかを判定する（ステップＳ６９）。例えば、プロセッサ４１は、ユーザＩＤ「ＵＳＥＲ−Ａ２」を用いた第１システム２０Ａ宛てのアクセスを受け付けた場合は、第２タイムアウト時間である５分未満かどうかを判定する。プロセッサ４１は、ユーザＩＤ「ＵＳＥＲ−Ａ１」を用いた第１システム２０Ａ宛てのアクセスを受け付けた場合、または「ＵＳＥＲ−Ｂ１」を用いた第２システム２０Ｂ宛てのアクセスを受け付けた場合は、第１タイムアウト時間である１５分未満かどうかを判定する。
【００８５】
プロセッサ４１は、経過時間がタイムアウト時間未満であると判定した場合は（ステップＳ６９；ＹＥＳ）、ステップＳ７０に処理を進める。一方、プロセッサ４１は、経過時間がタイムアウト時間を経過したと判定した場合は、タイムアウトを発生させて（ステップＳ７５）、ステップＳ７３に処理を進める。
【００８６】
ステップＳ６７で「ＮＯ」と判定した場合、プロセッサ４１は、アクセス先のシステムへ最終アクセス日時を要求する（ステップＳ７０）。プロセッサ４１は、アクセス先のシステムから最終アクセス日時を取得したかどうかを判定する（ステップＳ７１）。ステップＳ７１で「ＹＥＳ」と判定した場合、プロセッサ４１は、取得した該最終アクセス日時により、テーブル４２１を更新する（ステップＳ７２）。
【００８７】
ステップＳ７１で「ＮＯ」と判定した場合、ステップＳ７２の処理を実行した場合、またはステップＳ７５の処理を実行した場合、プロセッサ４１は、テーブル４２１における認証装置５０の最終アクセス日時を更新する（ステップＳ７３）。
【００８８】
図２１および図２２は、通信システム２で実行される処理の一例（処理例１）を示すシーケンスチャートである。
【００８９】
認証装置５０は、アクセス日時「２０１８／０３／０１  １０：００：００」に、クライアント３０からアクセスを受け付けると（ステップＳ１０１）、認証処理を行う（ステップＳ１０２）。クライアント３０を認証すると、認証装置５０は、ログインが完了した旨をアクセス制御装置４０に通知する（ステップＳ１０３）。
【００９０】
アクセス制御装置４０においてプロセッサ４１は、この完了通知を受け付けると、テーブル４２１における認証装置５０の最終アクセス日時を更新する（ステップＳ１０４）。ここでは、認証装置５０の最終アクセス日時は、「２０１８／０３／０１  １０：００：００」である。そして、プロセッサ４１は、トップ画面をクライアント３０へ送信する（ステップＳ１０５）。
【００９１】
その後、プロセッサ４１が、アクセス日時「２０１８／０３／０１  １０：１０：００」に、クライアント３０から、ユーザＩＤ「ＵＳＥＲ−Ａ１」を用いた第１システム２０Ａ宛てのアクセスを受け付けると（ステップＳ１０６）、タイムアウトチェックを行う（ステップＳ１０７）。ここでは、最終アクセス日時からの経過時間は、認証装置５０に適用される第１タイムアウト時間（１５分）よりも短い１０分である。この場合、プロセッサ４１は、テーブル４２１における認証装置５０の最終アクセス日時を、「２０１８／０３／０１  １０：１０：００」に更新する（ステップＳ１０８）。一方、該最終アクセス日時からの経過時間は、第１システム２０Ａに適用される第２タイムアウト時間（５分）よりも長い１０分である。よって、プロセッサ４１は、第１システム２０Ａについてはタイムアウトを発生させて、エラー画面をクライアント３０へ送信する（ステップＳ１０９）。
【００９２】
次に、プロセッサ４１が、アクセス日時「２０１８／０３／０１  １０：２０：００」に、クライアント３０からユーザＩＤ「ＵＳＥＲ−Ｂ１」を用いた第２システム２０Ｂ宛てのアクセスを受け付けると（ステップＳ１１０）、タイムアウトチェックを行う（ステップＳ１１１）。ここでは、最終アクセス日時からの経過時間は、第１タイムアウト時間（１５分）よりも短い１０分である。よって、プロセッサ４１は、第２システム２０Ｂへログインを要求する（ステップＳ１１２）。
【００９３】
第２システム２０Ｂは、この要求に基づいてログイン処理を行い、ログインを許可する（ステップＳ１１３）。第２システム２０Ｂはトップ画面をアクセス制御装置４０へ送信する（ステップＳ１１４）。アクセス制御装置４０においてプロセッサ４１は、テーブル４２１における認証装置５０および第２システム２０Ｂの最終アクセス日時を「２０１８／０３／０１  １０：２０：００」に更新し（ステップＳ１１５）、トップ画面をクライアント３０へ送信する（ステップＳ１１６）。
【００９４】
以上のとおり、アクセス制御装置４０のタイムアウト時間と、第２システム２０Ｂとは同じであり、第２システム２０Ｂのタイムアウト時間は、アクセス制御装置４０のタイムアウト時間によって実質的に短縮されてしまうことはない。よって、上記（課題１）は生じない。また、アクセス制御装置４０の最終アクセス日時からタイムアウト時間「５分」が経過した後は、アクセス制御装置４０は第１システム２０Ａにログインを要求しない。よって、上記（課題２）は生じない。
【００９５】
図２３および図２４は、通信システム２で実行される処理の一例（処理例２）を示すシーケンスチャートである。
【００９６】
ステップＳ１０１〜Ｓ１０５の処理は、処理例１の場合の処理と同じである。その後、アクセス制御装置４０においてプロセッサ４１が、アクセス日時「２０１８／０３／０１  １０：０４：００」に、クライアント３０からユーザＩＤ「ＵＳＥＲ−Ａ１」を用いた第１システム２０Ａ宛てのアクセスを受け付けると（ステップＳ２０１）、タイムアウトチェックを行う（ステップＳ２０２）。ここでは、最終アクセス日時からの経過時間は、第１システム２０Ａに適用される第２タイムアウト時間（５分）よりも短い４分である。よって、プロセッサ４１は、第１システム２０Ａへログインを要求する（ステップＳ２０３）。第１システム２０Ａは、この要求に基づいてログイン処理を行い、ログインを許可する（ステップＳ２０４）。そして、第２システム２０Ｂは、トップ画面をアクセス制御装置４０へ送信する（ステップＳ２０５）。
【００９７】
プロセッサ４１は、テーブル４２１における認証装置５０および第１システム２０Ａの最終アクセス日時を「２０１８／０３／０１  １０：０４：００」に更新する（ステップＳ２０６）。そして、プロセッサ４１は、トップ画面をクライアント３０へ送信する（ステップＳ２０７）。
【００９８】
次に、アクセス制御装置４０においてプロセッサ４１が、アクセス日時「２０１８／０３／０１  １０：１０：００」に、クライアント３０から、ユーザＩＤ「ＵＳＥＲ−Ａ２」を用いた第１システム２０Ａ宛てのアクセスを受け付けると（ステップＳ２０８）、タイムアウトチェックを行う（ステップＳ２０９）。ここでは、最終アクセス日時からの経過時間は、第１タイムアウト時間（１５分）よりも短い６分である。よって、プロセッサ４１は、テーブル４２１における認証装置５０の最終アクセス日時を、「２０１８／０３／０１  １０：１０：００」に更新する（ステップＳ２１０）。一方、最終アクセス日時からの経過時間は、第１システム２０Ａに適用される第２タイムアウト時間（５分）よりも長い。よって、プロセッサ４１は、タイムウトを発生させて、エラー画面をクライアント３０へ送信する（ステップＳ２１１）。
【００９９】
次に、プロセッサ４１が、アクセス日時「２０１８／０３／０１  １０：２０：００」に、クライアント３０から、ユーザＩＤ「ＵＳＥＲ−Ａ２」を用いた第１システム２０Ａ宛てのアクセスを受け付けると（ステップＳ２１２）、タイムアウトチェックを行う（ステップＳ２１３）。ここでは、最終アクセス日時からの経過時間は、第１タイムアウト時間（１５分）よりも短い１０分である。よって、プロセッサ４１は、テーブル４２１における認証装置５０の最終アクセス日時を「２０１８／０３／０１  １０：２０：００」に更新する（ステップＳ２１４）。一方、最終アクセス日時からの経過時間は、第１システム２０Ａに適用される第２タイムアウト時間（５分）よりも長い１０分である。よって、プロセッサ４１は、タイムウトを発生させて、エラー画面をクライアント３０へ送信する（ステップＳ２１５）。
【０１００】
以上のとおり、アクセス制御装置４０の最終アクセス日時から、第１タイムアウト時間である５分が経過した後は、アクセス制御装置４０は第１システム２０Ａにログインを要求しない。よって、第１システム２０Ａが最初のアクセスと誤認してログインを許可してしまうことがない。よって、（課題３）の問題は生じない。以上の理由により、アクセス制御装置４０によれば、タイムアウト時間の設定に起因したセキュリティ上の問題の発生を抑えることができる。なお、本実施形態でも、上述した第２実施形態と同様、タイムアウト時間が３種類以上であってもよい。
【０１０１】
［変形例］
本発明は上記の実施形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
【０１０２】
上述した実施形態で説明した構成の一部が省略または変更されてもよい。例えば、上述した実施形態のアクセス制御装置は、タイマーが計る日時と、テーブルに格納された最終アクセス日時との差に基づいて、タイムアウト時間の経過の有無を判定していた。これに代えて、アクセス制御装置１０は、タイマーを用いて無操作時間を計ってもよい。この場合、アクセス制御装置１０は、クライアント３０に対する操作が行われると、該タイマーをリセットする。これにより、タイマーの値が無操作時間を示すようになる。また、アクセス制御装置１０，４０は、タイマーを用いて最終アクセス日時からの経過時間を計ってもよい。この場合、アクセス制御装置１０，４０は、所定のアクセス先にアクセスがあると、そのアクセス先に対応するタイマーをリセットする。これにより、タイマーの値が最終アクセス日時からの経過時間を示すようになる。
【０１０３】
上述した実施形態で説明したアクセス制御装置１０，４０で実行される処理の順番は、矛盾が生じない限りにおいて、変更されてもよい。また、メモリ１２に記憶されていたデータ（例えば、テーブル１２１，４２１）の一部または全部が外部の記憶装置に記憶されてもよい。
【０１０４】
アクセス制御装置１０のプロセッサ１１、およびアクセス制御装置４０のプロセッサ４１が実現する機能は、複数のプログラムの組み合わせによって実現され、又は複数のハードウェア資源の連係によって実現され得る。プロセッサ１１または４１の機能がプログラムを用いて実現される場合、この機能を実現するためのプログラム１２３またはプログラム４２２が、各種の磁気記録媒体、光記録媒体、光磁気記録媒体、半導体メモリ等のコンピュータ読み取り可能な記録媒体に記憶した状態で提供されてもよい。また、このプログラムは、ネットワークを介して配信されてもよい。また、本発明は、アクセス制御方法としても把握することができる。
【符号の説明】
【０１０５】
１，２：通信システム、１０，４０：アクセス制御装置、１１，４１：プロセッサ、１２，４２：メモリ、１３，４３：第１通信部、１４，４４：第２通信部、２０Ａ：第１システム、２０Ｂ：第２システム、３０：クライアント、５０：認証装置、１２１：テーブル、１２２：認証情報、１２３：プログラム、４２１：テーブル、４２２：プログラム
【図１】
2019195119.tif 000003
【図２】
2019195119.tif 000004
【図３】
2019195119.tif 000005
【図４】
2019195119.tif 000006
【図５】
2019195119.tif 000007
【図６】
2019195119.tif 000008
【図７】
2019195119.tif 000009
【図８】
2019195119.tif 000010
【図９】
2019195119.tif 000011
【図１０】
2019195119.tif 000012
【図１１】
2019195119.tif 000013
【図１２】
2019195119.tif 000014
【図１３】
2019195119.tif 000015
【図１４】
2019195119.tif 000016
【図１５】
2019195119.tif 000017
【図１６】
2019195119.tif 000018
【図１７】
2019195119.tif 000019
【図１８】
2019195119.tif 000020
【図１９】
2019195119.tif 000021
【図２０】
2019195119.tif 000022
【図２１】
2019195119.tif 000023
【図２２】
2019195119.tif 000024
【図２３】
2019195119.tif 000025
【図２４】
2019195119.tif 000026
【図２５】
2019195119.tif 000027
【図２６】
2019195119.tif 000028
【図２７】
2019195119.tif 000029
【図２８】
2019195119.tif 000030
【図２９】
2019195119.tif 000031