(57)【要約】【課題】  外部認証装置を利用しなくても、シンクライアント端末とサーバとの間のリモート通信を可能すること。【解決手段】  シンクライアント端末と、シンクライアント端末と情報の授受を行うサーバと、を有し、シンクライアント端末は、外部認証装置が接続されていない場合のリモートアクセス時に、サーバで生成されたユーザ情報と共通鍵を保持していることを条件に、ユーザ情報を更新してサーバに送信し、サーバとのリモート接続が確立された後、サーバとリモート通信を実行し、サーバは、シンクライアント端末から、ユーザ情報を受信した場合、受信したユーザ情報と、サーバで生成したユーザ情報とを基にユーザ情報認証処理を実行し、ユーザ情報認証処理に成功したことを条件に、シンクライアント端末とのリモート接続を確立して、サーバとリモート通信を実行する。【選択図】図１
2013239045.tif 000002
【特許請求の範囲】
【請求項１】
デジタル証明書を含む外部認証装置が着脱自在に接続されるシンクライアント端末と、前記シンクライアント端末とネットワークを介して情報の授受を行うサーバと、を有し、
前記シンクライアント端末は、
第１の記憶装置と、前記第１の記憶装置又は前記外部認証装置に格納された情報を処理する第１のコントローラとから構成され、
前記サーバは、
前記シンクライアント端末のデータを格納する第２の記憶装置と、前記第２の記憶装置に格納されたデータ又は前記シンクライアント端末からの情報を処理する第２のコントローラとから構成され、
前記第１のコントローラは、
前記外部認証装置が接続されていない場合のリモートアクセス時に、前記第１の記憶装置に、前記サーバで生成されたユーザ情報と共通鍵が存在することを条件に、前記第１の記憶装置に格納されているユーザ情報を更新し、前記更新されたユーザ情報を、前記第１の記憶装置に格納された共通鍵で暗号化し、前記暗号化されたユーザ情報を前記サーバに送信し、前記サーバとのリモート接続が確立された後、前記サーバとの間のリモート通信を実行し、
前記第２のコントローラは、
前記シンクライアント端末から、前記暗号化されたユーザ情報を受信した場合、前記受信したユーザ情報を、当該サーバで生成した共通鍵で復号化し、前記復号化されたユーザ情報と、当該サーバで生成したユーザ情報とを基にユーザ情報認証処理を実行し、前記ユーザ情報認証処理に成功したことを条件に、前記シンクライアント端末とのリモート接続を確立し、その後に前記サーバとの間のリモート通信を実行することを特徴とするシンクライアントシステム。
【請求項２】
請求項１に記載のシンクライアントシステムであって、
前記第１のコントローラは、
前記外部認証装置が接続されている場合のリモートアクセス時に、前記外部認証装置に格納されたデジタル証明書を前記サーバに送信し、その後、前記サーバから、前記サーバで生成されたユーザ情報と共通鍵を受信した場合、前記受信したユーザ情報と共通鍵を、前記デジタル証明書に付加された公開鍵で復号化し、前記復号化されたユーザ情報と共通鍵を前記第１の記憶装置に格納し、
前記第２のコントローラは、
前記シンクライアント端末から、前記デジタル証明書を受信した場合、前記受信したデジタル証明書を基にデジタル証明書認証処理を実行し、前記デジタル証明書認証処理に成功したことを条件に、前記シンクライアント端末を特定するユーザ情報と共通鍵を生成し、前記生成したユーザ情報と共通鍵を、前記デジタル証明書に付加された公開鍵で暗号化し、前記暗号化されたユーザ情報と共通鍵を前記シンクライアント端末に送信することを特徴とするシンクライアントシステム。
【請求項３】
請求項１又は２に記載のシンクライアントシステムであって、
前記ユーザ情報は、
乱数から得られたランダムな値を示すランダム値と、前記ユーザ情報の生成日時を示す生成日時と、リモートアクセス回数を示すカウント値を含むことを特徴とするシンクライアントシステム。
【請求項４】
請求項３に記載のシンクライアントシステムであって、
前記第２のコントローラは、
前記シンクライアント端末から受信したユーザ情報と、当該サーバで生成したユーザ情報とを比較し、少なくとも、前記両者のユーザ情報のうち前記ランダム値と前記生成日時がそれぞれ同一であることを条件に、前記ユーザ情報認証処理に成功したと判定することを特徴とするシンクライアントシステム。
【請求項５】
請求項１に記載のシンクライアントシステムであって、
前記第２のコントローラは、
前記ユーザ情報を生成する際に、当該ユーザ情報を生成した生成日時を示す生成日時を前記ユーザ情報に付加し、前記生成日時を含むユーザ情報を前記シンクライアント端末に送信し、前記シンクライアント端末から、前記生成日時を含むユーザ情報を受信した場合、前記受信したユーザ情報に含まれる生成日時と、当該サーバで前記ユーザ情報を生成した生成日時からの経過時間で規定された期限とを比較し、前記受信したユーザ情報に含まれる生成日時が、前記期限内であることを条件に、前記ユーザ情報認証処理に成功したと判定することを特徴とするシンクライアントシステム。
【請求項６】
請求項１に記載のシンクライアントシステムであって、
前記第２のコントローラは、
前記シンクライアント端末から前記ユーザ情報を受信した日時と、当該サーバで前記ユーザ情報を生成した生成日時からの経過時間で規定された期限とを比較し、前記受信した日時が、前記期限内であることを条件に、前記ユーザ情報認証処理に成功したと判定することを特徴とするシンクライアントシステム。
【請求項７】
請求項１に記載のシンクライアントシステムであって、
前記第１のコントローラは、
前記ユーザ情報が、リモートアクセス回数を示すカウント値を含む場合、前記ユーザ情報のうち前記カウント値を前記サーバにリモートアクセスする毎に更新し、
前記第２のコントローラは、
前記シンクライアント端末から、前記更新されたカウント値を含むユーザ情報を受信した場合、前記受信したユーザ情報を、当該サーバで生成した共通鍵で復号化し、前記復号化されたユーザ情報のうち前記更新されたカウント値と、当該サーバで生成したユーザ情報のうちカウント値から得られた判定値であって、前記ユーザ情報を受信する毎に更新する判定値とを比較し、少なくとも、前記更新されたカウント値が、前記判定値に一致することを条件に、前記ユーザ情報認証処理に成功したと判定することを特徴とするシンクライアントシステム。
【請求項８】
デジタル証明書を含む外部認証装置が着脱自在に接続されるシンクライアント端末と、前記シンクライアント端末とネットワークを介して情報の授受を行うサーバと、を有し、
前記シンクライアント端末は、
第１の記憶装置と、前記第１の記憶装置又は前記外部認証装置に格納された情報を処理する第１のコントローラとから構成され、
前記サーバは、
前記シンクライアント端末のデータを格納する第２の記憶装置と、前記第２の記憶装置に格納されたデータ又は前記シンクライアント端末からの情報を処理する第２のコントローラとから構成されるシンクライアントシステムにおけるリモートアクセス方法であって、
前記第１のコントローラは、
前記外部認証装置が接続されていない場合のリモートアクセス時に、前記第１の記憶装置に、前記サーバで生成されたユーザ情報と共通鍵が存在することを条件に、前記第１の記憶装置に格納されているユーザ情報を更新するステップと、
前記更新されたユーザ情報を、前記第１の記憶装置に格納された共通鍵で暗号化するステップと、
前記暗号化されたユーザ情報を前記サーバに送信するステップと、
前記サーバとのリモート接続が確立された後、前記サーバとの間のリモート通信を行うステップと、を実行し、
前記第２のコントローラは、
前記シンクライアント端末から、前記暗号化されたユーザ情報を受信した場合、前記受信したユーザ情報を、当該サーバで生成した共通鍵で復号化するステップと、
前記復号化されたユーザ情報と、当該サーバで生成したユーザ情報とを基にユーザ情報認証処理を行うステップと、
前記ユーザ情報認証処理に成功したことを条件に、前記シンクライアント端末とのリモート接続を確立し、その後に前記サーバとの間のリモート通信を行うステップと、を実行することを特徴とするリモートアクセス方法。
【請求項９】
請求項８に記載のリモートアクセス方法であって、
前記第１のコントローラは、
前記外部認証装置が接続されている場合のリモートアクセス時に、前記外部認証装置に格納されたデジタル証明書を前記サーバに送信するステップと、
前記サーバに前記デジタル証明書を送信した後、前記サーバから、前記サーバで生成されたユーザ情報と共通鍵を受信した場合、前記受信したユーザ情報と共通鍵を、前記デジタル証明書に付加された公開鍵で復号化するステップと、
前記復号化されたユーザ情報と共通鍵を前記第１の記憶装置に格納するステップと、を実行し、
前記第２のコントローラは、
前記シンクライアント端末から、前記デジタル証明書を受信した場合、前記受信したデジタル証明書を基にデジタル証明書認証処理を行うステップと、
前記デジタル証明書認証処理に成功したことを条件に、前記シンクライアント端末を特定するユーザ情報と共通鍵を生成するステップと、
前記生成したユーザ情報と共通鍵を、前記デジタル証明書に付加された公開鍵で暗号化するステップと、
前記暗号化されたユーザ情報と共通鍵を前記シンクライアント端末に送信するステップと、を実行することを特徴とするリモートアクセス方法。
【請求項１０】
請求項８又は９に記載のリモートアクセス方法であって、
前記ユーザ情報は、
乱数から得られたランダムな値を示すランダム値と、前記ユーザ情報の生成日時を示す生成日時と、リモートアクセス回数を示すカウント値を含むことを特徴とするリモートアクセス方法。
【請求項１１】
請求項１０に記載のリモートアクセス方法であって、
前記第２のコントローラは、
前記シンクライアント端末から受信したユーザ情報と、当該サーバで生成したユーザ情報とを比較し、少なくとも、前記両者のユーザ情報のうち前記ランダム値と前記生成日時がそれぞれ同一であることを条件に、前記ユーザ情報認証処理に成功したと判定するステップを実行することを特徴とするリモートアクセス方法。
【請求項１２】
請求項８に記載のリモートアクセス方法であって、
前記第２のコントローラは、
前記ユーザ情報を生成する際に、当該ユーザ情報を生成した生成日時を示す生成日時を前記ユーザ情報に付加するステップと、
前記生成日時を含むユーザ情報を前記シンクライアント端末に送信するステップと、
前記シンクライアント端末から、前記生成日時を含むユーザ情報を受信した場合、前記受信したユーザ情報に含まれる生成日時と、当該サーバで前記ユーザ情報を生成した生成日時からの経過時間で規定された期限とを比較し、前記受信したユーザ情報に含まれる生成日時が、前記期限内であることを条件に、前記ユーザ情報認証処理に成功したと判定するステップと、を実行することを特徴とするリモートアクセス方法。
【請求項１３】
請求項８に記載のリモートアクセス方法であって、
前記第２のコントローラは、
前記シンクライアント端末から前記ユーザ情報を受信した日時と、当該サーバで前記ユーザ情報を生成した生成日時からの経過時間で規定された期限とを比較し、前記受信した日時が、前記期限内であることを条件に、前記ユーザ情報認証処理に成功したと判定するステップを実行することを特徴とするリモートアクセス方法。
【請求項１４】
請求項８に記載のリモートアクセス方法であって、
前記第１のコントローラは、
前記ユーザ情報が、リモートアクセス回数を示すカウント値を含む場合、前記ユーザ情報のうち前記カウント値を前記サーバにリモートアクセスする毎に更新するステップを実行し、
前記第２のコントローラは、
前記シンクライアント端末から、前記更新されたカウント値を含むユーザ情報を受信した場合、前記受信したユーザ情報を、当該サーバで生成した共通鍵で復号化するステップと、
前記復号化されたユーザ情報のうち前記更新されたカウント値と、当該サーバで生成したユーザ情報のうちカウント値から得られた判定値であって、前記ユーザ情報を受信する毎に更新する判定値とを比較し、少なくとも、前記更新されたカウント値が、前記判定値に一致することを条件に、前記ユーザ情報認証処理に成功したと判定するステップを実行することを特徴とするリモートアクセス方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、シンクライアント端末とサーバとがネットワーク経由でデータ通信を行うシンクライアントシステム及びリモートアクセス方法に関する。
【背景技術】
【０００２】
サーバとシンクライアント端末とネットワークを介して接続するシステムとして、シンクライアントシステムが知られている。シンクライアントシステムでは、サーバに、データ処理を実行するアプリケーションプラグラムや処理対象のデータを配置し、一方、シンクライアント端末には、データ処理用のソフトウェアやデータを配置せずに、必要最小限の情報のみを配置する構成が採用されている。この場合、シンクライアント端末には、データが保存されないので、セキュリティの向上を図ることができる。
【０００３】
シンクライアントシステムでは、シンクライアント端末が、ネットワーク経由でサーバに接続される度に、サーバが、必要な処理を行い、出力画面の情報をシンクライアント端末に送信する。シンクライアント端末では、サーバにアクセスする際には、セキュリティを上げるために、デジタル証明書を使用する。アクセスに使用するデジタル証明書の格納場所としては、HDD（ハードディスク）やCF（コンパクトフラッシュ（登録商標））などの内蔵記憶装置や、IC（Integrated  Circuit）カードなどの外部認証装置などが用いられる。
【０００４】
内蔵記憶装置にデジタル証明書を格納するタイプの場合、外部認証装置は不要であるが、シンクライアント端末が、サーバにアクセスするときのリモートアクセス時には、パスワード認証のみとなるので、外部認証装置を用いるタイプのものよりもセキュリティ性能が低下する。
【０００５】
一方、外部認証装置にデジタル証明書を格納するタイプの場合には、シンクライアント端末が、サーバにリモートアクセスする際には、シンクライアント端末に外部認証装置を接続しなければならないため、デジタル証明書を内蔵記憶装置に格納するタイプのものよりも、セキュリティ性能が高くなる。
【０００６】
また、デジタル証明書を利用しないでID（Identification）認証を利用する方法として、特許文献１がある。特許文献１には、ユーザが、被リモートコンピュータにパスワードとユーザデータを入力すると、ユーザ認証に利用する暗号鍵とUSB（Universal  Serial  Bus）メモリのID番号が、被リモートコンピュータによって生成され、暗号鍵とID番号が、被リモートコンピュータに接続されたUSBメモリに記憶され、パスワードとユーザデータが、被リモートコンピュータから認証サーバに送信されることが開示されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１０−８６１７５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
従来技術には、シンクライアント端末に外部認証装置が接続されない場合でも、シンクライアント端末からサーバにリモートアクセスすることができることは開示されていない。このため、シンクライアント端末に外部認証装置を接続してデジタル証明書を使用するタイプの場合には、外部認証装置をシンクライアント端末から離れた所に置き忘れた場合、シンクライアント端末からサーバにリモートアクセスすることが不可能となり、サーバに保存されているデータを利用する業務を行うことができなくなる。
【０００９】
本発明は、前記従来技術の課題に鑑みて為されたものであり、その目的は、デジタル証明書が内蔵された外部認証装置を利用しなくても、シンクライアント端末とサーバとの間のリモート通信を実行することができるシンクライアントシステム及びリモートアクセス方法を提供することにある。
【課題を解決するための手段】
【００１０】
前記課題を解決するために、本発明は、シンクライアント端末とサーバとの間で情報の授受を行う際に、前記シンクライアント端末は、デジタル証明書が内蔵された外部認証装置が接続されていない場合のリモートアクセス時に、前記サーバで生成されたユーザ情報と共通鍵を保持していることを条件に、前記保持しているユーザ情報を更新して前記サーバに送信し、前記サーバとのリモート接続が確立された後、前記サーバとの間のリモート通信を実行し、前記サーバは、前記シンクライアント端末から、前記更新されたユーザ情報を受信した場合、前記受信したユーザ情報と、前記サーバで生成したユーザ情報を基にユーザ情報認証処理を実行し、前記ユーザ情報認証処理に成功したことを条件に、前記シンクライアント端末とのリモート接続を確立して、前記シンクライアント端末との間のリモート通信を実行することを特徴とする。
【発明の効果】
【００１１】
本発明によれば、デジタル証明書が内蔵された外部認証装置を利用しなくても、シンクライアント端末とサーバとの間のリモート通信を実行することができる。
【図面の簡単な説明】
【００１２】
【図１】本発明に係るシンクライアントシステムの一実施例を示す全体構成図である。
【図２】シンクライアントのハードウェアの構成図である。
【図３】外部認証装置を利用してシンクライアントからサーバへリモートアクセスを実行するときの処理を説明するためのブロック図である。
【図４】シンクライアントがIDを利用してサーバへリモートアクセスするときの処理を説明するためのブロック図である。
【図５】IDの構成図である。
【図６】外部認証装置を利用してシンクライアントとサーバとの間でリモート通信が確立するまでの動作を説明するためのフローチャートである。
【図７】サーバが共通鍵とIDの生成および暗号化する処理を説明するためのフローチャートである。
【図８】シンクライアントがIDを利用してサーバとの間にリモート通信を確立するまでの動作を説明するためのフローチャートである。
【図９】シンクライアントがIDの更新および暗号化処理を行うときの動作を説明するためのフローチャートである。
【図１０】サーバがID認証処理を行う動作を説明するためのフローチャートである。
【発明を実施するための形態】
【００１３】
以下、本発明の一実施例を図面に基づいて説明する。
【００１４】
図１は、本発明の一実施例を示すシンクライアントシステムの全体構成図である。図１において、シンクライアントシステムは、シンクライアント端末（以下、シンクライアントと称することがある。）１０１と、外部認証装置２０１と、サーバ３０１と、VPN（Virtual  Private  Network）サーバ４０１とから構成され、シンクライアント１０１とVPNサーバ４０１が、社内LAN（Local  Area  Network）５０１を介してインターネット６０１に接続される。
【００１５】
シンクライアント１０１は、ハードウェア資源とソフトウェア資源を有するコンピュータ装置である。シンクライアント１０１には、ソフトウェア資源として、例えば、OS１０２と、サーバ３０１にリモートアクセスするときに必要な接続ソフト１０３と、インターネット６０１からのアクセスを処理するためのVPNソフト１０４が格納される。また、シンクライアント１０１には、サーバ３０１で生成された共通鍵１０５とID１０６が保存される。
【００１６】
外部認証装置２０１は、例えば、ICカードリード・ライタで構成される。この場合、外部認証装置２０１には、ICカード２０２が配置され、ICカード２０２には、クライアント端末１０１が、サーバ３０１またはVPNサーバ４０１に接続する際に利用するデジタル証明書２０３と秘密鍵２０５が内蔵される。なお、デジタルデータで構成されたデジタル証明書２０３には、デジタルデータで構成された公開鍵２０４が内蔵される。
【００１７】
サーバ３０１は、社内LAN５０１を介してシンクライアント１０１とVPNサーバ４０１に接続される。サーバ３０１は、ハードウェア資源とソフトウェア資源を有するコンピュータ装置で構成される。このサーバ３０１には、ハードウェア資源として、CPUやHDD等が配置され、ソフトウェア資源として、例えば、OS３０２と、接続ソフト３０３がHDDに格納される。この際、HDDには、データ処理を実行するためのアプリケーションプラグラムやシンクライアント１０１で利用するデータ等が格納される。また、サーバ３０１には、クライアント１０１からサーバ３０１にリモートアクセスされた際に生成される共通鍵３０４とID３０５が保存される。
【００１８】
VPNサーバ４０１には、ソフトウェア資源として、OS４０２と、VPNサーバ４０１がサーバ３０１にアクセスするときに用いるVPNソフト４０３が格納される。VPNサーバ４０１は、外部から、インターネット６０１を介してシンクライアント１０１にアクセスされた際に、シンクライアント１０１がアクセスを処理する代わりに、外部からのアクセスを処理するために用いられる。なお、シンクライアント１０１が、サーバ３０１にリモートアクセスする場合には、VPNサーバ４０１を介さずに、シンクライアント１０１からサーバ３０１にリモートアクセスすることが可能である。
【００１９】
図２は、シンクライアントのハードウェアの構成図である。図２において、シンクライアント１０１は、ハードウェア資源を構成するデバイスとして、CPU１１１と、入出力装置１１２と、出力装置１１３と、記憶装置１１４と、メモリ１１５と、LAN１１６と、通信装置１１１７から構成され、各デバイスが、バス１１８を介して互いに接続され、外部認証装置２０１が着脱自在に接続される。
【００２０】
CPU１１１は、記憶装置（第１の記憶装置）１１４に格納された情報やプログラムを基に、シンクライアント１０１内のデバイスに対する制御を行うとともに、データの入出力制御を行う。この際、CPU１１１は、記憶装置（第１の記憶装置）１１４に格納された情報や外部認証装置２０１に格納された情報を処理すると共に、接続ソフト１０３を起動して、リモートアクセス時の処理として、サーバ３０１との通信や情報の暗号化・復号化などを実行する第１のコントローラとして機能する。なお、サーバ３０１のCPUは、HDD（第２の記憶装置）に格納されたデータ又は情報を処理すると共に、接続ソフト３０３を起動して、リモートアクセス時の処理として、シンクライアント１０１との通信や情報の暗号化・復号化などを実行する第２のコントローラとして機能する。
【００２１】
入力装置１１２は、マウス、キーボードから構成され、マウスやキーボードの操作による情報を入力する。出力装置１１３は、入力装置１１２から入力された情報などを表示する。記憶装置１１４は、シンクライアント１０１内の各デバイスを動作させるためのOSやプログラム、ファイルなどを記憶する記憶デバイス、例えば、HDDやCFなどで構成される。メモリ１１５は、CPU１１１の演算処理で用いるデータなどを格納する。LAN１１６は、サーバ３０１とデータ通信する有線・無線LANで構成される。通信装置１１７は、通信カードで構成される。
【００２２】
図３は、シンクライアントからサーバへリモートアクセスするときの処理を説明するためのブロック図である。図３において、シンクライアント１０１に外部認証装置２０１が接続され、シンクライアント１０１が、ICカード２０２を利用してサーバ３０１へリモートアクセスする場合、接続ソフト１０３が、ICカード２０２に格納されているデジタル証明書２０３を取得し（S３０１）、公開鍵２０４を含むデジタル証明書２０３をサーバ３０１へ送信する（S３０２）。この後、サーバ３０１の接続ソフト３０３は、デジタル証明書２０３を受信し、受信したデジタル証明書２０３を基にデジタル証明書認証処理として、例えば、PKI（Public  Key  Infrastructure）認証処理を行う（S３０３）。PKI認証が成立すると、シンクライント１０１からサーバ３０１へのリモートアクセスが確立する。
【００２３】
次に、リモートアクセス確立後、サーバ３０１の接続ソフト３０３が、共通鍵３０４とID３０５を生成し、デジタル証明書２０３に付加された公開鍵２０４を用いて共通鍵３０４とID３０５を暗号化し、暗号化された共通鍵３０４とID３０５をシンクライアント１０１へ送信する（S３０４）。サーバ３０１の接続ソフト３０３から、共通鍵３０４とID３０５を受信したクライアント３０１の接続ソフト１０３は、ICカード２０２の秘密鍵２０５を用いて共通鍵３０４とID３０５を復号化し、復号化された共通鍵３０４とID３０５をそれぞれ共通鍵１０５とID１０６として、記憶装置１１４に保存する。
【００２４】
図４は、外部認証装置を用いずに、シンクライアントからサーバへリモートアクセスするときの処理を説明するためのブロック図である。図４において、シンクライアント１０１の接続ソフト１０３が、社内LAN５０１から、ID１０６を利用してサーバ３０１へリモートアクセスする場合、即ち、シンクライアント１０１に外部認証装置２０１が接続されていない場合、接続ソフト１０３は、記憶装置１１４に保存されているID１０６を共通鍵１０５で暗号化し、暗号化されたID１０６をサーバ３０１へ送信する（S４０１）。暗号化されたID１０６を受信したサーバ３０１では、接続ソフト３０３が、共通鍵３０４でID１０６を復号化し、復号化されたID１０６とID３０５とを比較し、ユーザ情報認証処理として、例えば、ID認証処理を行う。この場合、両者のIDが一致する場合には、リモートアクセスが確立する。
【００２５】
図５は、IDの構成図である。図５において、サーバ３０１で生成されるID３０５は、サーバ３０１の接続ソフト３０３が生成するユーザ情報であって、６バイトのランダムな値を示すランダム値５０１と、ID３０５を生成した日時を示す生成日時５０２と、リモートアクセス回数を管理するためのカウント値５０３から構成される。生成日時５０２は、５バイトの１０桁の数字で構成され、カウント値５０３は、２バイトの数字で構成される。この際、ランダム値５０１は、乱数で生成された値であって、例えば「１２３４５６７８９ABC」である。生成日時５０２は、例えば、ID３０５が、２０１１年１月２２日２時３４分に生成された場合、「１１０１２２０２３４」が用いられる。カウント値５０３としては、例えば、「００００００」が用いられる。この値は、例えば、ID３０５を作成してから、一度もリモートアクセスが行われていないことを示す値である。
【００２６】
このカウント値５０３は、初期値がサーバ３０１によって生成される。一方、ID３０５が、シンクライアント１０１に送信された場合には、ID３０５は、シンクライアント１０１では、ID１０６として管理される。この際、シンクライアント１０１では、シンクライアント１０１が、サーバ３０１にリモートアクセスする毎に、ID１０６のカウント値５０３を＋１とする更新処理が実行される。例えば、カウント値５０３として、「０００００」を受信した後、シンクライアント１０１が、サーバ３０１にリモートアクセスする際には、カウント値５０３は、「００００１」に更新される。
【００２７】
このため、サーバ３０１は、ランダム値５０１、生成日時５０２、カウント値５０３を含むユーザ情報（ID３０５）を生成する際には、生成したカウント値から得られる判定値を、シンクライアント１０１から、ユーザ情報（ID１０６）を受信する毎に更新する判定値で管理する。例えば、サーバ３０１は、カウント値５０３として、「０００００」を生成した場合、判定値を「０００００」とし、その後、シンクライアント１０１からのリモートアクセス時には、判定値を「００００１」に更新する。この際、シンクライアント１０１からリモートアクセスを受信する毎に、判定値は、＋１ずつ更新される。
【００２８】
図６は、シンクライアントが、外部認証装置２０１を用いてサーバとリモートアクセスし、リモート通信が確立するまでの動作を説明するためのフローチャートである。
【００２９】
まず、シンクライアント１０１の接続ソフト１０３が起動する（S６０１）。一方、サーバ３０１の接続ソフト３０３が起動する（S６２１）。そして、シンクライアント１０１の接続ソフト１０３は、ICカード２０２に内蔵されたデジタル証明書２０３の有無を確認し（S６０２）、デジタル証明書２０３が存在しない場合には、記憶装置（CF）１１４にID１０６と共通鍵１０５が存在するかを確認するための処理に移行する（S６０３）。
【００３０】
一方、接続ソフト１０３は、デジタル証明書２０３が存在すると判定した場合、ICカード２０２からデジタル証明書２０３を読み込み（S６０４）、公開鍵２０４を含むデジタル証明書２０３をサーバ３０１に送信する（S６０５）。
【００３１】
デジタル証明書２０３を接続ソフト３０３が受信した場合（S６２２）、接続ソフト３０３は、デジタル証明書２０３から公開鍵２０４を取得し（S６２３）、公開鍵２０４を用いてデジタル証明書２０３の処理として、PKI認証処理を実行する（S６２４）。この場合、サーバ３０１の接続ソフト３０３と、シンクライアント１０１の接続ソフト１０３との間でPKI認証処理が実行される（S６０６、S６２４）。
【００３２】
この後、シンクライアント１０１の接続ソフト１０３は、PKI認証に成功したか否かを判定し、PKI認証に成功した場合には、リモート接続を確立するための処理を実行し（S６０８）、PKI認証に失敗した場合には、接続エラーの処理を実行する（S６２７）。
【００３３】
また、サーバ３０１の接続ソフト３０３は、PKI認証に成功したか否かを判定し（S６２５）、PKI認証に成功した場合には、リモート接続を確立し（S６２６）、PKI認証に失敗した場合には、接続エラーの処理を実行する（S６２７）。
【００３４】
接続ソフト３０３は、リモート接続を確立した場合、共通鍵３０４とID３０５を生成し、生成した共通鍵３０４とID３０５を、デジタル証明書２０３に付加された公開鍵２０４で暗号化し（S６２８）、暗号化された共通鍵３０４とID３０５をシンクライアント１０１へ送信する（S６２９）。
【００３５】
一方、シンクライアント１０１の接続ソフト１０３が、サーバ３０１から共通鍵３０４とID３０５を受信すると（S６０９）、接続ソフト１０３は、暗号化された共通鍵３０４とID３０５を秘密鍵２０５で復号化し、復号化された共通鍵３０４を共通鍵１０５として、復号化されたID３０５をID１０６として、記憶装置（CF）１１４に書き込む（S６１０）。この後、接続ソフト１０３と接続ソフト３００との間でリモート通信が実行される（S６１１、S６３０）。この際、記憶装置１１４に保存された共通鍵１０５とID１０６は、外部認証装置２０１がない場合のリモートアクセス時に利用される。
【００３６】
図７は、サーバでIDを生成するときの処理を説明するためのフローチャートである。この処理は、図６のステップS６２８の処理の具体的な内容である。まず、サーバ３０１の接続ソフト３０３は、乱数を用いてランダム値５０１を生成し（S７０１）、次に、ランダム値５０１の生成日時５０２をランダム値５０１に付加する（S７０２）。この後、接続ソフト３０３は、ランダム値５０１と生成日時５０２に、カウント値５０３を付加する（S７０３）。
【００３７】
この後、接続ソフト３０３は、ランダム値５０１と、生成日時５０２と、カウント値５０３を含むID３０５をHDDに保存し（S７０４）、さらに共通鍵３０４を生成してHDDに保存する（S７０５）。次に、接続ソフト３０３は、デジタル証明書２０３に付加された公開鍵２０４を用いて、共通鍵３０４とID３０５を暗号化する（S７０６）。
【００３８】
図８は、シンクライアントがIDを利用してリモート通信を確立するまでの動作を説明するためのフローチャートである。まず、シンクライアント１０１は、接続ソフト１０３を起動する（S８０１）。一方、サーバ３０１は、接続ソフト３０３を起動する（S８２１）。
【００３９】
次に、シンクライアント１０１の接続ソフト１０３は、ICカード２０２にデジタル証明書２０３が存在するか否かを確認する（S８０２）。ICカード２０２にデジタル証明書２０３が存在する場合、接続ソフト１０３は、ICカード２０２からデジタル証明書２０３を読み込む処理に移行する（S８０９）。
【００４０】
ICカード２０２にデジタル証明書２０３が存在しない場合、接続ソフト１０３は、記憶装置（CF）１１４にID１０６と共通鍵１０５が存在するか否かを判定する（S８０３）。
【００４１】
接続ソフト１０３は、ステップS８０３で否定の判定結果を得た場合、ID取得エラーの処理を実行し（S８１０）、ステップS８０３で肯定の判定結果を得た場合には、ID１０６を更新し、更新されたID１０６を共通鍵１０５で暗号化し（S８０４）、暗号化されたID１０６をサーバ３０１へ送信する（S８０５）。なお、ID１０６を更新する場合には、カウント値５０３の値を＋１インクリメントする処理が行われる。
【００４２】
次に、サーバ３０１の接続ソフト３０３が、シンクライアント１０１の接続ソフト１０３からID１０６を受信すると（S８２２）、接続ソフト３０３は、サーバ３０１のHDDに保存されている共通鍵３０４を用いてID１０６を復号化し（S８２３）、復号化されたID１０６と、保存されているID３０５とを比較してIDの認証処理（ユーザ情報認証処理）を行う（S８２４）。両者のIDが、認証条件を満たし、IDの認証に成功した場合、例えば、両者のIDの内容が一致した場合、接続ソフト３０３は、接続ソフト１０３との間のリモート接続を確立する（S８２５）。この場合、シンクライアント１０１の接続ソフト１０３は、接続ソフト３０３とのリモート接続を確立する（S８０６）。
【００４３】
リモート接続が確立した後、シンクライアント１０１の接続ソフト１０３は、更新したID１０６を記憶装置（CF）１１４に保存し（S８０７）、接続ソフト３０３とリモート通信を行う（S８０８）。この場合、サーバ３０１の接続ソフト３０３は、シンクライアント１０１の接続ソフト１０３とリモート通信を行う（S８２６）。
【００４４】
なお、本実施例では、社外LANから、IDを利用したリモートアクセスをする場合、VPNサーバ４０１が、ID認証に対応していないため、IDを利用したリモートアクセスは不可能である。
【００４５】
図９は、シンクラアイントにおけるIDの更新処理および暗号化処理を説明するためのフローチャートである。この処理は、図８のステップS８０４の具体的な内容である。
【００４６】
シンクライアント１０１の接続ソフト１０３は、記憶装置（CF）１１４に保存されているID１０６のカウント値５０３を＋１だけインクルメントして、ID１０６を更新し(S９０１)、更新されたID１０６を共通鍵１０５で暗号化する（S９０２）。このように、ID１０６を送信する度に、ID１０６のカウント値５０３を＋１だけインクルメントすることで、前回送信したID１０６が、第３者に盗聴されて利用されたとしても、更新前のID１０６の情報では、サーバ３０１は、ID認証を受け付けないことになる。
【００４７】
図１０は、サーバのID認証処理を説明するためのフローチャートである。この処理は、図８のステップS８２４の具体的な内容である。サーバ３０１の接続ソフト３０３は、受信したID１０６と同じランダム値５０１のID３０５がHDDに保存されているか否かを判定する（S１００１）。
【００４８】
ステップS１００１で肯定の判定結果を得た場合、接続ソフト３０３は、受信したID１０６のカウント値５０３と、サーバ３０１に保存されているID３０５のカウント値５０３に＋１だけインクリメントした値が、等しいか否かを判定する（S１００２）。
【００４９】
ステップS１００２で肯定の判定結果を得た場合、接続ソフト３０３は、受信したID１０６の生成日時５０２と、サーバ３０１に保存されているID３０５の生成日時５０２が、等しいか否かを判定する（S１００３）。
【００５０】
ステップS１００３で肯定の判定結果を得た場合、接続ソフト３０３は、受信したID１０６の生成日時５０２は、サーバ３０１に保存されているID３０５の生成日時５０２から規定された期限内か否かを判定する（S１００４）。
【００５１】
ステップS１００４で肯定の判定結果を得た場合、接続ソフト３０３は、受信したID１０６の内容は、全てID認証条件を満たし、ID認証に成功したとして、受信したID１０６をHDDに保存し（S１００６)、このルーチンでの処理を終了する。
【００５２】
一方、ステップS１００１〜S１００４でそれぞれ否定の判定結果を得た場合には、接続ソフト３０３は、受信したID１０６の内容は、ID認証条件を満たさないとして、ID認証エラーの処理を実行し（S１００５）、このルーチンでの処理を終了する。
【００５３】
本実施例によれば、デジタル証明書２０３が内蔵された外部認証装置２０１を利用しなくても、シンクライアント１０１とサーバ３０１との間のリモート通信を行うことができる。このため、外部認証装置２０１を忘れた場合でも、シンクライアント１０１に保存されたID１０６を利用することで、サーバ３０１に保存されているデータを利用する業務を行うことが可能となる。
【００５４】
また、本実施例によれば、ID認証条件として、期限を設定することで、シンクライアント１０１に保存されたID１０６を利用した場合、一定の期間だけ、シンクライアント１０１とサーバ３０１との間のリモート通信を可能にすることもできる。
【００５５】
また、本実施例において、ID認証条件として、ステップS１００１〜S１００４に規定された全ての条件を設定することに限定されるものではなく、例えば、いずれか一つのID認証条件を設定することもできる。この場合、接続ソフト３０３は、受信したID１０６が、一つのID認証条件を満たすことで、ID認証に成功したと判定することになる。
【００５６】
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【００５７】
例えば、ステップS１００４では、接続ソフト３０３は、シンクライアント１０１からID１０６を受信した日時と、サーバ３０１でID３０５を生成した生成日時５０２からの経過時間で規定された期限とを比較し、受信した日時が、期限内であることを条件に、ID認証処理（ユーザ情報認証処理）に成功したと判定することもできる。
【００５８】
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば、集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、ＳＳＤ（Solid  State  Drive）等の記録装置、または、ＩＣ（Integrated  Circuit）カード、ＳＤ（Secure  Digital）メモリカード、ＤＶＤ（Digital  Versatile  Disc）等の記録媒体に記録して置くことができる。
【符号の説明】
【００５９】
１０１  シンクライアント端末、１０２  OS、１０３  接続ソフト、１０４  VPNソフト、１０５  共通鍵、１０６  ID、１１１  CPU、１１２  入力装置、１１３  出力装置、１１４  記憶装置、１１５  メモリ、１１６  LAN、１１７  通信装置、２０１  外部認証装置、２０２  ICカード、２０３  デジタル証明書、２０４  公開鍵、２０５  秘密鍵、３０１  サーバ、３０２  OS、３０３  接続ソフト、３０４  共通鍵、３０５  ID、４０１  VPNサーバ、４０２  OS、４０３  VPNソフト。
【図１】
2013239045.tif 000003
【図２】
2013239045.tif 000004
【図３】
2013239045.tif 000005
【図４】
2013239045.tif 000006
【図５】
2013239045.tif 000007
【図６】
2013239045.tif 000008
【図７】
2013239045.tif 000009
【図８】
2013239045.tif 000010
【図９】
2013239045.tif 000011
【図１０】
2013239045.tif 000012