在asp.net中下载文件



我的网站上有一个链接。每当用户点击此链接时,就会下载此操作的pdf文件。但如果用户知道文件链接,他/她会直接在浏览器中添加文件地址,并可以下载文件,这就存在问题。我想通过在浏览器地址栏中输入文件url来保护它直接下载。对此任何建议都可以。

问候

SYED

好吧,

  • 您可以使用令牌(此"令牌"保存在HTML元素的输入type='hidden'name='token'value='token-value'中,稍后使用)
  • 检查refer是否在您的表单页面

"令牌",您可以查看pdf文件开始下载的时间。

我不能在asp.net中做到这一点,但你可以看看asp.net

简单示例代码:

<?
$token = $_SESSION['token'] = md5(uniqid()); 
echo "<form method='POST' action=""><input type='hidden' name='token' value='$token'>
      <input type='submit' value='Go!'>"; 
if($_POST["token"] == $token) {
    //show link pdf file
}else {
   die('Access denied');
}
?>

我不说这是什么完全安全,说的是一种选择。

将文件放在其中一个网站文件夹中,并使用表单身份验证和位置属性从web.config设置对此文件夹的身份验证。用户需要登录才能下载PDF。

<authentication mode="Forms">
            <forms defaultUrl="Default.aspx" loginUrl="~/adminlogin.aspx" slidingExpiration="true" timeout="30"></forms>
        </authentication>
        <location path="[PDF Folder]">
        <system.web>
            <authorization>
                <allow roles="[role]"/>
                <deny users="*"/>
            </authorization>
        </system.web>
    </location>
This is only sample Get more details about above from net.

相关内容

  • 没有找到相关文章

最新更新