在允许角度访问的同时保护IIS目录

时间:2018-03-10 02:27:22

标签: angular iis

我在IIS 8后端有一个角度4应用程序。角度应用程序从存储在assets / data / config.json中的JSON文件获取其配置。请求是通过httpClient.get()方法。问题是我需要让角度应用程序在需要时接收文件,但我想阻止某人键入www.mysite.com/assets/data/config.json并获取该文件。另外我想确保没有人可以通过http发布到这个文件(我认为默认情况下,但我不是IIS专家所以我想我无论如何都要问)。 非常感谢任何帮助和/或建议。

2 个答案:

答案 0 :(得分:0)

您的JSON数据应来自托管在后端服务器上的其他端点。然后,您可以使用JSON Web令牌来保护您的端点,并且只有登录用户才能确保它们具有有效令牌后从API检索数据。

Angularjs用于开发SPA应用程序,该应用程序在导航到站点时下载到最终用户浏览器。在这种情况下,我不认为你可以保护该文件(即使可以在IIS文件夹上完成,你的角度服务如何访问它,我很想知道是否有这样的解决方案)

答案 1 :(得分:0)

您可以通过仅允许来自本地(或您的应用程序域)的请求来获取文件来保护文件,如果请求来自其他域,则可以禁止访问。您可以通过使用IIS中的某个模块来实现此目的。这仍然不完全安全,因为它依赖于可以欺骗的HTTP标头。

我建议您通过托管Angular应用程序的页面(default.aspx或index.aspx)将配置文件写入浏览器,然后禁止直接从HTTP访问该文件。