gpt4 book ai didi

asp.net - 如何使用 ASP.NET 保护对 SWF 文件的访问?

转载 作者:行者123 更新时间:2023-12-02 13:42:58 24 4
gpt4 key购买 nike

我们有一个 swf 文件,我们希望保护该文件并使其仅可供授权用户使用。

我将文件嵌入到 aspx 页面中,效果很好,因为 ASP.NET 处理 aspx 页面,我可以使用 ASP.NET 授权功能,并在 web.config 中限制对 Roles="AllowedUsers"的访问,例如.

但是,聪明的用户仍然可以通过直接访问(例如 www.mysite/flash.swf)来访问该文件。我们希望使这种访问安全

任何帮助将不胜感激!

谢谢!

最佳答案

阿里斯托斯,

你是对的。昨天下午,就在我回家之前,我尝试创建一个自定义 HTTP 处理程序。而且效果很好。 :-) 感谢您的回答 +1

public class CustomFlashHandler : IHttpHandler
{

public void ProcessRequest(HttpContext context)
{
if (!context.User.Identity.IsAuthenticated)
{
context.Response.Redirect("Default.aspx?ReturnUrl=%2felVideo.aspx");
context.Response.StatusCode = 401;
return;
}

var url = context.Request.CurrentExecutionFilePath;

if (string.IsNullOrEmpty(url)) return;

HttpContext.Current.Response.ClearContent();
HttpContext.Current.Response.ClearHeaders();
HttpContext.Current.Response.AddHeader("Content-Disposition", string.Format("filename={0}", url));
HttpContext.Current.Response.AddHeader("Content-Type", "application/x-shockwave-flash");
HttpContext.Current.Response.WriteFile(url);
HttpContext.Current.Response.End();
}

public bool IsReusable
{
get { return false; }
}

}

就像 Aristos 所说,您必须映射 ASP.NET 来处理 IIS 中的 .swf 文件。

alt text http://www.freeimagehosting.net/uploads/30424ac60a.png

然后在应用程序的 web.config 中添加自定义映射

<httpHandlers>
<add verb="*" path="*.swf" type="XXXXX.Web.XXXXX.CustomFlashHandler" validate="false" />
</httpHandlers>

1 :href=http://www.freeimagehosting.net/ >http://www.freeimagehosting.net/uploads/30424ac60a.png

1 :a href= http://www.freeimagehosting.net/ >http://www.freeimagehosting.net/uploads/30424ac60a.png border=0 alt="免费图片托管">

关于asp.net - 如何使用 ASP.NET 保护对 SWF 文件的访问?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2582701/

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