Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
File 带令牌的文件下载-带nonce的安全[目录]文件_File_Download_Token - Fatal编程技术网

File 带令牌的文件下载-带nonce的安全[目录]文件

File 带令牌的文件下载-带nonce的安全[目录]文件,file,download,token,File,Download,Token,我不知道这项技术的名称,但我会描述我所看到和理解的 首先,它用于保护服务器上的文件 例如,这是一个PDF文件的链接,我可以轻松下载 现在让我们尝试在上下载此文件 服务器响应错误:处理您的请求时出错。参考#50.2c1b434d.1332206487.dadf1f 所以要下载MP4文件,我必须有这样一个令牌:1332206979_99377a4999e218448c89adce520781db 然后现在用URL上的令牌尝试这个链接,我可以很容易地下载它。 我的问题是,如果人们有代码或令牌,我如何

我不知道这项技术的名称,但我会描述我所看到和理解的

首先,它用于保护服务器上的文件

例如,这是一个PDF文件的链接,我可以轻松下载

现在让我们尝试在上下载此文件

服务器响应错误:
处理您的请求时出错。参考#50.2c1b434d.1332206487.dadf1f

所以要下载MP4文件,我必须有这样一个令牌:1332206979_99377a4999e218448c89adce520781db

然后现在用URL上的令牌尝试这个链接,我可以很容易地下载它。

我的问题是,如果人们有代码或令牌,我如何保护或保护服务器上的文件,并允许他们下载这些文件


做这样的事情,下面的令牌持续一天,以秒为单位

<input  type="hidden" name="nonce" value="<?php echo nonce('token'); ?>" />

function nonce($expires=86400, $str){ // generates a secure nonce
    return sha1(date('Y-m-d H:i',ceil(time()/$expires)*$expires).$str.$salt);
}

生成一个nonce。发临时通知。一旦下载开始,就忘记当前的状态。这是一个解决方案!但我想保护更多的文件。例如,如果没有令牌,则无法访问该文件。让我们更改文件名,服务器仍然禁止我访问该文件,并显示错误。这是一种保护文件不受外部访问的方法,但应用程序可以在有令牌的情况下读取文件。我有一个想法。。。为什么不在您的文件存储库中使用htaccess来拒绝所有人,比如说/files/。然后,当请求文件时,它会通过/download.php,但您的php引擎仍然可以访问文件存储库。。。我的意思是,从那里你只需要镜像二进制文件,设置标题和中提琴。