Skip to main content

JWT-Based Licensing

Pentora Enterprise uses JWT tokens for license management and feature gating.

License Structure

JWT payload:

{
"customer_id": "company-123",
"license_id": "lic-456",
"plan": "enterprise",
"features": [
"distributed",
"multi_tenant",
"compliance_packs",
"siem_integrations"
],
"allowed_agents": 50,
"issued_at": 1696608000,
"expiry": 1728230400
}

Signed with Ed25519/ECDSA key.

License File

Location: <workspace>/config/license.key

# Install license
cp license.key ~/.local/share/pentora/config/

# Verify license
pentora license verify

# View license details
pentora license show

Feature Gating

Code checks features at runtime:

if feature.Check("distributed") {
// Enable distributed scanning
} else {
return errors.New("distributed scanning requires Enterprise license")
}

Offline Grace Period

License allows 7-day offline operation before requiring refresh.

License Renewal

# Check expiry
pentora license show

# Refresh from server
pentora license refresh

# Manual update
cp new-license.key ~/.local/share/pentora/config/license.key
pentora server restart

Expiry warnings: 30 days, 7 days, 1 day before expiration.

See Server Commands for management.