Skip to content
Distr
Book DemoStart free trialLogin
← Back to Glossary

Software Entitlement

A software entitlement defines what a customer is permitted to access. Learn how entitlements work for ISVs shipping on-prem, VPC, and air-gapped software.

What Is a Software Entitlement?

A software entitlement is the definition of what a customer is permitted to access — which software versions, features, or artifacts they are allowed to use based on their contract, subscription tier, or purchase.

Entitlements answer the question: what is this customer allowed to have?

A license key answers a different question: how do we enforce it?

The two concepts are related but distinct. An entitlement is the business rule. A license key is one mechanism for enforcing it.

Entitlements vs. License Keys

The terms are often used interchangeably, but they describe different things:

Entitlement — the right to access something. A customer on your Pro tier is entitled to version 2.x, module A, and module B. A customer on Basic is entitled to version 2.x and module A only. These rules live in your system of record.

License key — a cryptographic token that encodes and enforces those rights inside the running software. When your application reads {"plan": "pro", "modules": ["a", "b"], "seats": 25} from a signed JWT, it is reading the customer’s entitlement, packaged into an enforceable form.

You can have entitlements without license keys (enforced at the distribution layer instead), and you can issue license keys without a formal entitlement system behind them. Most mature ISVs end up needing both.

Where Entitlements Are Enforced

For software running in customer-controlled environments — on-prem data centers, self-managed VPCs, BYOC deployments, or air-gapped clusters — entitlements are typically enforced at two layers:

Distribution layer — controls which artifacts a customer can access. A customer with a Base tier entitlement can pull certain container images and Helm chart versions from your registry. A customer on Enterprise can access additional images, pre-release channels, or restricted modules. This enforcement happens before the software is ever deployed.

Runtime layer — controls what the running software does. A signed JWT license key embedded in a Kubernetes secret or environment variable lets your application verify entitlements at startup without any network call. It reads the payload, checks the signature against your public key, and enforces seat limits, feature flags, or expiry — even in a fully air-gapped environment.

Both layers matter. Distribution-layer enforcement stops unauthorized access to your artifacts. Runtime enforcement ensures the software behaves correctly once deployed, regardless of network connectivity.

Why Entitlements Are Different in On-Prem Software

In SaaS, entitlements are easy — you control the environment. You can block a UI element, gate an API route, or revoke a session. The enforcement lives in your infrastructure.

In on-prem, self-managed, VPC, or air-gapped deployments, you do not control the runtime. Your customer does. Enforcement has to be portable — it has to work inside their cluster, with no connection back to your servers, and no assumption that anything external is reachable.

This is why on-prem entitlement enforcement typically relies on cryptographic license keys: the entitlement data travels with the software, signed by you, verifiable offline.

How Distr Handles Entitlements

Distr manages entitlements at both layers for ISVs shipping to on-prem, VPC, BYOC, and air-gapped customers:

  • Application entitlements — control which customers can access specific application versions or receive deployments via Distr’s agents
  • Artifact entitlements — restrict access to container images, Helm charts, and other artifacts in your registry based on per-customer entitlements
  • License keys — signed JWT tokens you issue per customer, containing whatever your application needs to enforce at runtime

See License Management for how it works in practice.

Turn self-hosted into a repeatable sales motion

From your first on-prem POC to dozens of enterprise customers, the Distr platform gives you the tooling to deploy, update and manage self-managed customers, backed by a team that supports you hands-on with the deployment knowledge and implementation help.

Proof from teams shipping self-hosted software

GovCloud deployments without extra overhead

"Distr gives us a clean way to deploy and update our software in GovCloud without breaking security or adding operational overhead."

Corbin Klett

Corbin Klett

Co-Founder, Artifact

Manual operations become one-click workflows

"Our main goal is to simplify the daily operations. No more manual installations, updates, or rollbacks — everything can now be handled with a single click with Distr."

Jefferson Rodrigues

Jefferson Rodrigues

Co-Founder & CTO, Lerian

Read case study

Updates that took days now take minutes

"Distr eliminated nearly all deployment headaches. Updates that used to take days now take minutes."

Ansh Gupta

Ansh Gupta

CTO, Sophris.ai

Read case study

One place for every self-hosted customer

"Having a dedicated space for all our self-hosted customers that can manage authenticated registry access is great."

Derek Reynolds

Derek Reynolds

Product Engineer, Basedash

Read case study

From guided setup to scalable delivery

"We went from hands-on Docker setup calls to an install flow that can be running in minutes."

Daniel Kasen

Daniel Kasen

Chief Engineer for Customer Success, Ozgar AI

Read case study

Self-hosted without the engineering tax

"Weave has a fully self-hosted offering. It's a huge unlock for us, but we almost didn't build it. Distr made such a huge difference in getting us there."

Andrew Churchill

Andrew Churchill

Co-Founder & CTO, Weave

Read case study