Secure token
Secure token — бұл CDN-ресурс файлдарын қалаусыз жүктеп алудан қорғауға мүмкіндік беретін, жеке кабинетте қосылатын опция. Secure token көмегімен контентке уақытша қолжетімділікті ұйымдастырып, деректеріңіздің қауіпсіздігін қамтамасыз етуге болады.
Егер Secure token опциясы қосулы болса, CDN арқылы таратылатын файлдарға қолжетімділік арнайы кодты (secure token) қамтитын қолтаңбаланған сілтемелер арқылы ғана жүзеге асырылады. Пайдаланушы сілтеме бойынша өткен кезде CDN алынған secure token-ді ресурс құпия кілтінен және сұрау параметрлерінен есептелген хэшпен салыстырады да, нәтижесіне қарай контентке қолжетімділікке рұқсат береді немесе тыйым салады.
Контенттің бір бөлігіне кәдімгі сілтемелер арқылы қолжетімділікті ұйымдастыру үшін, ол үшін бөлек ресурс жасаңыз және жеке бастауы болсын.
Қолтаңбаланған сілтеме келесі түрде болады:
http://cdn.example.com/files/image.jpg?md5=CUQ1rzAvtQCxwLS&expires=1301605293
Мұнда:
-
md5=CUQ1rzAvtQCxwLS— мына мәндерді қамтитын жолдың md5-хэші түріндегі secure token:- құпия кілт;
- сілтеменің әрекет ету мерзімі;
- бастаудағы файлға жол;
- (қалауыңызша) рұқсат етілген IP мекенжайы.
-
expires=1301605293— Unix-уақыт пішіміндегі сілтеменің әрекет ету мерзімі.
Қолтаңбаланған сілтемені осы мақсат үшін алдын ала арнайы скрипт қосылуы тиіс сайтыңыз жасайды.
<?php$secret = '<СЕКРЕТНЫЙ_КЛЮЧ>';$path = '<ПУТЬ_К_ФАЙЛУ>';$expires = time() + <СРОК_ДЕЙСТВИЯ_ССЫЛКИ>;$hostname = '<ДОМЕННОЕ_ИМЯ>';$link = "$expires$path $secret";$md5 = md5($link, true);$md5 = base64_encode($md5);$md5 = strtr($md5, '+/', '-_');$md5 = str_replace('=', '', $md5);$url = "{$hostname}{$path}?md5={$md5}&expires={$expires}";?>
Мұнда:
<СЕКРЕТНЫЙ_КЛЮЧ>— ұзындығы 6-дан 32 таңбаға дейінгі символдардың еркін жиыны.<ПУТЬ_К_ФАЙЛУ>— сілтеме арқылы қолжетімділік қажет болатын файлға жол. Мысал:/files/photo.jpg.<СРОК_ДЕЙСТВИЯ_ССЫЛКИ>— сілтеме жасалған сәттен бастап секундпен көрсетілген оның әрекет ету мерзімі.<ДОМЕННОЕ_ИМЯ>—HTTPнемесеHTTPSпротоколы көрсетілген CDN-ресурстың домендік атауы. Мысал:https://cdn.example.com.
$url жолы файлға арналған дайын қолтаңбаланған сілтемені қамтиды. Сілтемені экранға шығару үшін осы жолдан кейін келесі кодты қосыңыз:
echo $url;echo "";
<?php$secret = '<СЕКРЕТНЫЙ_КЛЮЧ>';$path = '<ПУТЬ_К_ФАЙЛУ>';$ip = '<IP-АДРЕС>';$expires = time() + <СРОК_ДЕЙСТВИЯ_ССЫЛКИ>;$hostname = '<ДОМЕННОЕ_ИМЯ>';$link = "$expires$path$ip $secret";$md5 = md5($link, true);$md5 = base64_encode($md5);$md5 = strtr($md5, '+/', '-_');$md5 = str_replace('=', '', $md5);$url = "{$hostname}{$path}?md5={$md5}&expires={$expires}";?>
Мұнда:
<СЕКРЕТНЫЙ_КЛЮЧ>— ұзындығы 6-дан 32 таңбаға дейінгі символдардың еркін жиыны.<ПУТЬ_К_ФАЙЛУ>— сілтеме арқылы қолжетімділік қажет болатын файлға жол. Мысал:/files/photo.jpg.<IP-АДРЕС>— файлға қолжетімділікке рұқсат етілетін IP мекенжайы. Мысал:1.2.3.4.<СРОК_ДЕЙСТВИЯ_ССЫЛКИ>— сілтеме жасалған сәттен бастап секундпен көрсетілген оның әрекет ету мерзімі.<ДОМЕННОЕ_ИМЯ>—HTTPнемесеHTTPSпротоколы көрсетілген CDN-ресурстың домендік атауы. Мысал:https://cdn.example.com.
$url жолы файлға арналған дайын қолтаңбаланған сілтемені қамтиды. Сілтемені экранға шығару үшін осы жолдан кейін келесі кодты қосыңыз:
echo $url;echo "";