1. Go to this page and download the library: Download legalthings/authorizer library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
legalthings / authorizer example snippets
use LegalThings/Authorizer;
Authorizer::$globalSecret = 'some-secret-which-stays-the-same';
$pdf = basename($_GET['pdf']);
if (isset($_GET['authzgen'])) {
if (parse_url($_GET['authzgen'], PHP_URL_HOST) !== 'system-b.example.com') {
http_response_code(403);
echo "Will only grant access for system-b.example.com";
exit();
}
$encryptedToken = Authorizer::sign($pdf, $_GET['authzgen']); // authzgen is a string with the format: {{public_key_url}};{{time_from}};{{time_to}}
header('Content-Type: text/plain');
echo $encryptedToken;
exit();
}
$mayAccess = isset($_GET['authz']) && Authorizer::verify($pdf, $_GET['authz']); // authz is the decrypted secret
if (!$mayAccess) {
http_response_code(403);
echo "Access denied";
exit();
}
// Get and output resource
header('Content-Type: application/pdf');
readfile('path/to/resources/' . $pdf);
use LegalThings/Authorizer;
$link = $_POST['link'];
if (isset($_POST['token'])) {
$encryptedToken = $_POST['token'];
$token = Authorizer::decrypt($encryptedSecret, 'path/to/private_key.pem');
$link .= (strstr($link, '?') ? '&' : '?') . 'authz=' . $token;
}
$pdf = file_get_contents($link);
// Let's do something with the PDF
$username = $_SESSION['username'];
file_put_contents("../userdata/$username/" . md5(microtime()) . ".pdf", $pdf);
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.