Opaque session token
Definition
An identifier that carries no meaning to whoever holds it — it references server-side state rather than describing it, so a client cannot read it, modify it, or guess a neighbouring value.
The contrast is with a transparent identifier. If a viewer addresses documents by /view?file=/records/2026/patient-4417.pdf, the client learns your directory layout, your naming convention and that patient 4416 probably exists. Incrementing an integer is the oldest document-leak bug there is, and it is still being written today.
An opaque token removes the entire category. The server holds the mapping from token to document; the client holds a string it cannot interpret. Enumeration stops being possible because there is nothing to enumerate.
Opaque does not mean harmless. A token still authorizes access to whatever it references, so it should be treated as a short-lived credential: not logged, not put in URLs that end up in analytics, not persisted client-side beyond the life of the view.
In Doconut
Viewer.OpenDocumentAsync() returns an opaque token that the JavaScript widget presents to fetch pages. It is not a document identifier and should never be logged, cached client-side beyond the viewer, or reused across sessions.
Related terms
Server-side document rendering
Converting a document into page images on the server, so the browser displays rendered pages rather than parsing the original file itself.
Document viewer SDK
A library you embed in your own application so it can display documents, as distinct from a hosted service you upload documents to. The SDK runs inside your process; the service runs inside somebody else's.
Web farm deployment
Running one application across several servers behind a load balancer, so consecutive requests from the same user may be handled by different machines.