License Manager Changes
Table of Contents
License Manager Changes
The new implementation keeps backward compatibility for standard On-Premise installations, while adding support for Kubernetes environments where a stable machine MAC address is not available for licensing.
2. Main Changes
2.1 LicenseManagerRunner Removed
LicenseManagerRunner.exe has been removed.
LicenseManager.exe can now be started directly without using the runner.
This is possible because the License Manager now runs only on the customer's computer and no longer connects
directly to the database. Therefore, there is no longer a need for the runner to additionally protect
Encryption:Key.
LicenseManager.exe directly.
2.2 Two Operating Modes
The License Manager now supports two operating modes:
- On-Premise
- Private Kubernetes
The required mode is selected in the License Manager UI using the Private K8s checkbox.
| Private K8s Checkbox | Selected Mode |
|---|---|
| Unchecked | On-Premise mode |
| Checked | Private Kubernetes mode |
3. On-Premise Mode
In On-Premise mode, the behavior remains unchanged from previous versions.
The generated License.lic file contains all required license information, including:
- License parameters
- MAC address of the target machine
4. Private Kubernetes Mode
Private Kubernetes deployments work differently because Kubernetes does not provide a stable machine MAC address that can be reliably used for licensing.
Token property.
4.1 Prerequisites
Before generating a license for a Private Kubernetes environment, the following prerequisites must be completed on the computer running the License Manager:
- Install the
ConsistNagixSigningCertcertificate. - Configure
Encryption:Keyinappsettings.json.
The Encryption:Key value should be stored as plain text.
{
"Encryption": {
"Key": "PLAIN_TEXT_ENCRYPTION_KEY_VALUE"
}
}
Encryption:Key because the License
Manager runs only on the customer's computer.
4.2 Security Note
ConsistNagixSigningCert certificate and the
Encryption:Key value are sensitive secrets. They must not be stored in public repositories,
shared folders, unsecured documentation, or any other public/shared location.
For the current implementation, both the certificate and the encryption key can be obtained from Nik.
4.3 Generated License
In Private Kubernetes mode, the generated License.lic file contains:
- All standard license information
- No MAC address
- An additional
Tokenproperty
The Token is a digitally signed string.
4.4 Token Content
The Token contains:
- Encryption key as a string
- License expiration date as a datetime value
The Token is digitally signed using the ConsistNagixSigningCert certificate.
This prevents manual modification of the token content.
5. License Content Comparison
| Item | On-Premise Mode | Private Kubernetes Mode |
|---|---|---|
| License parameters | Included | Included |
| MAC address | Included | Not included |
| Token | Not required | Included |
| Encryption key | Handled by existing On-Premise flow | Stored inside the signed token |
| Expiration date | Stored in the standard license information | Stored in the signed token |
| Backward compatibility | Expected to remain compatible | New deployment-specific behavior |
6. Runtime Behavior
When a Private Kubernetes license is applied, NAGIX performs the following actions:
- Validates the
Tokensignature. - Stores the
Tokenin the database. - Uses the
Tokenlater to obtain the encryption key. - Uses the
Tokenlater to verify the license expiration date.
7. Summary
| Area | Change |
|---|---|
| Runner | LicenseManagerRunner.exe was removed. |
| Startup | LicenseManager.exe can be started directly. |
| Modes | The License Manager supports On-Premise and Private Kubernetes modes. |
| On-Premise | Existing behavior remains unchanged. |
| Private Kubernetes | The license does not contain a MAC address and includes a signed token instead. |
| Security | The signing certificate and encryption key must be protected as sensitive secrets. |