Secure Token Integration For PHP (Secondary)
Publisher: Psychz Networks, August 23,2021The following article will help you to integrate secure token (Secondary) generated using a secret key in your PHP code. First, you need to login to the dashboard and enable Secure Token option for the desired location (domain). Once you enable Secure Token option, you can create a 'Secret Key' which will be then passed on to our backend. With this, you can generate your own tokens with md5 using the PHP script below. The newly generated URL then will hold all the necessary information which will match the Secure key saved at our backend and will allow access to the user.
In secondary secure token, in secure url generated uses file name, expiry time(optional), compared to IP and expiry time and not the file name in Primary method.
Sample security token looks like
Once the security token is generated, you can use it in Python code to create the URL token.
<?php
//$base_url = ' https://yourdomain.com'; // This is your CDN's base URL of the site, without the slash in the end
//$securityKey = 'token_security_key'; // Your security key used to create token using dashboard
//$locationpath = '/index.html'; // provide the path starting with the '/'
//$fileName = '/abc.jpg'; // provide the file name
function securityToken( $base_url, $locationpath, $securityKey, $expires ='',$fileName){
// Set the time of expiry to one hour from the time of the creation
$expires = time() + 3600; // This parameter is optional and is up to your discretion define its expiration to the secure URL.
// Generate the token
if(!empty($expires))
{
// Generate the token with expiry
$hashableBase = $securityKey.$locationpath.$expires;
$token = md5($hashableBase, true);
$token = strtr($token, '+/', '-_');
$token = str_replace('=', '', $token);
// Generate the URL
$url = "https://$base_url{$locationpath}/{$token}/{$fileName}";
}
else{
// Generate the token without expiry
$hashableBase = $securityKey.$locationpath;
$token = md5($hashableBase, true);
$token = strtr($token, '+/', '-_');
$token = str_replace('=', '', $token);
// Generate the URL
$url = "https://$base_url{$locationpath}/{$token}/{$fileName}";
}
return $url;
}
// Example usage:
// Returns: ' https://test.youdomain.com/index.html/AuiVJT4fw7frGmPDPuCzAg/abc.jpg'
echo(securityToken(' https://test.youdomain.com', '/index.html','super-secret-code','31536000','file-name'));
// Returns: ' https://test.youdomain.com/index.html/AuiVJT4fw7frGmPDPuCzAg/abc.jpg'
echo(securityToken(' https://test.youdomain.com', '/index.html','super-secret-code','','file-name'));
?>