Unity Licensing Client の設定
ユーザーのコンピューターで Unity Licensing Client を実行するには、サービス設定ファイル (services-config.json
) をライセンスサーバーからコピーする必要があります。
必要に応じて、設定をカスタマイズすることができます。
設定ファイルのコピー
services-config.json
という名前の JSON ファイルには、Unity Licensing Client の設定が格納されています。サーバー設定コマンド を実行すると、ライセンスサーバー上にファイルが生成されます。生成された JSON ファイルには、以下の設定が格納されます。
{
"licensingServiceBaseUrl": "http://SERVER-IP-ADDRESS:PORT",
"enableEntitlementLicensing": true,
"hubEnableWorkOffline": true,
"clientConnectTimeoutSec": 60,
"clientHandshakeTimeoutSec": 30
}
ライセンスサーバー上から Unity エディターを実行する各クライアントコンピューターに services-config.json
をコピーします。以下の表で指定されているパスにファイルをコピーします。フォルダーが存在しない場合は作成してください。
プラットフォーム | サービス設定パス |
---|---|
Windows | %PROGRAMDATA%\Unity\config\ |
macOS | /Library/Application Support/Unity/config/ |
Linux | /usr/share/unity3d/config/ |
対応する設定キー
クライアント設定をカスタマイズする必要がある場合は、以下のキーを設定できます。
キー | 説明 |
---|---|
licensingServiceBaseUrl | フローティングライセンスサーバーのネットワークアドレスを指定します。ライセンスクライアントは、このアドレスの異なるエンドポイントに接続して、リースとライセンスをリクエストします。 |
enableEntitlementLicensing | エンタイトルメントライセンスを有効にします。Unity エディターのバージョンが 2022.1 以降の場合、この設定を変更しても影響はありません。 Unity サポートから指示がない限り、この値を変更しないでください。 |
hubEnableWorkOffline | クライアントがフローティングライセンスをチェックアウトしてオフラインで作業できるかどうかを指定します。 |
clientConnectTimeoutSec | エディターが Unity Licensing Client に接続する場合のタイムアウト期間 (秒単位) を指定します。この期間が経過すると操作が終了します。このタイムアウトは、Unity Licensing Client の起動とプロセス間の接続の確立の両方に適用されます。
|
clientHandshakeTimeoutSec | Unity Licensing Client へのハンドシェイク API 呼び出しを確立する場合のタイムアウト期間 (秒単位) を指定します。この期間が経過すると操作が終了します。
|
clientResolveEntitlementsTimeoutSec | エディターが Unity Licensing Client にエンタイトルメントをクエリする場合のタイムアウト期間 (秒単位) を指定します。この期間が経過すると操作が終了します。
|
clientUpdateLicenseTimeoutSec | エディターがライセンス API への更新呼び出しを行う場合のタイムアウト期間 (秒単位) を指定します。この期間が経過すると操作が終了します。
|
licensingServiceTimeoutSec | サーバーバージョン 1.11 以降に適用されます。ライセンスサーバーからのレスポンスを受け取る場合のタイムアウト (秒単位) を設定します。デフォルト値は 60 秒です。有効な値は 10 から 300 までです。 バージョン 1.10 以前では 10 秒に固定されていました。 |
toolset | ライセンスサーバーからリクエストする製品ライセンスを指定します。 サーバーは、クライアントに一度に 1 つの製品ライセンスを提供します。優先するライセンスの順に、カンマ区切り文字列を指定できます。使用可能な製品 ID を表示するには、Server Administration Status (サーバー管理状態) ページ に移動し、 licenseEntitlementGroupId 以下のリストを表示します。サーバーは、指定された順序で各ライセンスを処理します。ライセンスが使用可能でない場合、リスト内の次のライセンスに移動します。toolset 値を指定しない場合、デフォルトのツールセットを提供します。デフォルトのツールセットの詳細については、サーバーの詳細設定 を参照してください。 サーバーライセンスの変更がツールセット設定に与える影響については、以下を参照してください。 - ライセンス更新がクライアント設定に与える影響 - ライセンスリニューアルがクライアント設定に与える影響 |
licenseClientApplicationPath | Unity Licensing Client 実行ファイルのフルパスを指定します。 Unity Hub バージョン 2.3.0 以降または Unity エディター 2019.2 以降では使用されません。 |
enableFloatingApi | クライアントでフローティングライセンス API を有効にします。 Unity Licensing Client バージョン 1.3.0 以前を使用している場合にのみ、このフラグを設定します。 |
設定ファイルの検証
各変更の後に、設定ファイル内の JSON が構文的に有効であることを確認します。JSON 検証ツールを使用するか、以下のようなコンソールコマンドを利用することで確認できます。
python -m json.tool services-config.json
検証に成功するとコンソールに JSON ファイルのコンテンツが表示され、失敗するとエラーが表示されます。
クライアント上でのテスト
Unity Licensing Client をテストする前に、Unity エディターの場所をご確認ください。Locate the Editor program file を参照してください。Unity エディターのデフォルトのインストールパスは以下の通りです。
- Windows:
"C:\Program Files\Unity\Hub\Editor\<version>\Editor\Unity.exe"
- macOS:
/Applications/Unity/Hub/Editor/<version>/Unity.app
- Linux:
/Applications/Unity/Hub/Editor/<version>/Unity.app
以下のステップに従ってクライアント設定をテストします。
コマンドプロンプト (Windows) またはターミナルのアプリケーション (masOS) を開きます。
エディターディレクトリ内にある Unity Licensing Client ディレクトリに移動します。
- Windows:
<UnityEditorDir>\Data\Resources\Licensing\Client
- macOS (エディターバージョン 2021.3.19f1 以降):
<UnityEditorDir>/Contents/Frameworks/UnityLicensingClient.app/Contents/MacOS/
- macOS (2021.3.19f1 より前のエディターバージョン):
<UnityEditorDir>/Contents/Frameworks/UnityLicensingClient.app/Contents/Resources/
- Linux:
<UnityEditorDir>/Data/Resources/Licensing/Client/
- Windows:
以下のコマンドを実行します。
Windows:
.\Unity.Licensing.Client.exe --acquire-floating
macOS:
./Unity.Licensing.Client --acquire-floating
Linux:
./Unity.Licensing.Client --acquire-floating
設定が有効な場合、サーバーはフローティングライセンスをトークン識別子とともに割り当てます。コンソール出力は、以下の例のようになります。
Trying to acquire floating license from: 10.1.34.126 ...
License lease Created with token e8b1afba-895d-4c54-aa50-5eadcc4d95a7.
Expires: July 12, 2019 6:47:57 PM