Open-source telecoms. Operator-controlled.0.7.0-dev / Development preview ↗
Search all guides

Authorisation is not authentication alone

A valid signature identifies a request. It does not, by itself, grant a telephone service.

What the PBX proves

The activation claim contains token, public_key, timestamp, nonce and service, in that canonical order. The persistent Ed25519 key signs the encoded claim. The response must name the same local service. The module validates the authorised numbers, trunks and channel limits before using them.

What the operator decides

The compatible provider checks token entitlement, expiry, service ownership, status and key binding. The reference records nonces to prevent replay and binds a public key atomically on authorised first use. Customer portal authentication remains an independent authority.

What local root access means

A PBX administrator with root access controls the local machine. Commercial entitlements, upstream service limits and withdrawal must therefore remain authoritative at the provider. Local deactivation is not cancellation and cannot be used as proof that carrier service has ended.

Canonical claim field order

Canonical claim field order
{
  "token": "<privately supplied token>",
  "public_key": "<base64 Ed25519 public key>",
  "timestamp": 1800000000,
  "nonce": "<base64 of 24 random bytes>",
  "service": "example-service-01"
}

Keep credentials in their own roles

Keep credentials in their own roles
ValuePurposeNot sufficient for
Activation tokenAuthorised PBX/service linking under provider policyCustomer portal login or emergency management
Signing public keyVerification of the PBX’s signed claim after authorised bindingIndependent commercial entitlement
Customer sessionOperator authentication and permitted customer actionsUnchecked access to a foreign subscription or number
Selection receiptServer-observed offer evidence in an immutable resource scopePayment, reservation or number allocation