Kun video on julkinen, kuka tahansa sivusi lähdekoodin lukeva voi kopioida sen osoitteen. Joskus se on ok. Usein ei: toinen sivusto upottaa soittimesi ja kuluttaa liikennettäsi, lisenssi kattaa vain osan maista tai jokin osoitealue kaapii kirjastoasi jatkuvasti. UFOLOAD tarjoaa tähän useita keinoja, ja ne toimivat eri kerroksissa. Tässä artikkelissa kerrotaan, mitä kukin tekee, miten vastaavuussäännöt toimivat ja missä kunkin teho loppuu, jotta voit yhdistellä niitä järkevästi sen sijaan, että luottaisit yhteen kytkimeen.
Keinot yhdellä silmäyksellä
| Keino | Mitä se rajoittaa | Missä se asetetaan |
|---|---|---|
| Sallitut upotusverkkotunnukset | Mitkä sivustot saavat näyttää soittimesi iframessa | Soitinstudio, Pääsy-välilehti |
| Estetyt maat | Katsojat luetelluista maista | Soitinstudio, Pääsy-välilehti |
| Estetyt IP-osoitteet | Yksittäiset osoitteet ja maskit | Soitinstudio, Pääsy-välilehti |
| Sallitut latausverkkotunnukset | Mitkä sivustot saavat avata lataussivun | Soitinstudio, Pääsy-välilehti |
| Allekirjoitetut linkit voimassaoloajalla | Kuinka kauan toisto-osoite on voimassa ja kenelle | API, POST /files/{id}/links |
Kaikki tämän listan kohdat kuuluvat tilisi soitin- ja jakeluasetuksiin ja koskevat kaikkia videoitasi. Säännöt ovat käytettävissä kaikissa paketeissa; vain itse Lataa-painike on rajattu Pro- ja Max-paketteihin, kuten hinnoittelusivu kertoo.
Vaihe 1: lukitse upotus omiin verkkotunnuksiisi
Upotussoitin toimii iframessa jonkun toisen sivulla, ja selain kertoo sille referrerin avulla, mikä sivu on kyseessä. Soitin välittää tämän isäntänimen palvelimelle, joka vertaa sitä listaasi. Jos isäntänimi ei ole listalla, palvelin vastaa koodilla 403 ja soitin näyttää videon sijaan ilmoituksen, ettei video ole saatavilla.
Vastaavuussäännöt ovat tiukat, ja ne kannattaa tuntea tarkasti:
example.comsallii täsmälleen tämän isäntänimen eikä mitään muuta. Se ei salli osoitettawww.example.com.*.example.comsallii kaikki verkkotunnuksenexample.comaliverkkotunnukset, mutta ei pelkkääexample.com. Kattaaksesi sivuston ja sen aliverkkotunnukset lisää molemmat merkinnät.- Kirjainkoolla ei ole merkitystä, ja portit sekä loppupiste ohitetaan, joten
Example.com:8080vastaa merkintääexample.com. - Listaan mahtuu enintään 100 merkintää. Tyhjä lista tarkoittaa, että soittimen saa upottaa minne tahansa, mikä on oletus.
- Kirjoita pelkät isäntänimet. Jos liität vahingossa koko osoitteen, siitä säilytetään vain isäntänimi.
Lisää jokainen isäntänimi, jolle oikeasti upotat, myös testi- ja esikatseluverkkotunnukset, ennen kuin otat listan käyttöön. Yleisin yllätys on video, joka yhtäkkiä näyttää omalla testisivustollasi ilmoituksen, ettei se ole saatavilla.
Mitä verkkotunnuslukitus ei tee
Tämä keino pysäyttää satunnaisen hotlinkkauksen eli sen, että joku liittää iframesi omalle sivulleen. Se ei ole tietoturvaraja, ja syy kannattaa ymmärtää. Tarkistus perustuu selaimen lähettämään referreriin. Jos sivu poistaa referrerin, soitin ei tiedä, mihin se on upotettu, eikä se siinä tapauksessa estä toistoa, koska muuten yksityisyysasetukset ja referrer-käytännöt rikkoisivat oikeutettuja upotuksia. Samoin päättäväinen vierailija, joka kopioi allekirjoitetun soittolistan osoitteen verkkopaneelista, voi toistaa sen muualla sen vanhenemiseen asti, koska segmentit tarkistetaan linkin allekirjoituksen eikä niitä pyytävän sivun perusteella. Myöskään videon julkista katselusivua verkkotunnuslista ei rajoita: kuka tahansa, jolla on sen linkki, voi avata sen.
Ajattele listaa siis aitana, joka pitää rehelliset naapurit ulkona. Jos tarvitset vahvemman hallinnan itse tarjoamaasi striimiin, käytä alla kuvattuja allekirjoitettuja linkkejä. Jos tarvitset päinvastaista eli videota, jonka vain valitut ihmiset tavoittavat, huomaa, ettei UFOLOADissa ole yksityisiä videoita eikä DRM:ää; lue oma palvelin, ilmaiset alustat vai videohosting ennen kuin luotat siihen luottamuksellisen sisällön kanssa.
Vaihe 2: estä maita ja IP-osoitteita
Maa- ja IP-sääntöjä valvotaan kahdessa kohdassa: kun katsoja avaa katselu- tai upotussivun, ja jokaisessa soittolistan ja segmenttien pyynnössä jakelukerroksessa. Jakelun tarkistukset tehdään jokaiselle pyynnölle erikseen eikä niitä välimuistiteta, joten lisäämäsi sääntö koskee jo seuraavaa segmenttiä, eikä linkin jo saanut voi kiertää sääntöä pitämällä linkin.
- Maat ovat kaksikirjaimisia ISO 3166-1 alpha-2 -koodeja pilkuin erotettuina, esimerkiksi
US, CN, RU. Katsojan maa haetaan IP-osoitteen perusteella paikannustietokannasta. Kuhunkin listaan mahtuu enintään 100 merkintää. - IP-osoitteet voivat olla yksittäisiä osoitteita, kuten
203.0.113.7, tai maskeja, joissa viimeisessä oktetissa on tähti, kuten203.0.113.*, joka kattaa koko 256 osoitteen alueen. IPv6-osoitteet voi luetella tarkkoina.
Kaksi käytännön varoitusta. Maskit ovat karkeita: .*-maski mobiili- tai toimistoverkossa estää jokaisen sen takana olevan oikeutetun käyttäjän. Lisäksi IP-pohjainen sijainti on vain niin tarkka kuin sen taustalla oleva osoitedata. VPN:n tai välityspalvelimen käyttäjät näyttävät olevan siellä, missä poistumissolmu on, joten maaesto on keino vähentää ei-toivottua liikennettä tai noudattaa alueellista lisenssiä hyvässä uskossa, ei tae.
Omat sääntösi eivät estä sinua, kun olet kirjautuneena videon omistavan organisaation jäsenenä, eivätkä ne estä tukihenkilöstöämme. Tämä on tarkoituksellista, jotta oman maasi estäminen ei lukitse sinua ulos kirjastostasi, mutta se tarkoittaa myös, että sinun on testattava uloskirjautuneella selaimella tai toisesta verkosta.
Allekirjoitetut linkit omalle soittimellesi
Jos toistat striimin omalla sivullasi hls.js:llä (katso HLS-videon upottaminen), verkkotunnuslista ei ole mukana, koska soitin ei koskaan pyydä lupaa UFOLOADin sivulta. Hallinta tulee itse linkistä. POST /api/v1/files/{id}/links luo toisto- ja latauslinkkejä, joiden voimassaoloaika on 60 sekunnista 30 päivään. Lisää bind_ip sitoaksesi linkin yhteen IPv4-osoitteeseen tai bind_cookie sitoaksesi sen evästeen arvoon, jonka palvelimesi asettaa vierailijalle; vastaus kertoo silloin evästeen nimen, jonka on oltava pyynnön mukana.
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"}'Lyhyt voimassaoloaika yhdistettynä sidontaan on vahvin käytettävissä oleva työkalu: sivultasi kopioitu linkki on hyödytön muutamassa minuutissa ja hyödytön mistä tahansa muusta osoitteesta. Hintana on, että sinun on luotava linkit palvelimellasi jokaisella sivunäytöllä; tätä mallia kuvaavat lataus- ja API-opas ja API-dokumentaatio.
Latausverkkotunnukset
Pro- ja Max-pakettien soittimissa voi näkyä Lataa-painike. Erillinen lista, sallitut latausverkkotunnukset, toimii täsmälleen kuten upotuslista, mutta se määrää, mitkä sivustot saavat avata lataussivun kehyksessä. Jätä se tyhjäksi salliaksesi kaikki sivustot. Lataussivun suoraan UFOLOADissa avaavia vierailijoita ei rajoiteta, aivan kuten katselusivullakaan.
Vaihe 3: tallenna ja testaa
- Tallenna listat Pääsy-välilehdellä.
- Avaa sallitun verkkotunnuksen sivu yksityisessä ikkunassa ja varmista, että video toistuu. Tarkista myös aliverkkotunnusversio.
- Avaa sama upotus verkkotunnukselta, joka ei ole listalla, esimerkiksi toisella isäntänimellä tarjottavalta paikalliselta testisivulta, ja varmista, että soitin näyttää ilmoituksen, ettei video ole saatavilla.
- Testaa maa- tai IP-sääntöä uloskirjautuneena, mieluiten verkosta, johon sääntö osuu, jos sellainen on käytettävissä.
- Pidä oman sivusi referrer-käytäntö järkevässä arvossa, kuten
strict-origin-when-cross-origin. Käytäntöno-referrerpiilottaa isäntänimen soittimelta, jolloin se ei voi valvoa listaa.
Yhdessä käytettyinä upotuslista ja lyhytikäiset allekirjoitetut linkit kattavat useimmat todelliset tilanteet: satunnainen hotlinkkaus pysähtyy ovelle, ja pidemmälle menevän on nähtävä vaivaa linkin eteen, joka vanhenee. Kun mainoksia on saatavilla ja näytät niitä soittimessa, ansaintaopas kertoo mainosmuodoista ja taukojen ajoittamisesta. Luettelo kaikesta, mitä soittimessa on, löytyy ominaisuussivulta, ja videohostingin tarkistuslista näyttää, mitä pääsynhallintaa kannattaa vaatia miltä tahansa palveluntarjoajalta.
Lataa video ja saat HLS-soittimen ja API-avaimen muutamassa minuutissa. Pakettien rajat löytyvät hinnoittelusivulta.