# Conditional Access System and User Control | Vodlix

**Source:** https://vodlix.com/features/cas-user-control-manager  
**Summary:** Set who can watch each title, in which countries, from what age and until when. Vodlix checks entitlement, territory and screen limits at the stream, not in the interface.  
**Publisher:** Vodlix

---

## CAS & User control manager

Decide who may watch what, where and on how many screens, then have the platform enforce it at the stream rather than in the interface.

- **Feature Plan:** 2

- core-platform
- back-end

## Conditional Access, Decided Once and Enforced Everywhere

Every title carries its own rules about who may watch it, in which countries, from what age and between which dates. Every play request is checked against those rules before a stream is ever issued.

### Hiding the Button Is Not Access Control

It is very easy to build a streaming service where the paywall is a piece of interface. The title is greyed out, the play button is hidden, and everything looks correct until somebody opens the network tab and finds the stream sitting there unguarded. A conditional access system is the difference between a service that looks locked and one that is locked. In Vodlix the rules live on the content and on the account, and they are checked at the moment a stream is requested rather than at the moment a page is drawn. That is why the same rules hold on the website, in a mobile app you shipped last year and on a television in a country you have never sold to. Nothing has to be reimplemented per platform, because no platform is trusted to enforce it.

#### Rules that follow the licence

Choose the countries a title may be watched in, set the age it is suitable for, and give it a date after which it stops being available. Licences are territorial and temporary, so the controls are too.

#### A different answer per title

One title can be free to watch even for signed out visitors while the next is behind a subscription and a third is a rental. The default applies until a title overrides it, so exceptions do not become a project.

#### The file itself is closed

Direct access to your media without a recognised referrer can be blocked outright, so a stream URL that escapes into a forum does not become a free service for somebody else.

### Four Questions Before a Stream Starts

Every play request runs the same short interrogation. Who is asking, and are they signed in or a guest on something you have marked free to watch. Are they entitled to this title, through a plan that covers it, a rental whose window is still open, or an outright purchase. Are they somewhere the licence permits. And are they inside the number of screens their plan allows. Only when all four agree does a manifest get issued. Because the check happens at the stream rather than in the interface, an app that is out of date, a browser with a modified page, or a link somebody shared cannot talk their way past it. The entitlement half of that comes from your [subscription plans](/features/subscriptions-system) and your [rentals and purchases](/features/rental-purchases-manager), and the screen count from [device management](/features/device-management-system).

- mx-auto

### Closing the Door Behind the Player

Entitlement decides who is allowed to start a stream. It does nothing about a file that can simply be fetched. Blocking direct URL access closes that gap by refusing requests that do not arrive from one of your own properties, which is the single cheapest defence against a media link being pasted somewhere and quietly serving strangers on your bandwidth. The same screen governs what you are handing out in the first place. You choose which resolutions get generated, from 240p through to 2160p, with presets for a typical service, and you decide whether original uploads are kept alongside the transcoded versions. That last one is worth reading carefully, because allowing playback from the original before transcoding finishes is convenient and exposes the source file, which the interface says plainly rather than burying. Delivery itself runs on the [global CDN](/features/global-cdn), and what the viewer finally sees is the [video player](/features/customizable-video-player).

- mx-auto

### The Other Half Is People

Content rules answer what may be watched. The rest of conditional access is about who is doing the watching and who is running the platform. User levels keep viewers, staff and administrators apart, so somebody uploading episodes never has a route to your billing screens. Addresses that keep failing to sign in are locked out on their own, and accounts that are abusing the service can be banned without being deleted, which matters when the decision is later questioned. Registration itself can be closed, opened only on the web, or gated behind email verification and a code sent to the viewer. None of that is a separate product bolted on the side. It is the same set of records described under [user management](/features/user-management), and it is all reachable from your own systems through the [REST API](/features/restful-api) when a fraud tool or an internal dashboard needs to act on it.

**Q: What is a conditional access system?**

A conditional access system decides, at the moment somebody presses play, whether they are allowed to watch that particular thing. It weighs up who they are, what they have paid for, where they are and how many screens they already have running. The important part is that it is enforced when the stream is requested, not by hiding a button in the interface.

**Q: Can I restrict a title to certain countries?**

Yes. Each title carries its own list of countries it may be watched in, defaulting to all of them until you narrow it. That is usually driven by the licence rather than by preference, which is why the setting sits on the title itself rather than on the platform, so two films acquired on different terms can have different territories.

**Q: Can content expire automatically?**

It can. A title can be given a date after which it stops being available, which matters because most licences run out. Setting it when you add the content means a window closing is something that just happens rather than something somebody has to remember on the day.

**Q: Can one title be free while the rest of the catalogue is paid?**

Yes. A title can override the platform default and be marked free to watch, in which case even a signed out visitor can play it. That is how most services run a trailer, a pilot episode or a promotional title without weakening the paywall around everything else.

**Q: What stops somebody sharing a stream URL?**

Direct URL access can be blocked so that requests arriving without a recognised referrer are refused, which means a media link pasted into a forum or a messaging app does not work for whoever finds it. It is the cheapest and most commonly skipped protection in streaming, and it costs nothing to switch on.

**Q: Can I set an age rating on a title?**

Yes. Titles carry a maturity level along with content rating tags and an MPAA rating, so a catalogue can be filtered by what is appropriate rather than only by genre. That is often a regulatory requirement rather than a nicety, particularly for services that carry both family and adult programming.

**Q: Do these rules apply in the mobile and TV apps too?**

They do, and that is the whole point of enforcing at the stream. An app cannot decide for itself that somebody is entitled, because it is never asked. It requests a stream and the platform either issues one or does not, which is why an old app version cannot become a way around your rules.

**Q: How do I stop a staff member seeing things they should not?**

User levels separate viewers, staff and administrators, so access to billing, settings and account records can be kept away from people whose job is publishing content. Everybody signs in as themselves rather than sharing a login, which also means you can tell who did what afterwards.
