gpt4 book ai didi

c# - 如何防止用户在 .net 中手动输入下载 URL

转载 作者:太空宇宙 更新时间:2023-11-03 10:41:36 26 4
gpt4 key购买 nike

具体来说,如何设置我的 .net 站点以不允许未经身份验证的用户手动输入下载 URL 和下载内容?

我建立了安全性,要求在下载链接所在的页面上进行身份验证,但是如果用户可以访问直接 url,则有人可以直接从那里下载。是否有一些逻辑或插件可以帮助解决这个问题?我将不胜感激任何帮助。

最佳答案

ASP.NET MVC 支持创建“操作过滤器”的功能,该功能可用于实现可重用的逻辑,这些逻辑可通过声明方式应用于操作方法。

[Authorize] 过滤器是 ASP.NET MVC 提供的内置操作过滤器之一,它使开发人员能够以声明方式将授权规则应用于操作方法和 Controller 类。

在此操作中,您可以从磁盘读取文件并将内容流出。

例子:

[Authorize(Roles="admin")]
public ActionResult Download()
{
var fileStream = new FileStream(@"c:\PATH\TO\PDF\ON\THE\SERVER.pdf", FileMode.Open);
var mimeType = "application/pdf";
var fileDownloadName = "download.pdf";
return File(fileStream, mimeType, fileDownloadName);
}

或者,对于经典的 ASP.NET 解决方案,请参阅 http://msdn.microsoft.com/en-us/library/879kf95c.aspx

来源:

http://nerddinnerbook.s3.amazonaws.com/Part9.htm

http://blog.janjonas.net/2011-03-17/asp_net-mvc_3-howto-stream-files-client

关于c# - 如何防止用户在 .net 中手动输入下载 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25173669/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com