Så snart en video er offentlig, kan alle som kan lese kildekoden til siden din, kopiere adressen. Noen ganger er det greit. Ofte er det ikke det: et annet nettsted bygger inn spilleren din og bruker opp trafikken din, en lisens gjelder bare enkelte land, eller en blokk med adresser skraper biblioteket ditt gang på gang. UFOLOAD gir deg flere kontroller for dette, og de virker på ulike lag. Denne artikkelen forklarer hva hver av dem gjør, hvordan samsvarsreglene fungerer og hvor hver kontroll stopper, slik at du kan kombinere dem fornuftig i stedet for å stole på én enkelt bryter.
Kontrollene i korte trekk
| Kontroll | Hva den begrenser | Hvor du stiller den inn |
|---|---|---|
| Tillatte innbyggingsdomener | Hvilke nettsteder som kan vise spilleren din i en iframe | Spillerstudio, fanen Tilgang |
| Blokkerte land | Seere fra landene på listen | Spillerstudio, fanen Tilgang |
| Blokkerte IP-adresser | Enkeltadresser og masker | Spillerstudio, fanen Tilgang |
| Tillatte nedlastingsdomener | Hvilke nettsteder som kan åpne nedlastingssiden | Spillerstudio, fanen Tilgang |
| Signerte lenker med levetid | Hvor lenge en avspillingsadresse er gyldig, og for hvem | API, POST /files/{id}/links |
Alt på denne listen hører til spiller- og leveringsinnstillingene for kontoen din og gjelder alle videoene dine. Reglene er tilgjengelige på alle planer; bare selve nedlastingsknappen er forbeholdt Pro- og Max-planene, slik prissiden viser.
Steg 1: lås innbygging til dine domener
Innbyggingsspilleren kjører i en iframe på en annens side, og nettleseren forteller den hvilken side det er via referreren. Spilleren sender denne verten videre til serveren, som sammenligner den med listen din. Står verten ikke på listen, avviser serveren med 403, og spilleren viser en melding om at videoen ikke er tilgjengelig i stedet for videoen.
Samsvarsreglene er strenge, og det lønner seg å kjenne dem nøyaktig:
example.comtillater akkurat den verten og ingenting annet. Den tillater ikkewww.example.com.*.example.comtillater alle underdomener avexample.com, men ikke selveexample.com. For å dekke et nettsted og underdomenene må du føre opp begge oppføringene.- Store og små bokstaver spiller ingen rolle, og porter og et avsluttende punktum ignoreres, så
Example.com:8080samsvarer medexample.com. - Listen har plass til opptil 100 oppføringer. En tom liste betyr at spilleren kan bygges inn hvor som helst, noe som er standard.
- Skriv rene vertsnavn. Limer du inn en full adresse ved en feil, beholdes bare verten.
Legg til alle verter du faktisk bygger inn på, også test- og forhåndsvisningsdomener, før du slår på listen. En video som plutselig viser en melding om at den ikke er tilgjengelig på ditt eget testnettsted, er den vanligste overraskelsen.
Hva domenelåsing ikke gjør
Denne kontrollen stopper tilfeldig hotlinking: at noen limer iframen din inn på sin side. Den er ingen sikkerhetsgrense, og det er greit å vite hvorfor. Kontrollen bygger på referreren som nettleseren sender. Fjerner en side referreren, kan ikke spilleren se hvor den er bygget inn, og da blokkerer den ikke, fordi personverninnstillinger og referrer-policyer ellers ville ødelagt legitime innbygginger. På samme måte kan en målbevisst besøkende som kopierer den signerte adressen til spillelisten fra nettverkspanelet, spille den av et annet sted til den utløper, fordi segmentene kontrolleres ut fra signaturen på lenken og ikke ut fra siden som ber om dem. Den offentlige avspillingssiden til en video begrenses heller ikke av domenelisten: alle med lenken kan åpne den.
Tenk derfor på listen som et gjerde som holder ærlige naboer ute. For sterkere kontroll over en strøm du leverer selv, bruker du signerte lenker, som beskrives nedenfor. Trenger du det motsatte, en video bare utvalgte personer kan nå, bør du merke deg at UFOLOAD ikke har private videoer og ingen DRM; les egen hosting kontra gratisplattformer kontra en videohost før du stoler på tjenesten for konfidensielt innhold.
Steg 2: blokker land og IP-adresser
Regler for land og IP håndheves to steder: når en seer åpner avspillings- eller innbyggingssiden, og på hver forespørsel etter spillelisten og segmentene i leveringslaget. Leveringskontrollene gjøres for hver forespørsel i stedet for å mellomlagres, så en regel du legger til, gjelder allerede fra neste segment, og den som allerede har en lenke, kan ikke omgå regelen ved å beholde den.
- Land angis som tobokstavskoder etter ISO 3166-1 alpha-2, skilt med komma, for eksempel
US, CN, RU. Seerens land slås opp fra IP-adressen i en database for geolokasjon. Hver liste har plass til opptil 100 oppføringer. - IP-adresser kan være én enkelt adresse som
203.0.113.7eller en maske med stjerne i siste oktett som203.0.113.*, som dekker hele området på 256 adresser. IPv6-adresser kan føres opp nøyaktig.
To praktiske forbehold. Masker er grove: en .*-maske på et mobil- eller kontornett blokkerer alle legitime brukere bak det. Og IP-basert geografi er aldri mer nøyaktig enn adressedataene bak den. Besøkende på VPN eller proxy ser ut til å være der utgangsnoden er, så en landblokkering er en måte å redusere uønsket trafikk på eller å respektere en regional lisens i god tro, ikke en garanti.
Du blir ikke blokkert av dine egne regler så lenge du er innlogget som medlem av organisasjonen som eier videoen, og det blir heller ikke supportteamet vårt. Det er med vilje, slik at du ikke låser deg ute av ditt eget bibliotek ved å blokkere ditt eget land, men det betyr også at du må teste fra en utlogget nettleser eller et annet nettverk.
Signerte lenker for din egen spiller
Spiller du av strømmen på din egen side med hls.js (se innbygging av en HLS-video), er domenelisten ikke involvert, fordi spilleren aldri ber UFOLOAD-siden om tillatelse. Kontrollen ligger i selve lenken. POST /api/v1/files/{id}/links utsteder avspillings- og nedlastingslenker med en levetid fra 60 sekunder til 30 dager. Legg til bind_ip for å knytte lenken til én IPv4-adresse, eller bind_cookie for å knytte den til en informasjonskapselverdi som serveren din setter for den besøkende; svaret oppgir da navnet på informasjonskapselen som må følge med forespørselen.
curl -X POST "https://ufoload.com/api/v1/files/FILE_ID/links" \
-H "Authorization: Bearer $UFOLOAD_API_KEY" \
-H "Content-Type: application/json" \
-d '{"ttl": 600, "bind_ip": "203.0.113.7"}'Kort levetid kombinert med binding er det sterkeste verktøyet som finnes: en lenke kopiert fra siden din er ubrukelig etter noen minutter og ubrukelig fra alle andre adresser. Prisen er at du må utstede lenker fra serveren din ved hver sidevisning, som er mønsteret som guiden om opplasting og API og API-dokumentasjonen beskriver.
Nedlastingsdomener
Spillere på Pro- og Max-planene kan vise en nedlastingsknapp. En egen liste, tillatte nedlastingsdomener, fungerer akkurat som innbyggingslisten, men styrer hvilke nettsteder som kan åpne nedlastingssiden i en ramme. La den stå tom for å tillate alle nettsteder. Besøkende som åpner nedlastingssiden direkte på UFOLOAD, begrenses ikke, akkurat som med avspillingssiden.
Steg 3: lagre og test
- Lagre listene på fanen Tilgang.
- Åpne en side på et tillatt domene i et privat vindu og bekreft at videoen spilles av. Sjekk også varianten med underdomene.
- Åpne den samme innbyggingen fra et domene som ikke står på listen, for eksempel en lokal testside servert fra et annet vertsnavn, og bekreft at spilleren viser meldingen om at videoen ikke er tilgjengelig.
- For en land- eller IP-regel tester du utlogget, fra et nettverk som samsvarer med regelen hvis du har et.
- Hold referrer-policyen på din egen side på en fornuftig verdi, for eksempel
strict-origin-when-cross-origin. En policy påno-referrerskjuler verten for spilleren, som da ikke kan håndheve listen.
Brukt sammen dekker en innbyggingsliste og kortlivede signerte lenker de fleste reelle tilfeller: tilfeldig hotlinking stoppes i døren, og den som går lenger, må jobbe for en lenke som utløper. Når annonser er tilgjengelige og du kjører dem i spilleren, forklarer guiden om inntjening annonseformatene og hvordan pausene planlegges. Oversikten over alt som finnes i spilleren, står på funksjonssiden, og sjekklisten for videohosting viser hvilke tilgangskontroller du bør kreve av enhver leverandør.
Last opp en video og få en HLS-spiller og en API-nøkkel på få minutter. Grensene for hver plan står på prissiden.