(57)【要約】【課題】サーバが、クライアントをＩＰアドレスにより識別し、ライセンスの管理を行うシステムにおいて、ＤＨＣＰ環境においても、サーバが、ＩＰアドレスを用いた適切なライセンス管理を行うことのできる方法を提供することを目的とするものである。【解決手段】本発明は、受信したＩＰアドレスに対して、アクティブチェックデータに対するアクティブレスポンスデータを受信したか否かを判定し、受信しなければ前記ＩＰアドレスがノンアクティブであると判定し、受信した場合には、該アクティブレスポンスデータに含まれているライセンスキーと、登録されているライセンスキーとを比較し、同じであれば前記ＩＰアドレスはアクティブと、異なっていた場合にはノンアクティブであると判定するものである。【選択図】                  図１
2004297573.tif 000002
【特許請求の範囲】
【請求項１】
クライアントのライセンスキーをＩＰアドレスを用いて管理するサーバが、受信したＩＰアドレスがアクティブか否かを判定する方法であって、
前記受信したＩＰアドレスに対して、ライセンスキーを含むアクティブレスポンスデータを要求するためのアクティブチェックデータを送信するステップと、
前記アクティブレスポンスデータを受信したか否かを判定し、受信しなければ前記ＩＰアドレスがノンアクティブであると判定するステップと、
前記アクティブレスポンスデータを受信した場合には、該アクティブレスポンスデータに含まれているライセンスキーが、ライセンスＤＢで前記ＩＰアドレスと対応付けて登録されているライセンスキーと同じか否かを判定し、同じであれば前記ＩＰアドレスはアクティブであると判定し、異なっていた場合には前記ＩＰアドレスがノンアクティブであると判定するステップと
を備えたことを特徴とするクライアント管理方法。
【請求項２】
コンピュータを動作させるためのプログラムであって、コンピュータに
クライアントから受信したＩＰアドレスに対して、ライセンスキーを含むアクティブレスポンスデータを要求するためのアクティブチェックデータを送信する手段と、
前記アクティブレスポンスデータを受信したか否かを判定し、受信しなければ前記ＩＰアドレスがノンアクティブであると判定する手段と、
前記アクティブレスポンスデータを受信した場合には、該アクティブレスポンスデータに含まれているライセンスキーが、ライセンスＤＢで前記ＩＰアドレスと対応付けて登録されているライセンスキーと同じか否かを判定し、同じであれば前記ＩＰアドレスはアクティブであると判定し、異なっていた場合には前記ＩＰアドレスがノンアクティブであると判定する手段と
を機能させるためのクライアント管理プログラム。
【請求項３】
クライアントのライセンスキーをＩＰアドレスを用いて管理するクライアント管理装置において
前記ライセンスキーと、該ライセンスキーによりログインしているクライアントのＩＰアドレスとを対応付けて記憶しているライセンスＤＢと、
クライアントから受信したＩＰアドレスに対して、ライセンスキーを含むアクティブレスポンスデータを要求するためのアクティブチェックデータを送信する手段と、
前記アクティブレスポンスデータを受信したか否かを判定し、受信しなければ前記ＩＰアドレスがノンアクティブであると判定する手段と、
前記アクティブレスポンスデータを受信した場合には、該アクティブレスポンスデータに含まれているライセンスキーが、前記ライセンスＤＢで前記ＩＰアドレスと対応付けて登録されているライセンスキーと同じか否かを判定し、同じであれば前記ＩＰアドレスはアクティブであると判定し、異なっていた場合には前記ＩＰアドレスがノンアクティブであると判定する手段と
を備えたことを特徴とするクライアント管理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ネットワークを介してクライアントとサーバが接続されているクライアント・サーバ型システムにおいて、サーバがライセンスキーによりクライアントを管理する管理方法、管理プログラム、管理装置に関する。
【０００２】
【従来の技術】
従来より、クライアント・サーバ型システムにおいて、ライセンスの管理については、クライアントの契約台数に応じてライセンスキーを発行することにより、行ってきた。例えば、特許文献１には、各下位処理装置にライセンス付与可能総数以下のライセンスＩＤを付与し、下位処理装置は、ログイン時にライセンスＩＤを上位処理装置に送信することで、ライセンス管理を行うことが記載されている。
【０００３】
しかし、係る従来の方法によっては、契約クライアントに発行したライセンスキーを他のクライアントにコピーすることにより、同一ライセンスキーによる二重ログインが可能となってしまう問題があった。
【０００４】
そこで、かかる問題を解決する１つの方法として、例えば、特許文献２のように、クライアントに固有の情報であるＩＰアドレスを用いたライセンスの管理が行われている。
【０００５】
【特許文献１】
特開２０００−３３９１５５号公報
【０００６】
【特許文献２】
特開２０００−５６９６７号公報
【０００７】
【発明が解決しようとする課題】
通常、ログインが正常に認証処理されると、ログイン情報等がサーバに記憶され、正常にログアウト処理がされると、サーバに記憶された情報は消去される。しかし、何らかの原因で異常終了すると、ログイン時に記憶した情報がサーバに残ってしまうことになり、ＩＰアドレスによりライセンス管理をし、ログインの可否を判定しているような場合においては、正当な再ログインのはずが、二重ログインと判定されてしまうことが起こり得る。かかる異常終了の状態を定期的にチェックし、残った情報を消去することは可能であるが、そのチェックにはある程度の負荷及びコストがかかることになる。
また、近年、多く普及しているＤＨＣＰ（Ｄｙｎａｍｉｃ  Ｈｏｓｔ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）環境では、クライアントに対しては、起動時及び接続時にネットワーク上で毎回異なるＩＰアドレスが割り当てられることになるため、サーバから同一のクライアントを常に識別することが困難となっている。
よって、前記のＩＰアドレスによりクライアントを認識する方法によっては、前記の異常ログアウトの場合とも相まって、適切にライセンスの管理、ログイン可否の判定を行うことが不可能となっている。
そこで、本発明は、ＤＨＣＰ環境においても、サーバが、ＩＰアドレスを用いた適切なライセンス管理、ログイン可否の判定を行うことのできる方法を提供することを目的とするものである。
【０００８】
【課題を解決するための手段】
本発明のクライアント管理方法は、受信したＩＰアドレスに対して、ライセンスキーを含むアクティブレスポンスデータを要求するためのアクティブチェックデータを送信するステップと、前記アクティブレスポンスデータを受信したか否かを判定し、受信しなければ前記ＩＰアドレスがノンアクティブであると判定するステップと、前記アクティブレスポンスデータを受信した場合には、該アクティブレスポンスデータに含まれているライセンスキーが、ライセンスＤＢで前記ＩＰアドレスと対応付けて登録されているライセンスキーと同じか否かを判定し、同じであれば前記ＩＰアドレスはアクティブであると判定し、異なっていた場合には前記ＩＰアドレスがノンアクティブであると判定するステップとを含むものである。
【０００９】
従って、本発明によれば、ＤＨＣＰ環境においてクライアントに動的にＩＰアドレスが割り当てられる場合でも、サーバは、適切なライセンス管理、ログイン可否の判断をすることが可能となる。
【００１０】
【発明の実施の形態】
本発明の実施の形態について図面により説明する。図１に示すように、本実施形態は、ライセンスの管理を行うサーバ１０と、サーバに対してログインの要求等を行う１又は複数のクライアント１１とがネットワーク１２を介して接続されている。
【００１１】
サーバ１０にはライセンスＤＢ１０５が接続されており、ログイン判定プログラム１０１、アクティブ判定プログラム１０２を備えている。
【００１２】
ライセンスＤＢ１０５は、図６に示すように、ライセンスキー６１とＩＰアドレス６２を対応付けて管理しているデータベースである。例えば、ライセンスキーの「Ｒ−３」は、ＩＰアドレス「１１１．２２２．３３３．００２」によって識別されるクライアントにインストールされており、ログイン中であることが示されている。また、ライセンスキー「Ｒ−２」によっては、現在ログイン中のクライアントが存在していないことを示している。
【００１３】
ログイン判定プログラム１０１は、クライアント１１からのライセンスキーとＩＰアドレスを含んだログイン要求を受信すると、ライセンスＤＢ１０５の登録状態を参照等することにより、そのクライアントのログイン可否を判定し、ログイン成功／ログイン失敗を通知するための処理を記述したプログラムである。
【００１４】
アクティブ判定プログラム１０２は、ログイン判定プログラム１０１のステップＳ２５において、ログイン要求において送信されたライセンスキーに対応するＩＰアドレスが既にライセンスＤＢに登録されていた場合に、その登録されていたＩＰアドレスがアクティブか否かを判定するための処理を記述したプログラムである。
【００１５】
クライアント１１には、ログイン要求プログラム１１１と、アクティブレスポンスプログラム１１２とを備えている。
【００１６】
ログイン要求プログラム１１１は、サーバ１０に対してログインするための処理を記述したプログラムである。
【００１７】
アクティブレスポンスプログラム１１２は、サーバ１０からアクティブであるか否かの問い合わせに対して応答するための処理を記述したプログラムである。クライアントにおいては、このアクティブレスポンスプログラム１１２を実行しておき、ログイン状態であるか否かを問わず、サーバ１０からの問い合わせに対しては、直ちに応答可能な状態としておく。
【００１８】
図７は、ネットワークを介してサーバ１０とクライアント１１との間で送受信されるデータの例である。
【００１９】
ログイン要求データ７１は、クライアント１１がサーバ１０にログインを要求するときに送信するデータであり、少なくとも、クライアント１１にインストールされているライセンスキー７２とネットワーク１２上の識別情報であるＩＰアドレス７３とを含む。
【００２０】
アクティブチェックデータ７４は、サーバ１０がライセンスＤＢ１０５に登録されているＩＰアドレス６２がアクティブか否かを判定するために、そのＩＰアドレス６２に対して送信するデータであり、クライアント１１に対してレスポンスを要求するレスポンス要求データ７６が含まれている。また、アクティブレスポンスデータ７７はクライアント１１からサーバ１０に送信されるデータである。アクティブチェックデータ７４に含まれるレスポンス要求データ７６は、アクティブレスポンスプログラム１１２が実行されているクライアント１１により受信されると、そのクライアント１１はそのデータに応答してアクティブレスポンスデータ７７を送信する。アクティブレスポンスデータ７７には、そのクライアント１１にインストールされているライセンスキー７９を含んでいる。
【００２１】
次に、図２乃至図５に示すフローチャートを用いて、本発明の動作例を説明する。
【００２２】
図２は、サーバ１０が、クライアント１１からのライセンスキー等を含むログイン要求を受信したときに、当該ライセンスキーのライセンスＤＢ１０５における登録の状態等に基づいてログインの可否を判定し、クライアントにログインの成功又はログインの失敗を通知する処理を説明するためのフローチャートである。
【００２３】
まずステップＳ２１では、クライアント１１よりログイン要求を受信する。ここで受信するログイン要求データ７１は図７（ａ）に示すように、クライアント１１にインストールされているライセンスキー７２と、当該クライアント１１のネットワーク上の所在を示す情報であるＩＰアドレス７３とを含むものである。
【００２４】
ステップＳ２２では、クライアント１１から受信したライセンスキー７２について、ライセンスＤＢ１０５のライセンスキー６１に登録されているか否かを判定する。ここで、登録されていれば次のステップＳ２３に進み、登録されていなければ、受信したライセンスキー７２がログインを許可されたものではないため、ステップＳ２８に進みクライアント１１に対してログイン失敗を通知する。
【００２５】
ステップＳ２３では、ライセンスＤＢ１０５を参照して、受信したライセンスキー７２に対応してＩＰアドレス６２が登録されているか否かを判定する。登録されていなければ、当該ライセンスキー７２によりサーバ１０にログインをしているクライアントが存在しないことを意味するため、ログインは可能と判断し、ステップＳ２７に進み、クライアント１１に対してログイン成功を通知する。これは通常のログインの処理である。
【００２６】
受信したライセンスキー７２に対応してＩＰアドレス６２が登録されていれば、何らかの理由により、サーバ１０は当該ライセンスキー７２によりログインをしているクライアントが存在すると認識している状態であるため、さらに詳細な判断を行うべく次のステップＳ２４に進む。
【００２７】
ステップＳ２４では、ステップＳ２１で受信したＩＰアドレス７３と、ライセンスＤＢ１０５にライセンスキー７２と対応して登録されているＩＰアドレス６２とが、同一であるか否かを判定する。同一であるということは、クライアント１１が当該ＩＰアドレスにてログインしていたが、例えばアプリケーションソフトの不正終了等のような何らかの不具合により確立していたログインの状態が切断され、ログインをしていたＩＰアドレス等の情報がライセンスＤＢ１０５に残留したままの状態で、再び同一のＩＰアドレスによりログインを試ている状態であることを意味する。この場合のクライアント１１における不具合とは、比較的軽度のものであり、クライアント１１におけるオペレーティングシステムの再起動や、装置自体の電源再投入を要するほどのものではなく、ＤＨＣＰ環境においてクライアントに対するＩＰアドレスの再割り当てが行われていない状態である。すなわち、この場合はクライアント１１が正常な再ログインを試みているのであって、ステップＳ２７に進みクライアント１１に対してログインの成功を通知する。
【００２８】
一方、受信したＩＰアドレス７３とライセンスＤＢ１０５に登録されているＩＰアドレス６２とが異なっている場合には、サーバ１０が、ログインを試みているクライアント１１とは異なるクライアントがログインをしていると認識している状態であるため、さらに詳細な判断を行うべく次のステップＳ２５に進む。
【００２９】
ステップＳ２５では、受信したライセンスキー７２と、ライセンスＤＢ１０５で対応付けて登録されているＩＰアドレス６２が、アクティブであるか否かを判定する。アクティブとは、何らかの不具合により確立していたログインの状態が切断され、ログインをしていたＩＰアドレス等の情報がライセンスＤＢ１０５に残留したのではなく、実際にＩＰアドレス６２によってログインをしているクライアントが存在している状態をいう。アクティブであると判定したということは、ライセンスＤＢ１０５に登録されているライセンスキー６１とＩＰアドレス６２によってログインしているクライアントが存在しているにもかかわらず、クライアント１１がそのクライアントと同一のライセンスキー、異なるＩＰアドレスにログインを試みていることを意味する。即ち、クライアント１１は不正な二重ログインを試みていることになる。よって、ステップＳ２８に進み、クライアント１１に対してログインの失敗を通知する。
【００３０】
アクティブでないと判定した場合には、ステップＳ２６に進む。ここでアクティブでないとは、クライアント１１はサーバ１０に対して正当にログインをしていたが、何らかの不具合により確立していたログインの状態が切断され、ログインをしていたＩＰアドレス等の情報がライセンスＤＢ１０５に残留してしまい、かつ、不具合の程度が比較的重度でありオペレーティングシステムの再起動等の処置を行ったことにより、クライアント１１にはそれまでとは異なるＩＰアドレス７３が割り当てられたために、当該ＩＰアドレス６２によりログインをしているクライアントが存在していないことを意味する。即ち、クライアント１１が試みているのは、正当な再ログインである。
【００３１】
アクティブ否かの判定の処理の詳細は後述する。
【００３２】
ステップＳ２６では、ライセンスＤＢ１０５に登録されていたＩＰアドレス６２を、受信したＩＰアドレス７３に更新し、ステップＳ２７に進み、クライアント１１に対して、ログインの成功を通知する。
【００３３】
図３は、図２のステップＳ２５において、サーバ１０が、ライセンスＤＢに登録されているＩＰアドレス６２がアクティブであるか否かを判定する処理の詳細を説明するためのフローチャートである。
【００３４】
ステップＳ３１では、サーバ１０は、登録されているＩＰアドレス６２に対して、アクティブチェックデータ７４を送信する。アクティブチェックデータ７４には、クライアント１０に対してレスポンスの要求をする旨のデータであるレスポンス要求データ７６を含んでいる。少なくともネットワーク１２上でライセンスキーをインストールするクライアント１１には、必ずアクティブレスポンスプログラム１１２をインストールし実行しておく。このアクティブレスポンスプログラム１１２は、レスポンス要求データ７６を受信すると、それに応答してライセンスキー７９を含むアクティブレスポンスデータ７７をサーバ１０に対して送信する処理を行うプログラムである。
【００３５】
ステップＳ３２では、アクティブレスポンスデータ７７を受信したか否かを判定する。ステップＳ３１でアクティブチェックデータ７４を送信したクライアントが、動作していないか、若しくはアクティブレスポンスプログラム１１２が実行されていなければ、アクティブレスポンスデータ７７は返信されず、したがって、アクティブチェックデータ７４を送信したＩＰアドレス６２はノンアクティブであると判定する。アクティブレスポンスデータ７７を受信した場合には、ステップＳ３３に進む。
【００３６】
ステップＳ３３では、受信したアクティブレスポンスデータ７７に含まれるライセンスキー７９が、ライセンスＤＢ１０５でＩＰアドレス６２に対応付けて登録されているライセンスキー６１と同一か否かを判定する。同一であればアクティブと判定し、異なっていればノンアクティブと判定する。このステップＳ３３でノンアクティブと判定されるのは、クライアント１１はサーバ１０に対して確立していたログインの状態が、何らかの不具合により切断し、別のＩＰアドレスが割り当てられたが、切断前のＩＰアドレスについては、すでに別のクライアントに対して割り当てられた状態を意味する。
【００３７】
図４は、クライアント１１が、サーバ１０に対してログインの要求をする際の処理を説明するためのフローチャートである。
【００３８】
ステップＳ４１では、サーバ１０に対してログイン要求データ７１を送信する。このログイン要求データ７１には少なくとも、クライアント１１にインストールされたライセンスキー７２とＩＰアドレス７３とを含んでいる。
【００３９】
ステップＳ４２では、サーバ１０よりログイン成功、若しくはログイン失敗の通知を受信する。クライアント１１は、この通知によって、ログインの成否を認識する。
【００４０】
図５は、クライアント１１におけるアクティブレスポンスプログラム１１２の処理を説明するためのフローチャートである。
【００４１】
ステップＳ５１では、クライアント１１は、サーバ１０からのアクティブチェックデータ７４を受信したか否かの判定を行う。受信した場合にはステップＳ５２に進む。
【００４２】
ステップＳ５２では、アクティブチェックデータ７４に応答して、アクティブレスポンスデータ７７をサーバ１０に対して送信する。このアクティブレスポンスデータには、クライアント１１にインストールされているライセンスキー７９を含んでいる。
【００４３】
このアクティブレスポンスプログラム１１２は、少なくとも、サーバ１０に対してログインの資格を持つ、すなわち、ライセンスキーをインストールしたすべてのクライアント１１にはインストールして、実行状態にしておく必要がある。そうすることによりサーバ１０からのアクティブか否かの問い合わせに対して、直ちに応答することが可能となる。また、ライセンスキーがインストールされないクライアントにもインストールしておいても問題はない。その場合はアクティブレスポンスデータ７７に含ませるべきライセンスキー７９を持たないことになるため、サーバ１０は無効なデータがライセンスキー７９のフィールドで送信されたことをもって、正当な判定をすることができる。
【００４４】
次に具体的な動作例を図８乃至図１０によって説明する。いずれも、ライセンスＤＢ１０５の登録の状態が図６の状態で合ったときに、クライアントＡからログイン要求があった場合の動作例を示している。
【００４５】
図８の（Ａ）は、クライアントＡが「Ｒ−６」のライセンスキーでサーバへのログインを試みたが、「Ｒ−６」はライセンスＤＢ１０５に存在しないライセンスキーであったため、サーバは、ログインの資格なしと判断して、クライアントＡにログイン失敗を通知した場合を示している。
【００４６】
図８の（Ｂ）は、ＩＰアドレス「１１１．２２２．３３３．００５」で識別されるクライアントＡが「Ｒ−２」のライセンスキーでログインを試みた場合である。ライセンスＤＢ１０５の「Ｒ−２」には対応するＩＰアドレスが登録されていないので、「１１１．２２２．３３３．００５」をそのフィールドに登録して、クライアントＡにはログイン成功を通知する。
【００４７】
図８の（Ｃ）は、ＩＰアドレス「１１１．２２２．３３３．００２」で識別されるクライアントＡが「Ｒ−３」のライセンスキーでログインを試みた場合である。ライセンスＤＢ１０５の「Ｒ−３」には対応するＩＰアドレスとして、「１１１．２２２．３３３．００２」が登録されているため、サーバは同じクライアントからの再ログインであると判断して、クライアントＡにはログイン成功を通知する。
【００４８】
図９は、ＩＰアドレス「１１１．２２２．３３３．００６」で識別されるクライアントＡが「Ｒ−１」のライセンスキーでログインを試みた場合である。ライセンスＤＢ１０５の「Ｒ−１」には対応するＩＰアドレスとして、「１１１．２２２．３３３．００１」が登録されており、クライアントＡから受信した「１１１．２２２．３３３．００６」とは異なる。そこで「１１１．２２２．３３３．００１」で識別されるクライアントが、依然ログインしている状態にあるのか否か、すなわちアクティブであるのか否かを判定するために、ＩＰアドレス「１１１．２２２．３３３．００１」に対して、アクティブチェックデータを送信する。この動作例は「１１１．２２２．３３３．００１」で識別されるクライアントＢが存在した場合を示しており、アクティブチェックデータを受信したクライアントＢは、レスポンス要求に応答して、ライセンスキー「Ｒ−１」を含むアクティブレスポンスデータをサーバに送信する。アクティブレスポンスデータに含んで受信したライセンスキー「Ｒ−１」は、ライセンスＤＢで「１１１．２２２．３３３．００１」に対応して登録されているライセンスキーと同一であることより、サーバは、クライアントＢが「Ｒ−１」によりログインしており、アクティブな状態であると判断する。すなわち、クライアントＡによって試みられたライセンスキー「Ｒ−１」によるログインは不正な二重ログインであると判定し、クライアントＡに対してログイン失敗を通知する。なお、図９中で「ｘｘｘ」、「ｙｙｙ」で示されるのは、クライアントとサーバの間での通信に必要なヘッダ情報である。
【００４９】
図１０は、ＩＰアドレス「１１１．２２２．３３３．００７」で識別されるクライアントＡが「Ｒ−４」のライセンスキーでログインを試みた場合である。ライセンスＤＢ１０５の「Ｒ−４」には対応するＩＰアドレスとして、「１１１．２２２．３３３．００３」が登録されており、クライアントＡから受信した「１１１．２２２．３３３．００７」とは異なる。そこで「１１１．２２２．３３３．００３」で識別されるクライアントが、依然ログインしている状態にあるのか否か、すなわちアクティブであるのか否かを判定するために、ＩＰアドレス「１１１．２２２．３３３．００３」に対して、アクティブチェックデータを送信する。この動作例は「１１１．２２２．３３３．００３」で識別されるクライアントＢが存在した場合を示しており、アクティブチェックデータを受信したクライアントＢは、レスポンス要求に応答して、ライセンスキー「Ｒ−５」を含むアクティブレスポンスデータをサーバに送信する。アクティブレスポンスデータに含んで受信したライセンスキー「Ｒ−５」は、ライセンスＤＢで「１１１．２２２．３３３．００３」に対応して登録されているライセンスキーと異っていることより、サーバは、「１１１．２２２．３３３．００３」で識別されるクライアントはログインしていない、すなわちノンアクティブであると判断する。よって、ライセンスキー「Ｒ−４」によりログインしているクライアントは存在していない状態であると認識する。そこで、クライアントＡによって試みられたライセンスキー「Ｒ−４」によるログインは正当な再ログインであると判定し、ライセンスＤＢの「Ｒ−４」に対応するＩＰアドレスを、ログイン要求時に受信した「１１１．２２２．３３３．００７」に更新し、クライアントＡに対してログイン成功を通知する。なお、図１０中で「ｘｘｘ」、「ｙｙｙ」で示されるのは、クライアントとサーバの間での通信に必要なヘッダ情報である。
【００５０】
なお、本発明は上記説明した構成にとらわれるものではなく、別の実施例によって実現されても構わない。
【００５１】
図示はしていないが、サーバ１０、クライアント１１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）によって装置全体が制御されているコンピュータである。ＣＰＵには、バスを介してＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ハードディスク装置（ＨＤＤ）、グラフィック処理部、入力インタフェース、および通信インタフェース等が接続されている。
【００５２】
ＲＡＭには、ＣＰＵに実行させるＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）のプログラムやその他のプログラムの少なくとも一部が一時的に格納される。また、ＲＡＭには、ＣＰＵによる処理に必要な各種データが格納される。ＨＤＤには、ＯＳやその他のプログラムおよびデータが格納される。
【００５３】
グラフィック処理部には、モニタ装置が接続されている。グラフィック処理部は、ＣＰＵからの命令に従って入力画面などをモニタ装置に表示させる。入力インタフェースには、キーボードやマウス等が接続されている。入力インタフェースは、キーボードやマウス等から送られてくる信号を、バスを介してＣＰＵに送信する。
【００５４】
通信インタフェースは、ネットワーク１２に接続されており、他のコンピュータとネットワーク１２を介して、データの送受信を行なう。
【００５５】
本発明の実施の形態に係るログイン判定プログラム１０１、アクティブ判定プログラム１０２を上述のコンピュータで実行させることによって、コンピュータをクライアント管理装置として機能させることができる。
【００５６】
また、上記のコンピュータが有すべき機能の処理内容は、コンピュータで読み取り可能な記録媒体に記録されたプログラムに記述させておくことができる。このプログラムをコンピュータで実行することにより、上記処理がコンピュータで実現できる。コンピュータで読み取り可能な記録媒体としては、磁気記録装置や半導体メモリなどがある。市場に流通させる場合には、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）やフレキシブルディスクなどの可搬型記録媒体にプログラムを格納して流通させたり、ネットワークを介して接続されたコンピュータの記憶装置に格納しておき、ネットワークを通じて他のコンピュータに転送したりすることもできる。コンピュータで実行する際には、コンピュータ内のハードディスク装置などにプログラムを格納しておき、メインメモリにロードして実行する。
【００５７】
（付記１）
クライアントのライセンスキーをＩＰアドレスを用いて管理するサーバが、受信したＩＰアドレスがアクティブか否かを判定する方法であって、
前記受信したＩＰアドレスに対して、ライセンスキーを含むアクティブレスポンスデータを要求するためのアクティブチェックデータを送信するステップと、
前記アクティブレスポンスデータを受信したか否かを判定し、受信しなければ前記ＩＰアドレスがノンアクティブであると判定するステップと、
前記アクティブレスポンスデータを受信した場合には、該アクティブレスポンスデータに含まれているライセンスキーが、ライセンスＤＢで前記ＩＰアドレスと対応付けて登録されているライセンスキーと同じか否かを判定し、同じであれば前記ＩＰアドレスはアクティブであると判定し、異なっていた場合には前記ＩＰアドレスがノンアクティブであると判定するステップと
を備えたことを特徴とするクライアント管理方法。
【００５８】
（付記２）
コンピュータを動作させるためのプログラムであって、コンピュータに
クライアントから受信したＩＰアドレスに対して、ライセンスキーを含むアクティブレスポンスデータを要求するためのアクティブチェックデータを送信する手段と、
前記アクティブレスポンスデータを受信したか否かを判定し、受信しなければ前記ＩＰアドレスがノンアクティブであると判定する手段と、
前記アクティブレスポンスデータを受信した場合には、該アクティブレスポンスデータに含まれているライセンスキーが、ライセンスＤＢで前記ＩＰアドレスと対応付けて登録されているライセンスキーと同じか否かを判定し、同じであれば前記ＩＰアドレスはアクティブであると判定し、異なっていた場合には前記ＩＰアドレスがノンアクティブであると判定する手段と
を機能させるためのクライアント管理プログラム。
【００５９】
（付記３）
クライアントのライセンスキーをＩＰアドレスを用いて管理するクライアント管理装置において
前記ライセンスキーと、該ライセンスキーによりログインしているクライアントのＩＰアドレスとを対応付けて記憶しているライセンスＤＢと、
クライアントから受信したＩＰアドレスに対して、ライセンスキーを含むアクティブレスポンスデータを要求するためのアクティブチェックデータを送信する手段と、
前記アクティブレスポンスデータを受信したか否かを判定し、受信しなければ前記ＩＰアドレスがノンアクティブであると判定する手段と、
前記アクティブレスポンスデータを受信した場合には、該アクティブレスポンスデータに含まれているライセンスキーが、前記ライセンスＤＢで前記ＩＰアドレスと対応付けて登録されているライセンスキーと同じか否かを判定し、同じであれば前記ＩＰアドレスはアクティブであると判定し、異なっていた場合には前記ＩＰアドレスがノンアクティブであると判定する手段と
を備えたことを特徴とするクライアント管理装置。
【００６０】
（付記４）
サーバが、クライアントをライセンスキーとＩＰアドレスとを用いて管理する方法であって、
ライセンスキーとＩＰアドレスとを含むログイン要求を前記クライアントから受信するログイン要求受信ステップと、
受信したライセンスキーがライセンスＤＢに登録されているか否かを判定し、登録されていなければ前記クライアントにログイン失敗を通知するライセンスキー登録判定ステップと、
前記ライセンスキー登録判定ステップで、前記ライセンスキーがライセンスＤＢに登録されていれば、該ライセンスＤＢに該ライセンスキーに対応付けられたＩＰアドレスが登録されているか否かを判定し、登録されていなければ前記クライアントにログイン成功を通知するＩＰアドレス登録判定ステップと、
前記ＩＰアドレス登録判定ステップで、前記ＩＰアドレスが登録されていれば、前記ログイン要求受信ステップで受信したＩＰアドレスと前記ライセンスＤＢに登録されているＩＰアドレスとが同じか否かを比較し、同じであれば前記クライアントにログイン成功を通知するＩＰアドレス比較ステップと、
前記ＩＰアドレス比較ステップで、比較したＩＰアドレスが異なれば、前記ライセンスＤＢの登録されているＩＰアドレスがアクティブか否かを判定し、アクティブであれば、前記クライアントにログイン失敗を通知するＩＰアドレスアクティブ判定ステップと、
前記ＩＰアドレスアクティブ判定ステップで、アクティブではないと判定した場合にはライセンスＤＢのＩＰアドレスをクライアントから受信したＩＰアドレスに更新し、前記クライアントにログイン成功を通知するＩＰアドレス更新ステップと
を備えたことを特徴とするクライアント管理方法。
【００６１】
（付記５）
クライアントのライセンスキーをＩＰアドレスを用いて管理するクライアント管理装置において
前記ライセンスキーと、該ライセンスキーによりログインしているクライアントのＩＰアドレスとを対応付けて記憶しているライセンスＤＢと、
ライセンスキーとＩＰアドレスとを含むログイン要求を前記クライアントから受信する手段と、
受信したライセンスキーがライセンスＤＢに登録されているか否かを判定する手段と、
前記ライセンスキーがライセンスＤＢに登録されていた場合に、該ライセンスＤＢに該ライセンスキーに対応付けられたＩＰアドレスが登録されているか否かを判定する手段と、
前記ＩＰアドレスが登録されてた場合に、受信したＩＰアドレスと前記ライセンスＤＢに登録されているＩＰアドレスとを比較し、同じか否かを判定する手段と、
比較したＩＰアドレスが異なっていた場合に、前記ライセンスＤＢに登録されているＩＰアドレスがアクティブか否かを判定する手段と、
前記ＩＰアドレスがアクティブではないと判定した場合に、ライセンスＤＢのＩＰアドレスをクライアントから受信したＩＰアドレスに更新する手段と、
前記各手段の判定の結果により、前記クライアントにログイン成功又はログイン失敗を通知する手段と
を備えることを特徴とするクライアント管理装置。
【００６２】
（付記６）
クライアントが、サーバによるアクティブか否かのチェックに応答する方法であって、
サーバからの、ライセンスキーを含むアクティブレスポンスデータを要求するためのアクティブチェックデータを受信するステップと、
前記アクティブチェックデータに対応して、ライセンスキーを含むアクティブレスポンスデータを送信するステップと、
を備えることを特徴とするアクティブか否かのチェックに応答する方法。
【００６３】
（付記７）
コンピュータを動作させるためのプログラムであって、クライアントに
サーバからの、ライセンスキーを含むアクティブレスポンスデータを要求するためのアクティブチェックデータを受信する手段と、
前記アクティブチェックデータに対応して、ライセンスキーを含むアクティブレスポンスデータを送信する手段と
を機能させるためのクライアント応答プログラム。
【００６４】
（付記８）
クライアントが、ライセンスキーとＩＰアドレスを用いてサーバにより管理される方法であって、
ログイン要求としてライセンスキーとＩＰアドレスをサーバに送信するステップと、
サーバからのログイン成功又はログイン失敗の通知を受信するステップと
を備えることを特徴とするクライアントがサーバにより管理される方法。
【００６５】
【発明の効果】
以上説明したように、クライアントにＩＰアドレスが動的に割り当てられるＤＨＣＰ環境においても、ライセンスキーとＩＰアドレスとの組み合わせにより、再ログインと二重ログインとを識別することが可能となり、適切なログイン可否の判定、ライセンス管理が可能となる。
【図面の簡単な説明】
【図１】本発明を実現するための構成図である。
【図２】ログイン判定プログラムの処理を説明するフローチャートである。
【図３】アクティブ判定プログラムの処理を説明するフローチャートである。
【図４】ログイン要求プログラムの処理を説明するフローチャートである。
【図５】アクティブレスポンスプログラムの処理を説明するフローチャートである。
【図６】ライセンスＤＢの構成を示すものである。
【図７】サーバとクライアントの間で送受信されるデータを図示したものである。
【図８】本発明の動作例を図示したものである。
【図９】本発明の動作例を図示したものである。
【図１０】本発明の動作例を図示したものである。
【符号の説明】
１０    サーバ
１１    クライアント
１２    ネットワーク
１０１  ログイン判定プログラム
１０２  アクティブ判定プログラム
１０５  ライセンスＤＢ
１１１  ログイン要求プログラム
１１２  アクティブレスポンスプログラム
６１    ライセンスキー
６２    ＩＰアドレス
７１    ログイン要求データ
７２    ライセンスキー
７３    ＩＰアドレス
７４    アクティブチェックデータ
７５    ヘッダ
７６    レスポンス要求データ
７７    アクティブレスポンスデータ
７８    ヘッダ
７９    ライセンスキー
【図１】
2004297573.tif 000003
【図２】
2004297573.tif 000004
【図３】
2004297573.tif 000005
【図４】
2004297573.tif 000006
【図５】
2004297573.tif 000007
【図６】
2004297573.tif 000008
【図７】
2004297573.tif 000009
【図８】
2004297573.tif 000010
【図９】
2004297573.tif 000011
【図１０】
2004297573.tif 000012