Skip to content

Document the viewer attributes OptiView Live reports on a rejected token - #867

Merged
frankforpresident merged 1 commit into
mainfrom
OLIVE-717-viewer-attributes
Sep 16, 2026
Merged

frankforpresident merged 1 commit into
mainfrom
OLIVE-717-viewer-attributes

Conversation

@frankforpresident

Copy link
Copy Markdown
Contributor

When a viewer's JWT is rejected, the OptiView Live CDN now returns an x-optiview-viewer header describing how it sees that viewer: the country, region, DMA code and device type it resolved, which are exactly the values the token's optiview geo and device restrictions are evaluated against. Comparing them against the issued token is what makes a rejected viewer debuggable, which an HTTP 403 on its own is not.

Adds a "Troubleshooting rejected viewers" section to the Live token-based security page, covering the attribute table, a worked 403 example, and the three caveats a reader would otherwise trip over: the values describe the viewer and not the rejection (every token-caused rejection reports the same attributes, so the header never says which restriction failed), only attributes the CDN could resolve are listed, and the header is exposed for cross-origin reads so browser players can read it.

Implemented in the cdn repo (PR #318, OLIVE-717); docs task is OLIVE-795.

Two deliberate omissions: the internal numeric reason code header is not documented (it is absent from these docs today and intentionally non-obvious), and CloudFront is not mentioned since it does not report the attributes yet (OLIVE-784).

Publish after the cdn change reaches production, since the header is not live for customers before that.

  • npx prettier --check on the page
  • npx mdxlint (the repo's spellcheck) on the page

@theoplayer-bot

This comment has been minimized.

@frankforpresident
frankforpresident merged commit 0b99ed5 into main Sep 16, 2026
4 checks passed
@MattiasBuelens
MattiasBuelens deleted the OLIVE-717-viewer-attributes branch September 16, 2026 16:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants