ライセンスオーソリゼーションプロセスは、以下の9つのステップに分けられます。
ライセンスサーバは、起動時に、次の3つのいずれかの段階で構成されます。
これらのオプションは相互に排他的です。つまり、あるオプションがコマンドラインから渡された場合、他のオプションは無視されます。コマンドラインオプションが指定されておらず、個々の環境変数によってオプションが設定された場合、その設定はLSERVOPTS環境変数で指定された値よりも優先されます。
ライセンスサーバオプションの多くは、上記の3通りの方法で設定できます。オプションが複数の方法によって設定された場合、優先順位が最も高いのはコマンドラインパラメータです。その次に優先順位が高いのは個々の環境変数で、優先順位が最も低いのはLSERVOPTS環境変数です。複数の方法によるオプション設定は一部の状況で役立ちますが、通常は必要ありません。推奨する設定方法については、 ライセンスサーバ ― 使用頻度の高い変数およびライセンスサーバ ― 使用頻度の低い変数 を参照してください。
ライセンスサーバのコマンドラインオプションの詳細については、lservnt ― ライセンスサーバの起動を参照してください。
ライセンスサーバは、構成後、ライセンスファイルを読み込みます。ライセンスファイルの名前と場所は、ライセンスサーバの起動オプションによって指定できます。ライセンスサーバは、ライセンスファイルの先頭から順に最後まで読み込み、各ライセンスコードを順番に処理します。
すべての加算式ライセンスコードとアグリゲートライセンスコードは、すでに読み込まれたライセンスコードに追加されます。すべての排他式ライセンスコードは、すでに読み込まれたすべてのライセンスコード、および将来読み込まれる加算式ライセンスコードを無効にします。開始日として将来の日付が設定されたアグリゲートライセンスは、ライセンスサーバにロードすることはできますが、その開始日が来るまではリクエストや集約の対象にはなりません。
ライセンスサーバは、ライセンスファイルを見つけることができなくても動作し続けます。ライセンスサーバが動作している間、lslicなど他のプログラムからネットワーク上のライセンスコードを受け取ることができます。ライセンスサーバは、受け取った各ライセンスコードを、ライセンスファイルから読み取った場合と同じように処理します。また、ライセンスサーバは、指定に応じて、ライセンスファイルの最後にライセンスコードを追加します。
アプリケーションは、ネットワークライセンシングをサポートしている場合、次の場所でライセンスサーバを検索します。
ほとんどの場合、これはライセンスアプリケーションによって自動で行われます。ただし、ソフトウェアベンダは、LSFORCEHOST環境変数を使用して特定のライセンスサーバホストを設定するか、LSHOST環境変数によって複数のライセンスサーバを切り替えるよう、指示することがあります。
詳細については、クライアント ― 使用頻度の高い変数を参照してください。
アプリケーションは、ライセンスサーバを識別すると、1つまたは複数のライセンスに対するリクエストをライセンスサーバに向けて発行します。ライセンスサーバのホスト名は、ライセンスサーバコンピュータのネットワークアドレスに変換されます。アプリケーションは、そのネットワークアドレスに対し、ライセンスサーバのポートを介してリクエストを送信します。
ライセンスサーバは、ライセンスリクエストを受信すると、現在のライセンスコードに基づき、ライセンスを付与できるかどうかチェックします。付与できる場合、オーソリゼーションコードがクライアントコンピュータに返されます。付与できない場合、リクエストは拒否され、拒否コードがクライアントコンピュータに返されます。
いずれの場合も、ロギング機能が有効になっていれば、アクティビティはログファイルに記録されます。
各ライセンスコードには、ライセンス更新なしにアプリケーションがライセンスを保持できる最大期間が指定されています。クライアントは、いったんライセンスを受け取ったら、ライセンスサーバに対してライセンス更新を定期的にリクエストしなければなりません。
ライセンス更新の強制実行により、ライセンスサーバは、アプリケーションやクライアントコンピュータで問題が発生した場合にライセンスを回収できます。アプリケーションが指定期間内にライセンスを更新しなかった場合、アプリケーションはそのライセンスを失い、ライセンスサーバは別のユーザに対してそのライセンスを付与できるようになります。
この処理はアプリケーションによって実行されます。クライアントコンピュータのユーザには透過的に行われます。
ライセンスサーバは、上記のステップ 5 のライセンスリクエストの場合と同様にライセンス更新リクエストに応答します。
アプリケーションは、終了時に、ライセンスはもう必要ないというメッセージをライセンスサーバに送信します。それにより、ライセンスサーバは、ただちにそのライセンスを回収します。
ライセンスアプリケーションが更新リクエストを長期間にわたって送信しない場合、またはネットワークの問題が発生した場合は、一定期間経過後に自動的にライセンスが解放されます。それにより、ライセンスは他のライセンスリクエストに対して付与可能になります。
ライセンスオーソリゼーションコードがライセンスサーバに返却されると、ライセンスサーバはそのライセンスを別のユーザに対して付与できます。