我正在修改一个 .aspx 页面,该页面使用一些 javascript 来下载基于此标记中的 value 属性的文件:
<input type="hidden" id="launchDocument" value="pdf/<%=Settings.LaunchDocument%>" >
该值当前被硬编码到 Web.config 文件中。客户希望此页面现在成为其存档时事通讯的下载页面。我的想法是让页面从查询字符串中提取文件名,以便发送页面可以定义正在下载的文件:
<input type="hidden" id="launchDocument" value="../pdf/<%=Request.QueryString["filename"]%>" />
但是,我担心这种方法是否存在任何安全风险。如果有,在将查询字符串添加到页面之前检查查询字符串的值以确保它是有效的 .pdf 文件名的最佳做法是什么?
提前感谢您的帮助!