【问题标题】:JavaScript / SharePoint - Force file downloadJavaScript / SharePoint - 强制文件下载
【发布时间】:2012-04-10 20:28:57
【问题描述】:

情况

我的 SharePoint 网站上有一个文件必须由未知数量的用户打开。这是一个 InfoPath 表单,由浏览器根据 MIME 类型设置自动打开。我的组织使用 IE,由于我是组织的“节点”,我无法访问标题或 .htaccess 文件。它也是一个包含大量安全设置的 Intranet,其中许多设置在个人计算机上经常更改,无法解释。

尝试

我已经尝试过 JavaScript target='_blank'execCommand。不幸的是,它们都不起作用,我束手无策! Infopath 表单支持浏览器,文档库设置为在客户端程序中打开,但大多数人无法打开表单。

问题

有没有办法使用 JavaScript 或类似的客户端语言来提示“打开”框?除非有人知道如何将其配置为始终提示而不是在浏览器中自动打开,否则就是这样。

【问题讨论】:

  • “大量的安全设置,其中许多在个别计算机上经常更改,无法解释它们” - 现在 /that/ 是矛盾的。听起来不太安全。
  • 我认为,从黑客的角度来看,不可预测性比统一性更安全。那不是我们的安全政策;它更像是“用户能做的越少,黑客能做的就越少”,这是一种意译和略带讽刺的方式。组策略设置不断更新,并非每台计算机都获得更新/插入网络。拥有 3.5k 用户,这并不像您想象的那么容易。
  • 种类越多,可以攻击的向量就越多。
  • 我们找到了一个更简单的解决方案来解决尚未完全了解的问题。就文件处理而言,Firefox 不得具有与 IE 相同的设置,并且只要计算机上安装了 Infopath,它就可以使用 IE 正常打开。由于 IE 是我们需要的浏览器,Firefox 不是我们需要准备的情况。虽然我仍然会研究这个以解决未来的问题......

标签: javascript file sharepoint


【解决方案1】:

灵魂是在服务器上真正使用它。需要设置 Content-disposition 标头。 MS KB Aticle

共享点管理员应该能够在常规设置中设置设置并将Browser File Handling 设置为严格。

【讨论】:

  • 假设我们需要使用相同的文件 ext (.xml) 下载大量文件。 * 通配符是否适用于 Content-Disposition?
【解决方案2】:

我之前没有使用过 InfoPath,但这个问题似乎与浏览器文件处理设置有关。

默认情况下,浏览器文件处理在网络应用级别设置为严格(应该如此)。但是,这可以在文档库级别被覆盖,据我所知,它是一个隐藏设置(至少我从未在 UI 中看到它),因此您需要使用 SharePoint Manager 或 PowerShell 来查看/改变它。

如果需要,您可以使用 PS 在 Web 应用级别为此设置添加例外。不确定您是否可以在 doclib 级别执行相同操作。

【讨论】:

  • 我无法通过命令行直接访问我们的服务器。我真的无法控制它,而那些能够控制它的人会认为这是一种攻击或具有使诺克斯堡看起来像 7-11 的安全措施。
  • 听起来像疯人院 :P 好吧,你提出的技术提高了用户的安全性,因为在浏览器中自动打开东西会导致 XSS 攻击......所以也许你可以说服他们 :D 你能让系统管理员至少告诉你当前的 doclib 设置是什么吗?
猜你喜欢
  • 1970-01-01
  • 2014-10-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-12-31
相关资源
最近更新 更多