(57)【特許請求の範囲】
【請求項１】
ユーザを認証する認証サーバマシンと、前記認証サーバマシンにネットワークを介して接続されユーザにより利用されるクライアントマシンと、前記認証サーバマシンにネットワークを介して接続され管理者により利用される管理者マシンと、発行された証明書を格納するための媒体であり個体識別情報をもつ認証トークンとを有するクライアントサーバ型認証システムであって、
前記認証サーバマシンは、
前記管理者マシンから送信された前記認証トークンの個体識別情報と該認証トークンに対する証明書の発行可否情報とを対応付けてデバイス管理ＤＢに登録する手段と、
前記管理者マシンから送信された前記ユーザに関するユーザ情報と該ユーザに対して発行された証明書とを対応付けてユーザ管理ＤＢに格納する手段と、
前記ユーザ情報及び前記証明書を格納されている前記認証トークンを接続された前記クライアントマシンからの認証要求に対し、該認証要求に含まれる該認証トークンの個体識別情報が前記デバイス管理ＤＢに登録されているか否かを確認する手段と、
前記認証トークンの個体識別情報が登録されている場合にのみ、前記認証要求に含まれるユーザ情報及び証明書が前記ユーザ管理ＤＢに格納されたユーザ情報及び証明書と一致するか否かを確認する手段と、
前記ユーザ情報及び前記証明書が一致する場合にのみ認証を許可する手段と、を備え、
前記管理者マシンは、
接続された未登録の認証トークンの個体識別情報及び該認証トークンに対する証明書の発行可否情報を前記認証サーバマシンに登録させるべく送信する手段と、
接続された認証トークンが登録済みであるか否か及び該認証トークに対する証明書の発行可否情報が発行可であるか否かを前記認証サーバマシンに問い合わせ、該認証サーバマシンから、該認証トークンが登録済みでありかつ発行可否情報が発行可であるとの回答を受信した場合にのみ、指定されたユーザについての証明書を発行し、指定された該ユーザのユーザ情報及び発行した該証明書を該認証トークンに格納する手段と、
前記ユーザ情報及び発行した前記証明書を前記認証サーバマシンに格納させるべく送信する手段と、を備えたことを特徴とする
認証トークンによるクライアントサーバ型認証システム。
【請求項２】
前記管理者マシンはさらに、前記認証サーバマシンに対し問い合わせを行う対象である前記認証トークンを接続する前に、該認証サーバマシンにより証明書発行モードを有効に設定されるための手段を備え、該証明書発行モードが有効に設定されている場合にのみ、前記証明書を発行可能であることを特徴とする請求項１に記載の認証トークンによるクライアントサーバ型認証システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、証明書を認証手段として使用するクライアントサーバ型認証システムの強化機能に関する。
【背景技術】
【０００２】
従来、クライアントサーバ型認証システムとしては、パスワード認証や証明書を使用した認証が一般的である。証明書を使用した認証システムでは、認証サーバマシンにて管理者が発行した証明書（実体はデータであるが、以下単に「証明書」と称する場合がある）を認証サーバマシンにて保管するとともに、当該証明書をＵＳＢ（Universal Serial Bus）メモリなどの媒体（「認証トークン」と称される）に格納し、当該媒体をクライアントマシンに接続させることにより認証を行う。
【０００３】
通常、管理者は証明書を発行するために、サーバルームなどの隔離された場所に配置してある認証サーバマシンを直接操作する必要がある。認証サーバマシンの配置してあるサーバルームに入室する権限を管理者が持っている場合や、そのサーバルームが管理者のすぐ近くにある場合は、認証サーバマシンを直接操作することは容易である。しかし、そのサーバルームに入室する権限がない管理者である場合（入室権限の申請に時間がかかる場合や臨時管理者の場合）や、サーバルームが物理的に遠隔地にある場合には、サーバマシンを直接操作することが困難である。
【０００４】
そこで特許文献１では、証明書を使用した認証システムに関して、管理者が認証サーバマシンを直接操作することなしに、容易にかつセキュリティレベルを下げることなく証明書を発行するシステムを提案している。具体的には、認証サーバマシンが、証明書発行権限に関する管理者の有効／無効及び無効時のログイン制限を含む管理者情報を予め格納しておき、管理者が管理者マシン（身近にあって直接操作可能なマシン）から認証サーバマシンに対して証明書発行依頼を行うと、認証サーバマシンは管理者マシンに証明書を送信するとともに、発行依頼を行った管理者とその証明書とを関連付けて記憶しておく。その後、管理者はユーザに証明書を発行する（すなわち認証トークンに証明書を格納し、配布する）。認証サーバマシンは、認証トークンを使用したユーザのクライアントマシンから証明書を受信したとき、その証明書と関連付けられた管理者情報を照会して有効／無効を判断し、有効であればログインさせ、無効であればログイン制限を行う。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−１２２７９３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１のシステムにおける認証トークンは、単にＵＳＢメモリなどの媒体に証明書が格納されたものであるので、悪意のある人間によってその証明書を他の媒体に複写されて、不正に利用される可能性がある。
【０００７】
証明書が不正に利用されたことが発覚した後であれば、管理者によりその証明書を無効にすることで、それ以降の不正利用を防ぐことはできる。しかし、正規ユーザは、自分の証明書が不正に利用されていた事実を知らない可能性がある。その場合は、自分の知らないうちに認証トークンが利用できなくなっていることに憤慨するかもしれない。さらに、管理者によって証明書を新たに発行、すなわち認証トークンに新たに証明書を格納してもらう必要があり、その分の時間と手間がかかる。
【０００８】
また、証明書を再発行する際、管理者の利用する管理者マシンにＵＳＢメモリなどの媒体を接続するだけでは、認証トークンとして既にユーザと証明書が格納されていた場合にはそのユーザの認証機能が起動してしまい、証明書を新たに発行することができなくなる可能性がある。
【０００９】
本発明の目的は、特許文献１のシステムをさらに改善することである。すなわち、予め一意の個体として登録された認証トークンのみに証明書を発行する機能と、その認証トークンの認証だけを許可する機能とを加えることで、上述したような不正利用を防ぐ機能を提供することを目的とする。また、管理者マシンが認証トークンの証明書を発行使用とする際には、認証トークンの認証機能が起動しないようにする機能を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するために、本発明の、認証トークンによるクライアントサーバ型認証システムは、ユーザを認証する認証サーバマシンと、前記認証サーバマシンにネットワークを介して接続されユーザにより利用されるクライアントマシンと、前記認証サーバマシンにネットワークを介して接続され管理者により利用される管理者マシンと、発行された証明書を格納するための媒体であり個体識別情報をもつ認証トークンとを有するクライアントサーバ型認証システムである。
前記認証サーバマシンは、前記管理者マシンから送信された前記認証トークンの個体識別情報と該認証トークンに対する証明書の発行可否情報とを対応付けてデバイス管理ＤＢに登録する手段と、前記管理者マシンから送信された前記ユーザに関するユーザ情報と該ユーザに対して発行された証明書とを対応付けてユーザ管理ＤＢに格納する手段と、前記ユーザ情報及び前記証明書を格納されている前記認証トークンを接続された前記クライアントマシンからの認証要求に対し、該認証要求に含まれる該認証トークンの個体識別情報が前記デバイス管理ＤＢに登録されているか否かを確認する手段と、前記認証トークンの個体識別情報が登録されている場合にのみ、前記認証要求に含まれるユーザ情報及び証明書が前記ユーザ管理ＤＢに格納されたユーザ情報及び証明書と一致するか否かを確認する手段と、前記ユーザ情報及び前記証明書が一致する場合にのみ認証を許可する手段と、を備える。
前記管理者マシンは、接続された未登録の認証トークンの個体識別情報及び該認証トークンに対する証明書の発行可否情報を前記認証サーバマシンに登録させるべく送信する手段と、接続された認証トークンが登録済みであるか否か及び該認証トークに対する証明書の発行可否情報が発行可であるか否かを前記認証サーバマシンに問い合わせ、該認証サーバマシンから、該認証トークンが登録済みでありかつ発行可否情報が発行可であるとの回答を受信した場合にのみ、該認証トークンに対し指定されたユーザについての証明書を発行し、指定された該ユーザのユーザ情報及び発行した該証明書を該認証トークンに格納する手段と、前記ユーザ情報及び発行した前記証明書を前記認証サーバマシンに格納させるべく送信する手段と、を備える。
【００１１】
上記システムにおいて、前記管理者マシンはさらに、前記認証サーバマシンに対し問い合わせを行う対象である前記認証トークンを接続する前に、該認証サーバマシンにより証明書発行モードを有効に設定されるための手段を備え、該証明書発行モードが有効に設定されている場合にのみ、前記証明書を発行可能であることが、好適である。
【発明の効果】
【００１２】
以上のように本発明の、認証トークンによるクライアントサーバ型認証システムによれば、次のような効果がある。
一意の個体として識別可能な個体識別情報を事前に登録されている認証トークンのみに対し、証明書を発行することができる。従って、別の個体識別情報をもつ別の認証トークンに、証明書又はユーザ情報のみを複写して不正利用することを防止することができる。
【００１３】
また、管理者マシンが、認証トークンの認証を行う機能から認証トークンの証明書を発行する機能に事前に切り替えることにより、管理者マシンから認証トークンの証明書を発行することができる。
【図面の簡単な説明】
【００１４】
【図１】本発明の、認証トークンによるクライアントサーバ型認証システムの構成図である。
【図２】図１のユーザ管理ＤＢ（データベース）の構成図である。
【図３】図１のデバイス管理ＤＢ（データベース）の構成図である。
【図４Ａ】認証トークンに証明書を発行する処理のフローチャートである。
【図４Ｂ】認証トークンに証明書を発行する処理のフローチャートである。
【図５】認証トークンによる認証処理のフローチャートである。
【発明を実施するための形態】
【００１５】
本発明を実施するための形態を、実施例を示した図面を参照しつつ詳細に説明する。
図１は、本発明の、認証トークンによるクライアントサーバ型認証システムの概略的な構成図である。
図１において、ネットワーク１０４には、クライアントマシン１０１及び認証サーバマシン１０３が接続されている。クライアントマシン１０１は一台だけではなく、複数台存在し、それぞれがネットワーク１０４を介して認証サーバマシン１０３と接続され、相互情報伝送可能である。各クライアントマシン１０１には、特に決められたユーザがいないか、又は、一人又は複数の決められたユーザがいるものと想定する。
【００１６】
同様に、ネットワーク１０５には、管理者マシン１０２及び認証サーバマシン１０３が接続されている。管理者マシン１０２は、サーバルームなどの隔離された場所に配置されている認証サーバマシン１０３に対して、管理者が管理者権限においてサーバルームの外部から操作するためのものである。
【００１７】
認証サーバマシン１０３は、サーバプログラムを導入されたコンピュータにより、そして、クライアントマシン１０１及び管理者マシン１０２は、端末として機能する適宜のパーソナルコンピュータにより実施できる。
【００１８】
図１には、本システムにおいて使用される認証トークンの一例として、２つの認証トークン１０６及び認証トークン１０７を示している。これらは、発行された証明書を格納するための媒体であり、例えば、ＵＳＢメモリである。認証トークン１０６、１０７が、所定の証明書を格納した状態でクライアントマシン１０１に接続されることにより、設定されたセキュリティポリシーに従ったユーザとしてログインすることを可能とする。以下では、符号を伴わない「認証トークン」は、図１に示した特定の認証トークン１０６、１０７及びこれら以外の認証トークンを含む、広い概念の認証トークンを表す場合に用いる。
【００１９】
認証サーバマシン１０３は、認証トークンに証明書を発行する手段及び認証トークンによるユーザ認証手段を含む本発明の機能を実行する各処理手段（図示省略）と、本発明の機能に関連する情報を格納するためのユーザ管理ＤＢ（データベース）１０８及びデバイス管理ＤＢ（データベース）１０９を備えている。ユーザ管理ＤＢ１０８には、クライアントマシン１０１のユーザに関する情報と、当該ユーザに発行した証明書が、ユーザ毎に登録されている。デバイス管理ＤＢ１０９には、登録済みの認証トークンに関する情報が、認証トークン毎に登録されている。
【００２０】
図２は、図１の認証サーバマシン１０３に備わっているユーザ管理ＤＢ１０８の定義内容と情報の一例を示す構成図である。図１のクライアントマシン１０１を利用する各ユーザに関する情報が記載されている。
【００２１】
ユーザ管理ＤＢ１０８は、データ項目として、ユーザ名２０１、証明書データ２０２及びセキュリティポリシー２０３を含み、各情報が対応付けられて格納される。ユーザ名２０１には各ユーザのユーザ名が格納される。証明書データ２０２は、実質的な証明書であるところの各ユーザの識別情報が格納される。セキュリティポリシー２０３には、そのユーザが認証すなわちログインを許可された後の、持ち出し可・不可等のセキュリティ制限情報が格納されている。
【００２２】
このユーザ管理ＤＢ１０８は、クライアントマシン１０１が認証トークンを使用してログインしようとして認証サーバマシン１０３に認証要求した際に、認証トークンに格納されているユーザ名及び証明書を照合するために使用される。ユーザ管理ＤＢ１０８と、認証トークンに格納されているユーザ名及び証明書の照合結果が一致すれば、ユーザはログインに成功する。照合結果が一致しなければ、ユーザはログインに失敗する。
【００２３】
図３は、図１における認証サーバマシン１０３に備わっているデバイス管理ＤＢ１０９の定義内容と情報の概要であり、図１の認証トークン１０６、１０７の個体を一意に識別する情報が記載されている。
【００２４】
デバイス管理ＤＢ１０９は、データ項目として、識別ＩＤ３０１及び発行可否３０２を含み、各情報が対応付けられて格納される。識別ＩＤ３０１には、図１における認証トークン１０６、１０７の各々を一意の個体として識別する情報すなわち個体識別情報が格納される。ここで、認証トークンの個体識別情報とは、個々の認証トークンの媒体に本来的に格納されている、書き換えや複写ができない情報である。発行可否３０２には、識別ＩＤ３０１に記載されている認証トークンに対する証明書の発行可又は不可を設定した発行可否情報が格納される。一例として、図１の認証トークン１０６については、識別ＩＤ３０１に個体識別情報「ｉｄ１０６」が、発行可否３０２に「可能」が格納されており、図１の認証トークン１０７については、識別ＩＤ３０１に個体識別情報「ｉｄ１０７」が、発行可否３０２に「不可能」が格納されている。
【００２５】
このデバイス管理ＤＢ１０９は、管理者マシン１０２が、登録された認証トークン１０６、１０７に対して証明書を発行する際に、当該認証トークン１０６、１０７の発行可否情報を確認するために参照される。また、クライアントマシン１０１が、認証トークンを使用してログインしようとして認証サーバマシン１０３に認証要求した際に、当該認証トークンが登録されているか否かを確認するために参照される。
【００２６】
図４Ａ及び図４Ｂは、管理者マシン１０２及び認証サーバマシン１０３により実行される処理であって、未登録の認証トークンを登録し、登録された認証トークンに対して証明書を発行する処理のフローチャートである。この処理の後半では、図１に示した、認証トークン１０６と認証トークン１０７の証明書の発行可否情報の設定内容により分岐する処理となっている。以下の説明においては、図１〜図３中の符号も参照する。
【００２７】
まず、管理者が管理者マシン１０２にログインし、未登録の認証トークンが管理者により管理者マシン１０２に接続される（ステップ４０１）。管理者マシン１０２から認証サーバマシン１０３に対して、当該認証トークンの個体識別情報及び証明書の発行可否情報が送信され、認証サーバマシン１０３はデバイス管理ＤＢ１０９にこれらの情報を対応付けて登録する（ステップ４０２）。
【００２８】
次に、管理者マシン１０２から認証サーバマシン１０３にリモートログインし、認証サーバマシン１０３から、管理者マシン１０２が証明書を発行する権限を一時的に与えられる（ステップ４０３）。
【００２９】
再度、管理者により管理者マシン１０２に認証トークンが接続される（ステップ４０４）。その際、管理者マシン１０２が、認証サーバマシン１０３により証明書発行モードを有効に設定されているかどうかによって処理が分岐する（ステップ４０５）。証明書発行モードを有効に設定されている場合は、認証トークンを接続しても認証サーバマシン１０３に対してログイン認証を行わない状態となる。これにより、認証トークンに対して証明書の発行が可能となる。そのため、認証トークンに対して証明書を発行する場合は、事前に（認証トークンを接続する前に）認証サーバマシン１０３から管理者マシン１０２に対して証明書発行モードを有効に設定しておく必要がある。なお、認証サーバマシン１０３は、管理者マシン１０２の証明書発行モードが有効に設定されている状態から無効に設定する手段も備えている。
【００３０】
ステップ４０５において、証明書発行モードが無効に設定されている場合、認証トークンとして認証サーバマシン１０３に対してログイン認証する（ステップ４０７）。これ以降は本発明とは無関係の処理となる。
【００３１】
一方、ステップ４０５において、証明書発行モードが有効に設定されている場合、認証トークンに対して証明書を発行することが可能となる（ステップ４０６）。なお、管理者マシン１０２ではなく、認証サーバマシン１０３において認証トークンに対して証明書を発行する場合は、証明書発行モードを有効に設定する必要はない。
【００３２】
次に、管理者マシン１０２は、接続された認証トークンの個体識別情報がデバイス管理ＤＢ１０９に登録されているか否かを認証サーバマシン１０３に問い合わせる（ステップ４０８）。認証サーバマシン１０３は、デバイス管理ＤＢ１０９を参照し、認証トークンの個体識別情報が識別ＩＤ３０１に登録済みの場合は、管理者マシン１０２にその旨を回答する。
【００３３】
続いて、管理者マシン１０２は、当該認証トークンに対して証明書を発行可能であるか否かを認証サーバマシン１０３に問い合わせる（ステップ４０９）。認証サーバマシン１０３は、デバイス管理ＤＢ１０９を参照し、当該認証トークンの識別ＩＤ３０１に対応する発行可否３０２に「可能」と登録されていれば、その旨を管理者マシン１０２に回答する。これに基づき管理者マシン１０２は、当該認証トークンに対して、指定されたユーザの証明書を発行する（ステップ４１０）。例えば、認証トークン１０６が接続された場合、デバイス管理ＤＢ１０９の識別ＩＤ３０１に「ｉｄ１０６」が登録済みであり、発行可否３０２には「可能」と登録されているので、証明書の発行に成功する。ユーザの指定において、例えば、ユーザ名２０１の「ｙａｍａｄａ」をユーザとして指定すると、「ｙａｍａｄａ」とそれに対する証明書が認証トークン１０６に格納され、ユーザ管理ＤＢ１０８にも格納される。
【００３４】
このようにして、認証トークンには、指定されたユーザの情報と発行された証明書の情報が格納される。同時に、これらのユーザ情報及び証明書の情報は、認証サーバマシン１０３に送信され、認証サーバマシン１０３は、ユーザ管理ＤＢ１０８のユーザ名２０１に対応付けられた証明書データ２０２に証明書を格納する。このとき、既に証明書データ２０２にデータが存在する場合にはそのデータは上書きされる。
【００３５】
上記ステップ４０８及びステップ４０９のいずれか一方でも満たさない場合は、証明書の発行は失敗して処理を終了する（ステップ４１１）。例えば、認証トークン１０７が接続された場合、識別ＩＤ３０１に「ｉｄ１０７」は登録されているが、発行可否３０２には「不可能」と登録されているので、認証トークン１０７に対する証明書の発行は失敗する。
【００３６】
図５は、クライアントマシン１０１及び認証サーバマシン１０３により実行される処理であって、認証トークンによる認証を行う処理のフローチャートである。図１におけるクライアントマシン１０１に認証トークン１０６を接続して認証する処理を表している。
【００３７】
まず、図１におけるクライアントマシン１０１に認証トークン１０６を接続する（ステップ５０１）。この認証トークン１０６には、既に証明書が発行され格納されている。認証トークン１０６に格納されている情報（個体識別情報、ユーザ名、証明書）は、認証要求とともに認証サーバマシン１０３に送信される。次に、認証サーバマシン１０３は、デバイス管理ＤＢ１０９を参照し、認証トークン１０６の個体識別情報が登録されているか否かを確認する。（ステップ５０２）。
【００３８】
仮に、認証トークン１０６ではない別の認証トークンが接続され、その個体識別情報がデバイス管理ＤＢ１０９に登録されていない場合、認証トークンによる認証は失敗して処理は終了する（ステップ５０４）。例えば、何らかの手段により、認証トークン１０６と同じ証明書が複写された別の認証トークンを接続して認証させようとしたとする。しかし、この別の認証トークンの個体識別情報は、デバイス管理ＤＢ１０９に登録されていないため、この処理によりこの別の認証トークンによる認証処理は失敗する。
【００３９】
この実施例では、認証トークン１０６の個体識別情報はデバイス管理ＤＢ１０９に登録されているので、認証サーバマシン１０３は、認証トークン１０６による認証を許可し、さらにユーザ管理ＤＢ１０８を参照する。そして、認証トークン１０６に格納されているユーザ名及び証明書と、ユーザ管理ＤＢ１０８に登録されているユーザ名２０１及び証明書データ２０２とを照合する（ステップ５０３）。照合した結果が一致しない場合は、認証トークン１０６による認証は失敗して認証処理は終了する（ステップ５０７）。照合した結果が一致する場合は、認証トークン１０６による認証に成功する（ステップ５０６）。
【符号の説明】
【００４０】
１０１…クライアントマシン、１０２…管理者マシン、１０３…認証サーバマシン、１０４…ネットワーク、１０５…ネットワーク、１０６…認証トークン、１０７…認証トークン、１０８…ユーザ管理ＤＢ、１０９…デバイス管理ＤＢ
【図１】
0005455858.tif 000002
【図２】
0005455858.tif 000003
【図３】
0005455858.tif 000004
【図４Ａ】
0005455858.tif 000005
【図４Ｂ】
0005455858.tif 000006
【図５】
0005455858.tif 000007